从Android

时间:2016-08-23 18:43:03

标签: java android xml zoho

我正在尝试从我的Android应用程序进行Zoho CRM的posturl,我无法弄清楚正确的格式。以下是URL布局应该是这样的(以这种格式):

https://crm.zoho.com/crm/private/xml/Potentials/updateRecords?authtoken=myauthtoken&scope=crmapi&id=potentialsid&xmlData=<Potentials><row no="1"><FL val="field name goes here">field value goes here</FL>(repeat <FL val="field name goes here">field value goes here</FL> for every field you want populated)</row></Potentials>

我已经尝试过这只是一个网页浏览器中的直接网址,它可以更新我希望用这种格式更新的字段,所以我知道这是正确的格式,但我不知道如何在android中复制这个。

如果有帮助,每次都需要更新相同数量的字段,因此我需要一定数量的<FL val="field name goes here">field value goes here</FL>值,在我的情况下,其中有5个。

1 个答案:

答案 0 :(得分:0)

好的,所以我实际上找到了一种解决方法,用于如何从Android发布数据到Zoho CRM。首先,我使用HttpAgent发布网址。接下来,在HttpAgent.post()中,我的URL有以下布局:

    HttpAgent.post("https://crm.zoho.com/crm/private/xml/Potentials/
updateRecords?authtoken=myauthtoken&scope=crmapi&id=potentialsid&xmlData=
<Potentials><row no="1">" + data + "</row></Potentials>)

数据变量是一系列具有以下布局的StringBuffers:

StringBuffer variablename1 = new StringBuffer();
                        if(Checkboxname1.isChecked()){
                            variablename.append("<FL%20val=\"CRM Field Name\">CRM Field Value</FL>");
                        }

我需要if语句来检查是否选中了某个复选框,如果是,为了更新CRM字段,复选框与我的关联,其他人可能不需要它。然后我将它们与以下代码一起附加:

StringBuffer data = new StringBuffer();

data.append(variablename1.toString() + variablename2.toString()...);

然后将数据变量插入到已连接“数据”的URL中。然后,您只需使用简单的

即可完成
.go(new SuccessCallback() {
                                    @Override
                                    protected void onDone(boolean success) {

                                    }
                                });

你很高兴。确保在将要进入URL的所有空格之间添加%20。我起初并不知道它并没有张贴。

这是我想知道的所有人的总代码:

StringBuffer data = new StringBuffer();

                        StringBuffer variable1 = new StringBuffer();
                        if(checkboxname1.isChecked()){
                            variable1.append("<FL%20val=\"CRM%20Field%20Name%201\">CRM%20Field%20Value%201</FL>"); //Make sure to add %20 between ALL spaces, that threw me off for awhile.
                        }
                        StringBuffer variable2= new StringBuffer();
                        if(checkboxname2.isChecked()){
                            variable2.append("<FL%20val=\"CRM%20Field%20Name%202\">CRM%20Field%20Value%202</FL>");
                        }

                        data.append(variable1.toString() + variable2.toString());



                        HttpAgent.post("https://crm.zoho.com/crm/private/xml/Potentials/updateRecords?authtoken=myauthtoken&scope=crmapi&id=" + PotentialID + "&xmlData=<Potentials><row%20no=\"1\">" + data + "</row></Potentials>")


                                .go(new SuccessCallback() {
                                    @Override
                                    protected void onDone(boolean success) {

                                    }
                                });

P.S。我会在一段时间内添加我需要的所有5个,我只想发布代码,这样任何寻找简单答案的人都可以找到它。