code: protected void setPost(JSONObject post) throws JSONException {
          params_ = post;
          if (getBranchRemoteAPIVersion() == BRANCH_API_VERSION.V2) {
              try {
                  JSONObject userDataObj = new JSONObject();
                  params_.put(Defines.Jsonkey.UserData.getKey(), userDataObj);
                  DeviceInfo.getInstance().updateRequestWithV2Params(context_, prefHelper_, userDataObj);
              } catch (JSONException ignore) {
              }
          } else {
              DeviceInfo.getInstance().updateRequestWithV1Params(params_);
          }
      }
docs: <p>Sets a {@link JSONObject} containing the post data supplied with the current request.</p>
  
  @param post A {@link JSONObject} containing the post data supplied with the current request
  as key-value pairs.