{"id":64,"date":"2021-11-03T17:22:00","date_gmt":"2021-11-03T09:22:00","guid":{"rendered":"http:\/\/10.50.9.54:30000\/knowledge-base\/knowledge-base-wordpress-plugin\/"},"modified":"2023-09-04T18:25:05","modified_gmt":"2023-09-04T10:25:05","slug":"sdk-for-android","status":"publish","type":"ht_kb","link":"https:\/\/www.meiqia.com\/help\/article\/sdk-for-android\/","title":{"rendered":"\u79fb\u52a8\u5e94\u7528 SDK for Android"},"content":{"rendered":"\n<p id=\"a20d224c568e48b9d67847a2c66a8c01_p_0\"><strong>\u5728\u60a8\u9605\u8bfb\u6b64\u6587\u6863\u4e4b\u524d\uff0c\u6211\u4eec\u5047\u5b9a\u60a8\u5df2\u7ecf\u5177\u5907\u4e86\u57fa\u7840\u7684 Android \u5e94\u7528\u5f00\u53d1\u7ecf\u9a8c\uff0c\u5e76\u80fd\u591f\u7406\u89e3\u76f8\u5173\u57fa\u7840\u6982\u5ff5\u3002<\/strong><\/p>\n\n\n\n<p id=\"8731eddabe625a1ee75ec2a351a8feb4\">\u5982\u6709\u7591\u95ee\uff0c\u6b22\u8fce\u52a0\u5165 \u7f8e\u6d3d SDK \u5f00\u53d1 QQ \u7fa4\uff1a748720588<\/p>\n\n\n\n<p id=\"4a3f6fa6243214c94f3d7a96b75aac55\">\u4ed3\u5e93\u5730\u5740\uff1a<a rel=\"noreferrer noopener\" href=\"https:\/\/github.com\/Meiqia\/MeiqiaSDK-Android\" target=\"_blank\">GitHub Android<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"screenshot\">ScreenShot<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"320\" height=\"569\" src=\"https:\/\/meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe1-1.jpeg\" alt=\"\" class=\"wp-image-2390\" srcset=\"https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe1-1.jpeg 320w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe1-1-169x300.jpeg 169w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe1-1-28x50.jpeg 28w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe1-1-34x60.jpeg 34w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe1-1-56x100.jpeg 56w\" sizes=\"(max-width: 320px) 100vw, 320px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"tlX46\">\u96c6\u6210\u7f8e\u6d3d SDK<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"environment-required\">Environment Required<\/h3>\n\n\n\n<ul>\n<li>JDK7+<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"androidstudio\">AndroidStudio<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>implementation &#39;com.meiqia:androidx:4.0.3&#39;\nimplementation &#39;com.github.bumptech.glide:glide:4.9.0&#39;\nannotationProcessor &#39;com.github.bumptech.glide:compiler:4.9.0&#39;<\/code><\/pre><\/div>\n\n\n\n<p id=\"893965b27d5dc977d1a1789b4c92f552\"><a href=\"https:\/\/github.com\/Meiqia\/MeiqiaSDK-Android\/blob\/master\/imageloader\/MQGlideImageLoader.java\" target=\"_blank\" rel=\"noreferrer noopener\">\u5982\u679c\u4f7f\u7528\u7684\u662f glide 3.x \uff0c\u53ef\u4ee5\u53c2\u8003\u8fd9\u91cc<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"FJt0P\">\u4f7f\u7528\u7f8e\u6d3d<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"PMf5j\">1.\u521d\u59cb\u5316<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>MQConfig.init(this, &quot;Your Appkey&quot;, new OnInitCallback() {\n    @Override\n    public void onSuccess(String clientId) {\n        Toast.makeText(MainActivity.this, &quot;init success&quot;, Toast.LENGTH_SHORT).show();\n    }\n    @Override\n    public void onFailure(int code, String message) {\n        Toast.makeText(MainActivity.this, &quot;int failure&quot;, Toast.LENGTH_SHORT).show();\n    }\n});<\/code><\/pre><\/div>\n\n\n\n<p id=\"9afc80358fe4b6add555420a34a26039\">\u5982\u679c\u60a8\u4e0d\u77e5\u9053 Appkey \uff0c\u8bf7\u4f7f\u7528\u7f8e\u6d3d\u7ba1\u7406\u5458\u5e10\u53f7\u767b\u5f55 \u7f8e\u6d3d\uff0c\u5728\u300c\u8bbe\u7f6e\u300d -&gt; \u300cSDK\u300d \u83dc\u5355\u4e2d\u67e5\u770b\u3002\u5982\u4e0b\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"502\" src=\"https:\/\/meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe2-1.png\" alt=\"\" class=\"wp-image-2394\" srcset=\"https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe2-1.png 1024w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe2-1-300x147.png 300w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe2-1-768x377.png 768w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe2-1-50x25.png 50w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe2-1-60x29.png 60w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe2-1-100x49.png 100w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"vZJWT\">2.\u542f\u52a8\u5bf9\u8bdd\u754c\u9762<\/h3>\n\n\n\n<p id=\"7570515ae677d229e6142e26ee4e1a09\">\u521d\u59cb\u5316\u6210\u529f\u540e\uff0c\u5c31\u53ef\u4ee5\u76f4\u63a5\u542f\u52a8\u5bf9\u8bdd\u754c\u9762<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>Intent intent = new MQIntentBuilder(this).build();\nstartActivity(intent);<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"dv8Qd\">3.\u542f\u52a8\u7559\u8a00\u8868\u5355\u754c\u9762<\/h3>\n\n\n\n<p id=\"d739e49de437e14adea10e81a9cc81e4\">\u76ee\u524d\u662f\u4e24\u79cd\u6a21\u5f0f\uff1a (1) \u5b8c\u5168\u5bf9\u8bdd\u6a21\u5f0f \u65e0\u673a\u5668\u4eba\u65f6\uff1a\u5982\u679c\u5f53\u524d\u5ba2\u670d\u4e0d\u5728\u7ebf\uff0c\u76f4\u63a5\u804a\u5929\u754c\u9762\u8f93\u5165\u5c31\u662f\u7559\u8a00\uff0c\u5ba2\u670d\u4e0a\u7ebf\u540e\u80fd\u591f\u76f4\u63a5\u56de\u590d\uff0c\u5982\u679c\u5ba2\u670d\u5728\u7ebf\uff0c\u5219\u8fdb\u5165\u6b63\u5e38\u5ba2\u670d\u5bf9\u8bdd\u6a21\u5f0f\u3002 \u6709\u673a\u5668\u4eba\u65f6\uff1a\u5982\u679c\u5f53\u524d\u5ba2\u670d\u4e0d\u5728\u7ebf\u65f6\uff0c\u76f4\u63a5\u804a\u5929\u754c\u9762\u8f93\u5165\u7684\u8bdd\uff0c\u8fd8\u662f\u7531\u673a\u5668\u4eba\u56de\u7b54\uff0c\u987e\u5ba2\u70b9\u51fb\u7559\u8a00\u5c31\u4f1a\u8df3\u8f6c\u5230\u8868\u5355\u3002 (2) \u5355\u4e00\u8868\u5355\u6a21\u5f0f \u4e0d\u7ba1\u5ba2\u670d\u662f\u5426\u5728\u7ebf\u90fd\u4f1a\u8fdb\u5165\u8868\u5355\uff0c\u987e\u5ba2\u63d0\u4ea4\u540e\uff0c\u4e0d\u4f1a\u6709\u804a\u5929\u7684\u754c\u9762\u3002\u8fd9\u79cd\u4e3b\u8981\u7528\u4e8e\u4e00\u4e9b App \u53ea\u9700\u8981\u7528\u6237\u53cd\u9988\uff0c\u4e0d\u9700\u8981\u76f4\u63a5\u56de\u590d\u7684\u5f62\u5f0f\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>startActivity(new Intent(this, MQMessageFormActivity.class));<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"nTIpJ\">4.Android M \u6743\u9650\u5904\u7406<\/h3>\n\n\n\n<p id=\"62b30c42a4cbece483be598649a87146\">\u5982\u679c\u4f60\u7684 App \u9700\u8981\u517c\u5bb9 Android M\uff0c\u9700\u8981\u5904\u7406\u6743\u9650\u95ee\u9898\u3002 <a href=\"https:\/\/github.com\/Meiqia\/MeiqiaSDK-Android\/blob\/master\/demo%2Fsrc%2Fmain%2Fjava%2Fcom%2Fmeiqia%2Fmeiqiasdk%2Fdemo%2FMainActivity.java\" target=\"_blank\" rel=\"noreferrer noopener\">\u53c2\u8003 Demo<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"0pZH1\">5.Android O \u6743\u9650\u5904\u7406<\/h3>\n\n\n\n<p id=\"dd5eda1cd9cfaf7f6de96f0880494d13\">\u5982\u679c\u4f60\u7684 App \u9700\u8981\u517c\u5bb9 Android O\uff0c\u9700\u8981\u5728 App \u540e\u53f0\u7684\u65f6\u5019\u786e\u4fdd\u5173\u95ed\u7f8e\u6d3d\u670d\u52a1\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>MQManager.getInstance(context).closeMeiqiaService();<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"rBGov\">6.\u5e38\u89c1\u4f7f\u7528\u573a\u666f<\/h3>\n\n\n\n<p id=\"5756c6fd8b160bd3bbb16fee76c4a064\">\u5f00\u53d1\u8005\u7684 App \u6709\u81ea\u5df1\u7684\u8d26\u53f7\u7cfb\u7edf\uff0c\u5e0c\u671b\u6bcf\u4e2a\u8d26\u53f7\u5bf9\u5e94\u4e0d\u540c\u7684\u987e\u5ba2\uff0c\u6709\u4e0d\u540c\u7684\u804a\u5929\u8bb0\u5f55\u3002\u90a3\u5c31\u9700\u8981\u5f00\u53d1\u8005\u5728\u542f\u52a8\u5bf9\u8bdd\u7684\u65f6\u5019\uff0c\u7ed1\u5b9a\u8d26\u53f7\uff1a<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>Intent intent = new MQIntentBuilder(this)\n        .setCustomizedId(&quot;\u5f00\u53d1\u8005\u7684 id&quot;) \/\/ \u76f8\u540c\u7684 id \u4f1a\u88ab\u8bc6\u522b\u4e3a\u540c\u4e00\u4e2a\u987e\u5ba2\n        .build();\nstartActivity(intent);<\/code><\/pre><\/div>\n\n\n\n<p id=\"08a3c320c002f1108246b325f88df395\">\u5f00\u53d1\u8005\u5e0c\u671b\u987e\u5ba2\u4e0a\u7ebf\u7684\u65f6\u5019\uff0c\u80fd\u591f\u4e0a\u4f20\uff08\u6216\u8005\u66f4\u65b0\uff09\u4e00\u4e9b\u7528\u6237\u7684\u81ea\u5b9a\u4e49\u4fe1\u606f\uff1a<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>HashMap&lt;String, String&gt; clientInfo = new HashMap&lt;&gt;();\nclientInfo.put(&quot;name&quot;, &quot;\u5bcc\u575a\u4e49\u535a&quot;);\nclientInfo.put(&quot;avatar&quot;, &quot;https:\/\/s3.cn-north-1.amazonaws.com.cn\/pics.meiqia.bucket\/1dee88eabfbd7bd4&quot;);\nclientInfo.put(&quot;gender&quot;, &quot;\u7537&quot;);\nclientInfo.put(&quot;tel&quot;, &quot;1300000000&quot;);\nclientInfo.put(&quot;\u6280\u80fd1&quot;, &quot;\u4f11\u520a&quot;);\nHashMap&lt;String, String&gt; updateInfo = new HashMap&lt;&gt;();\nupdateInfo.put(&quot;name&quot;, &quot;update name&quot;);\nIntent intent = new MQIntentBuilder(this)\n        .setClientInfo(clientInfo) \/\/ \u8bbe\u7f6e\u987e\u5ba2\u4fe1\u606f PS: \u8fd9\u4e2a\u63a5\u53e3\u53ea\u4f1a\u751f\u6548\u4e00\u6b21,\u5982\u679c\u9700\u8981\u66f4\u65b0\u987e\u5ba2\u4fe1\u606f,\u9700\u8981\u8c03\u7528\u66f4\u65b0\u63a5\u53e3\n\/\/      .updateClientInfo(updateInfo) \/\/ \u66f4\u65b0\u987e\u5ba2\u4fe1\u606f PS: \u5982\u679c\u5ba2\u670d\u5728\u5de5\u4f5c\u53f0\u66f4\u6539\u4e86\u987e\u5ba2\u4fe1\u606f\uff0c\u66f4\u65b0\u63a5\u53e3\u4f1a\u8986\u76d6\u4e4b\u524d\u7684\u5185\u5bb9\n        .build();\nstartActivity(intent);<\/code><\/pre><\/div>\n\n\n\n<p id=\"d16bbae4822df94ace31fe7e39698919\">\u6307\u5b9a\u5ba2\u670d\u5206\u914d<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>Intent intent = new MQIntentBuilder(this)\n        .setScheduledAgent(agentId) \/\/ agentId \u53ef\u4ee5\u4ece\u5de5\u4f5c\u53f0\u67e5\u8be2\n        .build();\nstartActivity(intent);<\/code><\/pre><\/div>\n\n\n\n<p id=\"0e45e8a6c3dcbce9460747ceb1c81e19\">\u6307\u5b9a\u5ba2\u670d\u5206\u7ec4\u5206\u914d<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>Intent intent = new MQIntentBuilder(this)\n        .setScheduledGroup(groupId) \/\/ groupId \u53ef\u4ee5\u4ece\u5de5\u4f5c\u53f0\u67e5\u8be2\n        .build();\nstartActivity(intent);<\/code><\/pre><\/div>\n\n\n\n<p id=\"8329ee0317085d35b738d9d636e368ac\">\u8bbe\u7f6e\u9884\u53d1\u9001\u6d88\u606f<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>Intent intent = new MQIntentBuilder(this)\n        .setPreSendTextMessage(&quot;\u6211\u662f\u9884\u53d1\u9001\u6587\u5b57\u6d88\u606f&quot;)\n        .setPreSendImageMessage(new File(&quot;\u9884\u53d1\u9001\u56fe\u7247\u7684\u8def\u5f84&quot;))\n        .setPreSendProductCardMessage(productCardBundle) \/\/ \u9884\u53d1\u9001\u5546\u54c1\u5361\u7247\n        .build();\nstartActivity(intent);\n\n\/\/ productCardBundle \u6784\u9020\nBundle productCardBundle = new Bundle();\nproductCardBundle.putString(&quot;title&quot;, &quot;\u6211\u662f\u6807\u9898&quot;);\nproductCardBundle.putString(&quot;description&quot;, &quot;\u6211\u662f\u63cf\u8ff0\u6587\u5b57&quot;);\nproductCardBundle.putString(&quot;pic_url&quot;, &quot;https:\/\/gimg2.baidu.com\/image_search\/src=http%3A%2F%2Fi04.c.aliimg.com%2Fimg%2Fibank%2F2013%2F211%2F016%2F791610112_758613609.jpg&refer=http%3A%2F%2Fi04.c.aliimg.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1633076260&t=a46d823f8bb9fd773e93e2a7ab3f481e&quot;);\nproductCardBundle.putString(&quot;product_url&quot;, &quot;https:\/\/www.baidu.com&quot;);\nproductCardBundle.putLong(&quot;sales_count&quot;, 1000);<\/code><\/pre><\/div>\n\n\n\n<p id=\"ee76267bc7904eb8957d1c98d721f51c\">\u8bbe\u7f6e\u76d1\u542c MQConversationActivity \u751f\u547d\u5468\u671f\u7684\u56de\u8c03\u63a5\u53e3<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>MQConfig.setActivityLifecycleCallback(new MQSimpleActivityLifecycleCallback() {\n});<\/code><\/pre><\/div>\n\n\n\n<p id=\"d582e2f7f24cd6024053c457165654ef\">\u8bbe\u7f6e\u7528\u6237\u4e8b\u4ef6<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>MQClientEvent clientEvent = new MQClientEvent();\n\/\/ \u7528\u6237\u6dfb\u52a0\u65b0\u4ea7\u54c1\nclientEvent.setEvent(&quot;add_product&quot;, &quot;id_xxx&quot;); \/\/ \u4e8b\u4ef6\u5b57\u6bb5\u9700\u8981\u5148\u5728\u540e\u53f0\u521b\u5efa\nMQManager.getInstance().setClientEvent(clientEvent);<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"82gcz\">7.\u5e38\u89c1\u95ee\u9898\u5217\u8868<\/h3>\n\n\n\n<ul>\n<li><strong>java.lang.NoClassDefFoundError: com.meiqia.core.xx<\/strong><br>\u6ca1\u6709\u4f9d\u8d56 okhttp3.5.0 \u6216\u8005 \u4ee5\u4e0a\u7248\u672c\uff0c\u68c0\u67e5\u4f9d\u8d56\u8bbe\u7f6e<\/li>\n\n\n\n<li><strong>code == 400 track_id \u9519\u8bef<\/strong><br>\u5982\u679c\u9700\u8981\u7ed1\u5b9a\u7528\u6237 id\uff0c\u8bf7\u4f7f\u7528 setCustomizedId \u63a5\u53e3\uff1b\u5982\u679c\u8fd8\u662f\u6709\u95ee\u9898\uff0c\u5c31\u6362\u4e00\u4e2a id \u7ed1\u5b9a\u518d\u8bd5\u8bd5<\/li>\n<\/ul>\n\n\n\n<ul>\n<li><strong>\u5ba2\u670d\u540d\u5b57\u663e\u793a null<\/strong><br>\u66f4\u65b0\u6700\u65b0\u7248 SDK<\/li>\n\n\n\n<li><strong>java.lang.NoSuchMethodError: No Virtual method displayImage xxxx<\/strong><br>\u5982\u679c\u4f7f\u7528\u7684\u662f glide 4.x \uff0c\u53ef\u4ee5\u53c2\u8003 <a href=\"https:\/\/github.com\/Meiqia\/MeiqiaSDK-Android\/blob\/master\/imageloader\/MQGlideImageLoader4.java\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/github.com\/Meiqia\/MeiqiaSDK-Android\/blob\/master\/imageloader\/MQGlideImageLoader4.java<\/a><\/li>\n\n\n\n<li><strong>\u540e\u53f0\u6539\u4e86\u914d\u7f6e\uff0cSDK \u4e0d\u751f\u6548<\/strong><br>SDK \u7684\u914d\u7f6e\u4e0d\u662f\u7acb\u5373\u751f\u6548\uff0c\u4f1a\u81f3\u5c11\u95f4\u9694 15 \u5206\u949f\u5237\u65b0\u4e00\u6b21\uff0c\u5237\u65b0\u540e\u4e0b\u6b21\u751f\u6548\u3002\u5982\u679c\u60f3\u8981\u7acb\u5373\u770b\u5230\u914d\u7f6e\u6539\u53d8\u7684\u6548\u679c\uff0c\u53ef\u4ee5\u5378\u8f7d\u5e94\u7528\u91cd\u65b0\u5b89\u88c5\u3002<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-alert\">\u6b63\u5e38\u60c5\u51b5\u4e0b\uff0c\u53ea\u6709\u5f53\u4f60\u60f3\u8981\u5b8c\u5168\u7528 API \u6765\u5b9e\u73b0\u4e00\u5957\u804a\u5929\u754c\u9762\u7684\u65f6\u5019\uff0c\u624d\u4f1a\u7528\u5230\u4e0b\u9762\u7684 API<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"MFwGp\">API \u63a5\u53e3\u4ecb\u7ecd<\/h2>\n\n\n\n<p id=\"972cd3ee1e98a80729c2b3357d7dc86b\">\u83b7\u53d6 MQManager \u5b9e\u4f8b\u540e\uff0c<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>MQManager mqManager = MQManager.getInstacne(context);<\/code><\/pre><\/div>\n\n\n\n<p id=\"dda6eac69d6e80d560c2454ccfedb3d9\">\u5c31\u53ef\u4ee5\u8c03\u7528\u4e0b\u9762\u7684\u63a5\u53e3\uff1a<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"mTK7p\">\u8bbe\u7f6e\u5f53\u524d Client \u4e0a\u7ebf<\/h3>\n\n\n\n<p id=\"02dc3e5fdd92854bdb214fa80183ce4b\">\u521d\u59cb\u5316 SDK \u6210\u529f\u540e\uff0c\u4f1a\u9ed8\u8ba4\u751f\u6210\u4e00\u4e2a\u987e\u5ba2\uff0c\u5982\u679c\u6ca1\u6709\u66f4\u6539\u8fc7\u987e\u5ba2 id\uff0c\u5c06\u4ee5\u9ed8\u8ba4\u751f\u6210\u7684\u987e\u5ba2\u4e0a\u7ebf\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n* \u8bbe\u7f6e\u5f53\u524d Client \u4e0a\u7ebf\n*\n* @param onlineCallback \u56de\u8c03\n*\/\nsetCurrentClientOnline(final OnClientOnlineCallback onlineCallback)<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"kxNir\">\u7ed1\u5b9a\u7f8e\u6d3d id \u5e76\u8bbe\u7f6e\u4e0a\u7ebf<\/h3>\n\n\n\n<p id=\"16754827168a1434523b98867d7fd9c2\">\u5f00\u53d1\u8005\u53ef\u901a\u8fc7 \u3010\u83b7\u53d6\u5f53\u524d\u987e\u5ba2\u7684 id\u3011 \u63a5\u53e3\uff0c\u53d6\u5f97\u987e\u5ba2 id \uff0c\u4fdd\u5b58\u5230\u5f00\u53d1\u8005\u7684\u670d\u52a1\u7aef\uff0c\u4ee5\u6b64\u6765\u7ed1\u5b9a\u7f8e\u6d3d\u987e\u5ba2\u548c\u5f00\u53d1\u8005\u7528\u6237\u7cfb\u7edf\u3002 \u5982\u679c\u5f00\u53d1\u8005\u4fdd\u5b58\u4e86\u7f8e\u6d3d\u7684\u987e\u5ba2 id\uff0c\u53ef\u8c03\u7528\u5982\u4e0b\u63a5\u53e3\u8ba9\u5176\u4e0a\u7ebf\u3002\u8c03\u7528\u6b64\u63a5\u53e3\u540e\uff0c\u5f53\u524d\u53ef\u7528\u7684\u987e\u5ba2\u5373\u4e3a\u5f00\u53d1\u8005\u4f20\u7684\u987e\u5ba2 id\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u7ed1\u5b9a\u7f8e\u6d3d id\uff0c\u5e76\u8bbe\u7f6e\u4e0a\u7ebf\n *\n * @param mqClientId     \u7f8e\u6d3d id\n * @param onlineCallback \u56de\u8c03\u63a5\u53e3\n*\/\nsetClientOnlineWithClientId(String mqClientId, final OnClientOnlineCallback onlineCallback)<\/code><\/pre><\/div>\n\n\n\n<p id=\"38b91c03e374f711f73c7587543c5146\">MQConversationActivity.class \u5185\u90e8\u8c03\u7528\u4e86\u6b64\u63a5\u53e3\uff0c\u6240\u4ee5\u53ef\u4ee5\u76f4\u63a5\u901a\u8fc7 MQIntentBuilder \u6765\u6784\u9020 intent\u3002<\/p>\n\n\n\n<p id=\"279b9251a0f756c77d08140a54b45cf9\"><strong>Example:<\/strong><\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/\/ \u5047\u8bbe meiqia_id \u662f\u7f8e\u6d3d\u751f\u6210\u7684\u987e\u5ba2 id\nIntent intent = new MQIntentBuilder(this)\n        .setClientId(meiqia_id)\n        .build();\nstartActivity(intent);<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"tmLuf\">\u7ed1\u5b9a\u81ea\u5b9a\u4e49 id \u5e76\u8bbe\u7f6e\u4e0a\u7ebf<\/h3>\n\n\n\n<p id=\"7e36cd06468ce30e3f53dcebd95650c6\">\u5982\u679c\u5f00\u53d1\u8005\u4e0d\u613f\u4fdd\u5b58\u300c\u7f8e\u6d3d\u987e\u5ba2 id\u300d\u6765\u7ed1\u5b9a\u81ea\u5df1\u7684\u7528\u6237\u7cfb\u7edf\uff0c\u4e5f\u53ef\u4ee5\u5c06\u81ea\u5df1\u7684\u7528\u6237 id\u5f53\u505a\u53c2\u6570\uff0c\u8fdb\u884c\u987e\u5ba2\u7684\u4e0a\u7ebf\uff0c\u7f8e\u6d3d\u5c06\u4f1a\u4e3a\u5f00\u53d1\u8005\u7ed1\u5b9a\u4e00\u4e2a\u987e\u5ba2\uff0c\u4e0b\u6b21\u5f00\u53d1\u8005\u76f4\u63a5\u8c03\u7528\u5982\u4e0b\u63a5\u53e3\uff0c\u5c31\u80fd\u8ba9\u8fd9\u4e2a\u7ed1\u5b9a\u7684\u987e\u5ba2\u4e0a\u7ebf\u3002 \u8c03\u7528\u6b64\u63a5\u53e3\u540e\uff0c\u5f53\u524d\u53ef\u7528\u7684\u987e\u5ba2\u5373\u4e3a\u8be5\u81ea\u5b9a\u4e49 id \u5bf9\u5e94\u7684\u987e\u5ba2 id\u3002<\/p>\n\n\n\n<p id=\"e0f2e90ca9d4d1905a34f8d7528a37f3\"><strong>\u7279\u522b\u6ce8\u610f\uff1a<\/strong>\u4f20\u7ed9\u7f8e\u6d3d\u7684\u81ea\u5b9a\u4e49 id \u4e0d\u80fd\u4e3a\u81ea\u589e\u957f\u7684\uff0c\u5426\u5219\u975e\u5e38\u5bb9\u6613\u53d7\u5230\u4e2d\u95f4\u4eba\u653b\u51fb\uff0c\u6b64\u60c5\u51b5\u7684\u5f00\u53d1\u8005\u5efa\u8bae\u4fdd\u5b58\u7f8e\u6d3d\u987e\u5ba2 id\uff0c<strong>\u81ea\u5b9a\u4e49id\u4e3a\u957f\u5ea6\u4e0d\u8d85\u8fc7 32 \u4f4d\u7684\u5b57\u7b26\u4e32<\/strong>\u3002<\/p>\n\n\n\n<p class=\"wp-block-ht-blocks-messages wp-block-hb-message wp-block-hb-message--withicon is-style-success\"><strong>\u987e\u5ba2 id \u662f\u7531\u4f60\u6765\u751f\u6210\u7684\uff0c\u8bf7\u4fdd\u8bc1\u6bcf\u4e2a\u987e\u5ba2\u62e5\u6709\u72ec\u4e00\u65e0\u4e8c\u7684 id \uff0c\u5426\u5219\u4f1a\u51fa\u73b0\u591a\u4e2a\u5ba2\u6237\u4e32\u6d88\u606f\u7684\u60c5\u51b5\uff01<\/strong><\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n* \u7ed1\u5b9a\u81ea\u5b9a\u4e49 id\uff0c\u5e76\u8bbe\u7f6e\u4e0a\u7ebf\n*\n* @param customizedId   \u81ea\u5b9a\u4e49 id\n* @param onlineCallback \u56de\u8c03\u63a5\u53e3\n*\/\nsetClientOnlineWithCustomizedId(String customizedId, final OnClientOnlineCallback onlineCallback)<\/code><\/pre><\/div>\n\n\n\n<p id=\"d652cbc04fdfc73ece9a06af068e5cf1\">MQConversationActivity.class \u5185\u90e8\u8c03\u7528\u4e86\u6b64\u63a5\u53e3\uff0c\u6240\u4ee5\u53ef\u4ee5\u76f4\u63a5\u901a\u8fc7 MQIntentBuilder \u6765\u6784\u9020 intent\u3002<\/p>\n\n\n\n<p id=\"d41d8d1e84a14b88f692c9618aaf70fb\"><strong>Example:<\/strong><\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/\/ \u5047\u8bbe developer@dev.com \u662f\u5f00\u53d1\u8005\u7684\u7528\u6237 id\nIntent intent = new MQIntentBuilder(this)\n        .setCustomizedId(&quot;developer@dev.com&quot;) \/\/ \u76f8\u540c\u7684 id \u4f1a\u88ab\u8bc6\u522b\u4e3a\u540c\u4e00\u4e2a\u987e\u5ba2\n        .build();\nstartActivity(intent);<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"kTHU4\">\u6307\u5b9a\u5ba2\u670d\u6216\u8005\u5206\u7ec4<\/h3>\n\n\n\n<p id=\"d9fab4580e5c9aa9c74d883a9b5b4325\">\u7f8e\u6d3d\u9ed8\u8ba4\u4f1a\u6309\u7167\u7ba1\u7406\u5458\u8bbe\u7f6e\u7684\u5206\u914d\u65b9\u5f0f\u667a\u80fd\u5206\u914d\u5ba2\u670d\uff0c\u4f46\u5982\u679c\u9700\u8981\u8ba9\u6765\u81ea App \u7684\u987e\u5ba2\u6307\u5b9a\u5206\u914d\u7ed9\u67d0\u4e2a\u5ba2\u670d\u6216\u8005\u67d0\u7ec4\u5ba2\u670d\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u6307\u5b9a\u5ba2\u670d\u6216\u8005\u5206\u7ec4\uff0c\u9ed8\u8ba4\u5206\u914d\u5168\u4f01\u4e1a\n *\n * @param agentId      \u6307\u5b9a\u5ba2\u670d\u7684 id\uff0c\u4e0d\u6307\u5b9a\u4f20 null\n * @param groupId      \u6307\u5b9a\u5206\u7ec4\u7684 id\uff0c\u4e0d\u6307\u5b9a\u4f20 null\n * @param scheduleRule \u5206\u914d\u89c4\u5219 MQScheduleRule.java\n *\/\nsetScheduledAgentOrGroupWithId(String agentId, String groupId, MQScheduleRule scheduleRule)<\/code><\/pre><\/div>\n\n\n\n<p id=\"3865b66c6bdb2a43819c8c7e2d9aff5b\">\u5206\u914d\u89c4\u5219\uff1a<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>MQScheduleRule.REDIRECT_NONE \/\/ \u6307\u5b9a\u5206\u914d\u5ba2\u670d\u5931\u8d25\uff0c\u5219\u8fdb\u5165\u7559\u8a00\nMQScheduleRule.REDIRECT_GROUP \/\/ \u5206\u914d\u7ed9\u7ec4\u5185\u7684\u4eba\uff0c\u5206\u914d\u5931\u8d25\uff0c\u5219\u8fdb\u5165\u7559\u8a00\nMQScheduleRule.REDIRECT_ENTERPRISE \/\/ \u5206\u914d\u7ed9\u4f01\u4e1a\u968f\u673a\u4e00\u4e2a\u4eba\uff0c\u5206\u914d\u5931\u8d25\uff0c\u5219\u8fdb\u5165\u7559\u8a00 \uff08\u9ed8\u8ba4\uff09<\/code><\/pre><\/div>\n\n\n\n<p id=\"1842ca0076e1a79f018413e879806224\">MQConversationActivity.class \u5185\u90e8\u8c03\u7528\u4e86\u6b64\u63a5\u53e3\uff0c\u6240\u4ee5\u53ef\u4ee5\u76f4\u63a5\u901a\u8fc7 MQIntentBuilder \u6765\u6784\u9020 intent\u3002<\/p>\n\n\n\n<p id=\"0958e01af9e8544dcc82ac7beaba658e\"><strong>Example:<\/strong><\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>Intent intent = new MQIntentBuilder(this)\n        .setScheduledAgent(agentId) \/\/ agentId \u53ef\u4ee5\u4ece\u5de5\u4f5c\u53f0\u67e5\u8be2\n        .setScheduledGroup(groupId) \/\/ groupId \u53ef\u4ee5\u4ece\u5de5\u4f5c\u53f0\u67e5\u8be2\n        .setScheduleRule(MQScheduleRule.REDIRECT_ENTERPRISE) \/\/ \u9ed8\u8ba4\n        .build();\nstartActivity(intent);<\/code><\/pre><\/div>\n\n\n\n<p id=\"b0e78188b9314101e5999830453581f3\"><strong>\u6ce8\u610f\uff1a<\/strong><\/p>\n\n\n\n<ul>\n<li>\u8be5\u9009\u9879\u9700\u8981\u5728\u7528\u6237\u4e0a\u7ebf\u524d\u8bbe\u7f6e\u3002<\/li>\n\n\n\n<li>\u5ba2\u670d\u7ec4 ID \u548c\u5ba2\u670d ID \u53ef\u4ee5\u901a\u8fc7\u7ba1\u7406\u5458\u5e10\u53f7\u5728\u540e\u53f0\u7684\u300c\u8bbe\u7f6e\u300d\u4e2d\u67e5\u770b\u3002<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"455\" src=\"https:\/\/meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe3.png\" alt=\"\" class=\"wp-image-2398\" srcset=\"https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe3.png 1024w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe3-300x133.png 300w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe3-768x341.png 768w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe3-50x22.png 50w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe3-60x27.png 60w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe3-100x44.png 100w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"PaAax\">\u8bbe\u7f6e\u987e\u5ba2\u79bb\u7ebf<\/h3>\n\n\n\n<p id=\"17ce069f647bddcf7a4de43be5fd4496\">\u8bbe\u7f6e\u987e\u5ba2\u79bb\u7ebf\u540e\uff0c\u5c06\u505c\u6b62\u76d1\u542c\u5ba2\u670d\u53d1\u9001\u7684\u6d88\u606f\uff0c\u5f00\u53d1\u8005\u4e0d\u4f1a\u518d\u76d1\u542c\u5230\u5373\u65f6\u6d88\u606f\u5e7f\u64ad\u3002<\/p>\n\n\n\n<p id=\"cd257b69b559a22a2d90e96049f1ebba\">\u5982\u679c\u8bbe\u7f6e\u4e86\u987e\u5ba2\u79bb\u7ebf\uff0c\u5e76\u4e14\u5728\u7f8e\u6d3d\u5de5\u4f5c\u53f0\u914d\u7f6e\u4e86\u63a8\u9001\u670d\u52a1\u5668\uff0c\u5219\u5ba2\u670d\u53d1\u9001\u7684\u6d88\u606f\u5c06\u4f1a\u53d1\u9001\u7ed9\u5f00\u53d1\u8005\u7684\u670d\u52a1\u7aef\u3002<\/p>\n\n\n\n<p id=\"c371466e08ce06bfc6de371db1e76ff1\">\u7f8e\u6d3d\u5efa\u8bae\uff1a\u5982\u679c\u9000\u51fa\u754c\u9762\u540e\u9700\u8981\u76d1\u542c\u5ba2\u670d\u6d88\u606f\uff0c\u4e0d\u8bbe\u7f6e\u987e\u5ba2\u79bb\u7ebf\uff0c\u8fd9\u6837\u5f00\u53d1\u8005\u4ecd\u80fd\u76d1\u542c\u5230\u6536\u5230\u6d88\u606f\u7684\u5e7f\u64ad\uff0c\u4ee5\u4fbf\u63d0\u9192\u987e\u5ba2\u6709\u65b0\u6d88\u606f\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n* \u8bbe\u7f6e\u987e\u5ba2\u79bb\u7ebf\n* \u9700\u8981\u521d\u59cb\u5316\u6210\u529f\u540e\u624d\u80fd\u8c03\u7528\n* \u5982\u679c\u8bbe\u7f6e\u4e86\u987e\u5ba2\u79bb\u7ebf\uff0c\u5219\u5ba2\u670d\u53d1\u9001\u7684\u6d88\u606f\u5c06\u4f1a\u53d1\u9001\u7ed9\u5f00\u53d1\u8005\u7684\u63a8\u9001\u670d\u52a1\u5668\n*\/\nsetClientOffline()<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"51xBn\">\u53d1\u9001\u6587\u5b57\u6d88\u606f \/ \u56fe\u7247\u6d88\u606f \/ \u8bed\u97f3\u6d88\u606f<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u53d1\u9001\u6587\u5b57\u6d88\u606f\n *\n * @param content               \u6d88\u606f\u5185\u5bb9\n * @param onMessageSendCallback \u6d88\u606f\u72b6\u6001\u56de\u8c03\n*\/\nsendMQTextMessage(String content, final OnMessageSendCallback onMessageSendCallback)\n\/**\n * \u53d1\u9001\u56fe\u7247\u6d88\u606f\n *\n * @param localPath             \u56fe\u7247\u7684\u672c\u5730\u8def\u5f84\n * @param onMessageSendCallback \u6d88\u606f\u72b6\u6001\u56de\u8c03\n *\/\nsendMQPhotoMessage(String localPath, final OnMessageSendCallback onMessageSendCallback)\n\/**\n * \u53d1\u9001\u8bed\u97f3\u6d88\u606f\n *\n * @param localPath             \u8bed\u97f3\u7684\u672c\u5730\u8def\u5f84\n * @param onMessageSendCallback \u6d88\u606f\u72b6\u6001\u56de\u8c03\n *\/\nsendMQVoiceMessage(String localPath, final OnMessageSendCallback onMessageSendCallback)<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"IhS95\">\u4ece\u670d\u52a1\u5668\u83b7\u53d6\u5386\u53f2\u6d88\u606f<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u4ece\u670d\u52a1\u5668\u83b7\u53d6\u5386\u53f2\u6d88\u606f\n *\n * @param lastMessageCreateOn  \u83b7\u53d6\u8be5\u65e5\u671f\u4e4b\u524d\u7684\u6d88\u606f\n * @param length               \u83b7\u53d6\u7684\u6d88\u606f\u957f\u5ea6\n * @param onGetMessageListCallback \u56de\u8c03\n *\/\ngetMQMessageFromService(final long lastMessageCreateOn, final int length, final OnGetMessageListCallback onGetMessageListCallback)<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"OiH0c\">\u4ece\u672c\u5730\u83b7\u53d6\u5386\u53f2\u6d88\u606f<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u4ece\u670d\u52a1\u5668\u83b7\u53d6\u5386\u53f2\u6d88\u606f\n *\n * @param lastMessageCreateOn  \u83b7\u53d6\u8be5\u65e5\u671f\u4e4b\u524d\u7684\u6d88\u606f\n * @param length               \u83b7\u53d6\u7684\u6d88\u606f\u957f\u5ea6\n * @param onGetMessageListCallback \u56de\u8c03\n *\/\ngetMQMessageFromDatabase(final long lastMessageCreateOn, final int length, final OnGetMessageListCallback onGetMessageListCallback)<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"MxbEH\">\u8bbe\u7f6e\u7528\u6237\u7684\u8bbe\u5907\u552f\u4e00\u6807\u8bc6<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u8bbe\u7f6e\u7528\u6237\u7684\u8bbe\u5907\u552f\u4e00\u6807\u8bc6\n *\n * @param token \u552f\u4e00\u6807\u8bc6\n *\/\nregisterDeviceToken(String token, OkHttpUtils.OnRegisterDeviceTokenCallback onRegisterDeviceTokenCallback)<\/code><\/pre><\/div>\n\n\n\n<p id=\"fe3da8f7ded7a710c4cf5009e0477e1e\">App \u8fdb\u5165\u540e\u53f0\u540e\uff0c\u7f8e\u6d3d\u63a8\u9001\u7ed9\u5f00\u53d1\u8005\u670d\u52a1\u7aef\u7684\u6d88\u606f\u6570\u636e\u683c\u5f0f\u4e2d\uff0c\u4f1a\u6709 deviceToken \u7684\u5b57\u6bb5\u3002<\/p>\n\n\n\n<p id=\"6d68462c4592d0d324c13a596bfcaf15\">\u7f8e\u6d3d\u63a8\u9001\u6d88\u606f\u7ed9\u5f00\u53d1\u8005\u670d\u52a1\u7aef\u7684\u6570\u636e\u683c\u5f0f\uff0c\u53ef\u53c2\u8003\u3010\u63a8\u9001\u6d88\u606f\u6570\u636e\u7ed3\u6784\u3011\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"UK9Zq\">\u5f00\u53d1\u8005\u81ea\u5b9a\u4e49\u5f53\u524d\u987e\u5ba2\u7684\u4fe1\u606f<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u5f00\u53d1\u8005\u81ea\u5b9a\u4e49\u5f53\u524d\u987e\u5ba2\u7684\u4fe1\u606f\uff0c\u7528\u4e8e\u5c55\u793a\u7ed9\u5ba2\u670d\n *\n * @param clientInfo           \u987e\u5ba2\u4fe1\u606f\n * @param onClientInfoCallback \u56de\u8c03\n *\/\nsetClientInfo(Map&lt;String, String&gt; clientInfo, OnClientInfoCallback onClientInfoCallback)<\/code><\/pre><\/div>\n\n\n\n<p id=\"657c9c4c4b52abcc00fdf766297db564\">\u529f\u80fd\u6548\u679c\u5c55\u793a\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"441\" src=\"https:\/\/meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe4-1.png\" alt=\"\" class=\"wp-image-2418\" srcset=\"https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe4-1.png 1024w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe4-1-300x129.png 300w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe4-1-768x331.png 768w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe4-1-50x22.png 50w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe4-1-60x26.png 60w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe4-1-100x43.png 100w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p id=\"dca1e0e86e4cd0f77a734b261b593942\">\u4e3a\u4e86\u8ba9\u5ba2\u670d\u80fd\u66f4\u51c6\u786e\u5e2e\u52a9\u7528\u6237\uff0c\u5f00\u53d1\u8005\u53ef\u4e0a\u4f20\u4e0d\u540c\u7528\u6237\u7684\u5c5e\u6027\u4fe1\u606f\u3002\u793a\u4f8b\u5982\u4e0b\uff1a<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>Map&lt;String, String&gt; info = new HashMap&lt;&gt;();\ninfo.put(&quot;name&quot;, &quot;\u5bcc\u575a\u4e49\u535a&quot;);\ninfo.put(&quot;avatar&quot;, &quot;https:\/\/s3.cn-north-1.amazonaws.com.cn\/pics.meiqia.bucket\/1dee88eabfbd7bd4&quot;);\ninfo.put(&quot;gender&quot;, &quot;\u7537&quot;);\ninfo.put(&quot;tel&quot;, &quot;111111&quot;);\ninfo.put(&quot;\u6280\u80fd1&quot;, &quot;\u4f11\u520a&quot;);\ninfo.put(&quot;\u6280\u80fd2&quot;, &quot;\u5916\u51fa\u53d6\u6750&quot;);\ninfo.put(&quot;\u6280\u80fd3&quot;, &quot;\u6253\u9ebb\u5c06&quot;);\nMQManager.getInstance(context).setClientInfo(info, new OnClientInfoCallback());<\/code><\/pre><\/div>\n\n\n\n<p id=\"a8dfbe1e51eeaa8b209b332f6f03d166\">MQConversationActivity.class \u5185\u90e8\u8c03\u7528\u4e86\u6b64\u63a5\u53e3\uff0c\u6240\u4ee5\u53ef\u4ee5\u76f4\u63a5\u901a\u8fc7 MQIntentBuilder \u6765\u6784\u9020 intent\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>HashMap&lt;String, String&gt; clientInfo = new HashMap&lt;&gt;();\nclientInfo.put(&quot;name&quot;, &quot;\u5bcc\u575a\u4e49\u535a&quot;);\nclientInfo.put(&quot;avatar&quot;, &quot;https:\/\/s3.cn-north-1.amazonaws.com.cn\/pics.meiqia.bucket\/1dee88eabfbd7bd4&quot;);\nclientInfo.put(&quot;gender&quot;, &quot;\u7537&quot;);\nclientInfo.put(&quot;tel&quot;, &quot;1300000000&quot;);\nclientInfo.put(&quot;\u6280\u80fd1&quot;, &quot;\u4f11\u520a&quot;);\nIntent intent = new MQIntentBuilder(this)\n        .setClientInfo(clientInfo)\n        .build();\nstartActivity(intent);<\/code><\/pre><\/div>\n\n\n\n<p id=\"0cbdefdfb7eb42cfe4e2144726814b16\">\u4ee5\u4e0b\u5b57\u6bb5\u662f\u7f8e\u6d3d\u5b9a\u4e49\u597d\u7684\uff0c\u5f00\u53d1\u8005\u53ef\u901a\u8fc7\u4e0a\u65b9\u63d0\u5230\u7684\u63a5\u53e3\uff0c\u76f4\u63a5\u5bf9\u4e0b\u65b9\u7684\u5b57\u6bb5\u8fdb\u884c\u8bbe\u7f6e\uff1a<\/p>\n\n\n\n<figure id=\"iHea0\" class=\"wp-block-table\"><table><tbody><tr><td>Key<\/td><td>\u8bf4\u660e<\/td><\/tr><tr><td>name<\/td><td>\u771f\u5b9e\u59d3\u540d<\/td><\/tr><tr><td>gender<\/td><td>\u6027\u522b<\/td><\/tr><tr><td>age<\/td><td>\u5e74\u9f84<\/td><\/tr><tr><td>tel<\/td><td>\u7535\u8bdd<\/td><\/tr><tr><td>weixin<\/td><td>\u5fae\u4fe1<\/td><\/tr><tr><td>weibo<\/td><td>\u5fae\u535a<\/td><\/tr><tr><td>address<\/td><td>\u5730\u5740<\/td><\/tr><tr><td>email<\/td><td>\u90ae\u4ef6<\/td><\/tr><tr><td>avatar<\/td><td>\u5934\u50cf URL<\/td><\/tr><tr><td>tags<\/td><td>\u6807\u7b7e\uff0c\u6570\u7ec4\u5f62\u5f0f\uff0c\u4e14\u5fc5\u987b\u662f\u4f01\u4e1a\u4e2d\u5df2\u7ecf\u5b58\u5728\u7684\u6807\u7b7e<\/td><\/tr><tr><td>comment<\/td><td>\u5907\u6ce8<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"Mp0ss\">\u83b7\u53d6\u5f53\u524d\u6b63\u5728\u63a5\u5f85\u7684\u5ba2\u670d\u4fe1\u606f<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u83b7\u53d6\u5f53\u524d\u6b63\u5728\u63a5\u5f85\u7684\u5ba2\u670d\u4fe1\u606f\n *\n * @return \u5982\u679c\u5b58\u5728\uff0c\u8fd4\u56de\u5f53\u524d\u5ba2\u670d\u4fe1\u606f\uff1b\u4e0d\u5b58\u5728\uff0c\u8fd4\u56de null\n *\/\ngetCurrentAgent()<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"OooKG\">\u83b7\u53d6\u5f53\u524d\u987e\u5ba2\u7684 id<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u83b7\u53d6\u5f53\u524d\u987e\u5ba2\u7684\u987e\u5ba2 id\uff0c\u5f00\u53d1\u8005\u53ef\u4fdd\u5b58\u8be5\u987e\u5ba2id\uff0c\u4e0b\u6b21\u4f7f\u7528 setClientOnlineWithMQClientId \u63a5\u53e3\u6765\u8ba9\u8be5\u987e\u5ba2\u767b\u9646\u7f8e\u6d3d\u5ba2\u670d\u7cfb\u7edf\n *\n * @return \u5f53\u524d\u987e\u5ba2 id\n *\/\ngetCurrentClientId()<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"dWMx3\">\u83b7\u53d6\u4e00\u4e2a\u65b0\u7684\u987e\u5ba2<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u83b7\u53d6\u4e00\u4e2a\u65b0\u7684\u987e\u5ba2\n *\n * @param onGetMQClientIdCallBack \u56de\u8c03\n *\/\ncreateMQClient(OnGetMQClientIdCallBackOn onGetMQClientIdCallBack)<\/code><\/pre><\/div>\n\n\n\n<p id=\"e9253d7a2dc29e5faf1a2b30dcb67b07\">\u5982\u679c\u5f00\u53d1\u8005\u60f3\u521d\u59cb\u5316\u4e00\u4e2a\u65b0\u7684\u987e\u5ba2\uff0c\u53ef\u8c03\u7528\u6b64\u63a5\u53e3\u3002<\/p>\n\n\n\n<p id=\"1e7a3a7e31cab3c5ca63c2f6b4242c4f\">\u8be5\u987e\u5ba2\u6ca1\u6709\u4efb\u4f55\u5386\u53f2\u8bb0\u5f55\u53ca\u7528\u6237\u4fe1\u606f\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"yJTEt\">\u66f4\u65b0\u6d88\u606f\u9605\u8bfb\u72b6\u6001<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u66f4\u65b0\u6d88\u606f\u9605\u8bfb\u72b6\u6001\n *\n * @param messageId \u6d88\u606fid\n * @param isRead    \u5c06\u66ff\u6362\u7684\u72b6\u6001\n *\/\nupdateMessage(long messageId, boolean isRead)<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"w4Ctq\">\u7ed3\u675f\u5f53\u524d\u5bf9\u8bdd<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u7ed3\u675f\u5f53\u524d\u5bf9\u8bdd\n *\n * @param onEndConversationCallback \u56de\u8c03\n *\/\nendCurrentConversation(OnEndConversationCallback onEndConversationCallback)<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"xcUpS\">\u7ed9\u5ba2\u670d\u53d1\u9001\u300c\u6b63\u5728\u8f93\u5165\u300d<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u5c06\u7528\u6237\u6b63\u5728\u8f93\u5165\u7684\u5185\u5bb9\uff0c\u63d0\u4f9b\u7ed9\u5ba2\u670d\u67e5\u770b\u3002\u8be5\u63a5\u53e3\u6ca1\u6709\u8c03\u7528\u9650\u5236\uff0c\u4f46\u6bcf1\u79d2\u5185\u53ea\u4f1a\u5411\u670d\u52a1\u5668\u53d1\u9001\u4e00\u6b21\u6570\u636e\n *\n * @param content \u6b63\u5728\u8f93\u5165\u7684\u5185\u5bb9\n *\/\nsendClientInputtingWithContent(String content)<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"KbcXn\">\u5207\u6362\u5f53\u524d\u987e\u5ba2<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u5207\u6362\u5f53\u524d\u987e\u5ba2\n *\n * @param clientIdOrCustomizedId clientId \u6216\u8005 customized\n * @param simpleCallback         \u56de\u8c03\n *\/\nMQManager.getInstance(context).setCurrentClient(String clientIdOrCustomizedId, SimpleCallback simpleCallback);<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"WufxR\">\u83b7\u53d6\u672a\u8bfb\u6d88\u606f<\/h3>\n\n\n\n<p id=\"1af024be8df6b8265a5a222c1cdc80ab\"><strong>\u9000\u51fa\u754c\u9762\u540e\u6536\u5230\u7684\u6d88\u606f\uff0c\u90fd\u5c06\u7b97\u4f5c\u672a\u8bfb\u6d88\u606f\u3002<\/strong><\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u83b7\u53d6\u5f53\u524d Client \u7684\u672a\u8bfb\u6d88\u606f\n *\n * @param onGetMessageListCallback \u56de\u8c03\n *\/\nMQManager.getInstance(context).getUnreadMessages(new OnGetMessageListCallback());<\/code><\/pre><\/div>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u83b7\u53d6\u6307\u5b9a ClientId \u6216\u8005 customized \u987e\u5ba2\u7684\u672a\u8bfb\u6d88\u606f\n *\n * @param clientIdOrCustomizedId   clientId \u6216\u8005 customized\n * @param onGetMessageListCallback \u56de\u8c03\n *\/\nMQManager.getInstance(context).getUnreadMessages(String clientIdOrCustomizedId, new OnGetMessageListCallback());<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"apmhm\">\u63a5\u6536\u5373\u65f6\u6d88\u606f<\/h3>\n\n\n\n<p id=\"07aeca4e821bc6ccda79d4a21a290a22\">\u5728\u672a\u5f00\u542f\u3010\u79bb\u7ebf\u6d88\u606f\u63a8\u9001\u3011\u7684\u60c5\u51b5\u4e0b\uff0c\u5f00\u53d1\u8005\u53ef\u4ee5\u901a\u8fc7\u6ce8\u518c\u4e00\u4e2a BroadcastReceiver \uff0c\u76d1\u542c\u5e7f\u64ad<\/p>\n\n\n\n<p id=\"95a8dfc1490c13f7eeea10addd203ab6\"><strong>\u6ce8\u610f\uff1a\u5fc5\u987b\u901a\u8fc7 LocalBroadcastManager \u6ce8\u518c \u548c \u53d6\u6d88\u6ce8\u518c BroadcastReceiver\u3002<\/strong><\/p>\n\n\n\n<p id=\"c51a3a10d110e3648313f707f2b85840\">Example:<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/\/ \u6ce8\u518c\nLocalBroadcastManager.getInstance(this).registerReceiver(messageReceiver, intentFilter);\n\/\/ \u53d6\u6d88\u6ce8\u518c\nLocalBroadcastManager.getInstance(this).unregisterReceiver(messageReceiver);<\/code><\/pre><\/div>\n\n\n\n<p id=\"11960dfcaee95e00125c1a0817574cbf\">BroadcastReceiver\uff1a<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>public class MessageReceiver extends BroadcastReceiver {\n    @Override\n    public void onReceive(Context context, Intent intent) {\n         \/\/ \u83b7\u53d6 ACTION\n         final String action = intent.getAction();\n         \/\/ \u63a5\u6536\u65b0\u6d88\u606f\n         if (MQMessageManager.ACTION_NEW_MESSAGE_RECEIVED.equals(action)) {\n             \/\/ \u4ece intent \u83b7\u53d6\u6d88\u606f id\n             String msgId = intent.getStringExtra(&quot;msgId&quot;);\n             \/\/ \u4ece MCMessageManager \u83b7\u53d6\u6d88\u606f\u5bf9\u8c61\n             MQMessageManager messageManager = MQMessageManager.getInstance(context);\n             MQMessage message = messageManager.getMQMessage(msgId);\n             \/\/ do something\n         }\n         \/\/ \u5ba2\u670d\u6b63\u5728\u8f93\u5165\n         else if (MQMessageManager.ACTION_AGENT_INPUTTING.equals(action)) {\n             \/\/ do something\n         }\n         \/\/ \u5ba2\u670d\u8f6c\u63a5\n         else if (MQMessageManager.ACTION_AGENT_CHANGE_EVENT.equals(action)) {\n             \/\/ \u83b7\u53d6\u8f6c\u63a5\u540e\u7684\u5ba2\u670d\n             MQAgent mqAgent = messageManager.getCurrentAgent();\n             \/\/ do something\n         }\n     }\n }<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"DdSMk\">\u83b7\u53d6 SDK \u7248\u672c\u53f7<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u83b7\u53d6 SDK \u7248\u672c\u53f7\n *\/\ngetMeiqiaSDKVersion()<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"2Xkbv\">\u79bb\u7ebf\u6d88\u606f\u63a8\u9001<\/h3>\n\n\n\n<p id=\"cbd83de356b834e9dd77196e3bd606ba\">\u5f53\u524d\u4ec5\u652f\u6301\u4e00\u79cd\u63a8\u9001\u65b9\u6848\uff0c\u5373\u7f8e\u6d3d\u670d\u52a1\u7aef\u53d1\u9001\u6d88\u606f\u81f3\u5f00\u53d1\u8005\u7684\u670d\u52a1\u7aef\uff0c\u5f00\u53d1\u8005\u518d\u63a8\u9001\u6d88\u606f\u5230 App\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"jFsn7\">\u8bbe\u7f6e\u63a5\u6536\u63a8\u9001\u7684\u670d\u52a1\u5668\u5730\u5740<\/h3>\n\n\n\n<p id=\"3b638fa6c56113f941dd0d15494dc04c\">\u63a8\u9001\u6d88\u606f\u5c06\u4f1a\u53d1\u9001\u81f3\u5f00\u53d1\u8005\u7684\u670d\u52a1\u5668\u3002<\/p>\n\n\n\n<p id=\"ca0ac389b9507c120379ca3aefea33d3\">\u8bbe\u7f6e\u670d\u52a1\u5668\u5730\u5740\uff0c\u8bf7\u4f7f\u7528\u7f8e\u6d3d\u7ba1\u7406\u5458\u5e10\u53f7\u767b\u5f55 <a href=\"http:\/\/www.meiqia.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">\u7f8e\u6d3d<\/a>\uff0c\u5728\u300c\u8bbe\u7f6e\u300d -&gt; \u300cSDK\u300d\u4e2d\u8bbe\u7f6e\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"657\" src=\"https:\/\/meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe5-1.jpeg\" alt=\"\" class=\"wp-image-2422\" srcset=\"https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe5-1.jpeg 1024w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe5-1-300x192.jpeg 300w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe5-1-768x493.jpeg 768w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe5-1-50x32.jpeg 50w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe5-1-60x38.jpeg 60w, https:\/\/www.meiqia.com\/help\/wp-content\/uploads\/2021\/11\/\u79fb\u52a8SDK-for-Android-\u622a\u56fe5-1-100x64.jpeg 100w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ttKbX\">\u8bbe\u7f6e\u7528\u6237\u7684\u8bbe\u5907\u552f\u4e00\u6807\u8bc6<\/h3>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>\/**\n * \u8bbe\u7f6e\u7528\u6237\u7684\u8bbe\u5907\u552f\u4e00\u6807\u8bc6\n *\n * @param token \u552f\u4e00\u6807\u8bc6\n *\/\nregisterDeviceToken(String token, OkHttpUtils.OnRegisterDeviceTokenCallback onRegisterDeviceTokenCallback)<\/code><\/pre><\/div>\n\n\n\n<p id=\"b0033fe364c668a375812fcc6e54043f\">\u5173\u95ed\u7f8e\u6d3d\u670d\u52a1\uff0c\u7f8e\u6d3d\u63a8\u9001\u7ed9\u5f00\u53d1\u8005\u670d\u52a1\u7aef\u7684\u6d88\u606f\u6570\u636e\u683c\u5f0f\u4e2d\uff0c\u4f1a\u6709 deviceToken \u7684\u5b57\u6bb5\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"yo0QO\">\u5173\u95ed\u7f8e\u6d3d\u670d\u52a1<\/h3>\n\n\n\n<p id=\"8228b71d1c3d87d55f4a49c48dce7303\">\u5173\u95ed\u670d\u52a1\u540e\uff0c\u5c06\u505c\u6b62\u76d1\u542c\u6d88\u606f\uff0c\u6b64\u65f6\u7f8e\u6d3d\u670d\u52a1\u7aef\u5c06\u4f1a\u63a8\u9001\u6d88\u606f\u7ed9\u5f00\u53d1\u8005\u63d0\u4f9b\u7684\u6d88\u606f\u63a8\u9001\u670d\u52a1\u7aef\uff0c\u5982\u4e0b\u4ee3\u7801\uff1a<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>MQManager.getInstance(context).closeMeiqiaService();<\/code><\/pre><\/div>\n\n\n\n<p id=\"d22b881dfae3fc431310952fbc1ef6f9\">\u7f8e\u6d3d\u5efa\u8bae\uff1a\u5728 App \u540e\u53f0\u4ee5\u540e\uff0c\u5173\u95ed\u7f8e\u6d3d\u670d\u52a1\u3002App \u8fdb\u5165\u524d\u53f0\uff0c\u5982\u679c\u9700\u8981\u76d1\u542c\u5ba2\u670d\u6d88\u606f\uff0c\u518d\u5f00\u542f\u7f8e\u6d3d\u670d\u52a1\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"7veoB\">\u5f00\u542f\u7f8e\u6d3d\u670d\u52a1<\/h3>\n\n\n\n<p id=\"afaebf4a551622853f12e7804c56ba1d\">\u5f00\u542f\u670d\u52a1\u540e\uff0c\u5c06\u91cd\u65b0\u76d1\u542c\u6d88\u606f\uff0c\u6b64\u65f6\u7f8e\u6d3d\u670d\u52a1\u7aef\u5c06\u4e0d\u4f1a\u63a8\u9001\u6d88\u606f\u7ed9\u5f00\u53d1\u8005\u63d0\u4f9b\u7684\u6d88\u606f\u63a8\u9001\u670d\u52a1\u7aef\uff0c\u5982\u4e0b\u4ee3\u7801\uff1a<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\" data-show-lang=\"0\"><code>MQManager.getInstance(context).openMeiqiaService();<\/code><\/pre><\/div>\n\n\n\n<p id=\"8872ddf2d582e54c95417f62b21d5a27\">\u7f8e\u6d3d\u5efa\u8bae\uff1a\u5728 App \u540e\u53f0\u4ee5\u540e\uff0c\u5173\u95ed\u7f8e\u6d3d\u670d\u52a1\u3002App \u8fdb\u5165\u524d\u53f0\uff0c\u5982\u679c\u9700\u8981\u76d1\u542c\u5ba2\u670d\u6d88\u606f\uff0c\u518d\u5f00\u542f\u7f8e\u6d3d\u670d\u52a1\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"XJ0B5\">\u63a8\u9001\u6d88\u606f\u6570\u636e\u7ed3\u6784<\/h3>\n\n\n\n<p id=\"978b3fc80dcb1e757cfaaa6ac180257d\">\u5f53\u6709\u6d88\u606f\u9700\u8981\u63a8\u9001\u65f6\uff0c\u7f8e\u6d3d\u670d\u52a1\u5668\u4f1a\u5411\u5f00\u53d1\u8005\u8bbe\u7f6e\u7684\u670d\u52a1\u5668\u5730\u5740\u53d1\u9001\u63a8\u9001\u6d88\u606f\uff0c\u65b9\u6cd5\u7c7b\u578b\u4e3a <em>POST<\/em>\uff0c\u6570\u636e\u683c\u5f0f\u4e3a <em>JSON<\/em> \u3002<\/p>\n\n\n\n<p id=\"46b0a3254a573e7d7704bece005cd36c\">\u53d1\u9001\u7684\u8bf7\u6c42\u683c\u5f0f\u4ecb\u7ecd\uff1a<\/p>\n\n\n\n<p id=\"690a410c2e4d5e49dd165038458fb1d8\">request.header.authorization \u4e3a\u6570\u636e\u7b7e\u540d\u3002<\/p>\n\n\n\n<p id=\"a9829a08bcd5a2f57291969aee68e3e6\">request.body \u4e3a\u6d88\u606f\u6570\u636e\uff0c\u6570\u636e\u7ed3\u6784\u4e3a\uff1a<\/p>\n\n\n\n<figure id=\"QHJHH\" class=\"wp-block-table\"><table><tbody><tr><td>Key<\/td><td>\u8bf4\u660e<\/td><\/tr><tr><td>messageId<\/td><td>\u6d88\u606f id<\/td><\/tr><tr><td>content<\/td><td>\u6d88\u606f\u5185\u5bb9<\/td><\/tr><tr><td>messageTime<\/td><td>\u53d1\u9001\u65f6\u95f4<\/td><\/tr><tr><td>fromName<\/td><td>\u53d1\u9001\u4eba\u59d3\u540d<\/td><\/tr><tr><td>deviceToken<\/td><td>\u53d1\u9001\u5bf9\u8c61\u8bbe\u5907\u7684 deviceToken\uff0c\u683c\u5f0f\u4e3a\u5b57\u7b26\u4e32<\/td><\/tr><tr><td>clientId<\/td><td>\u53d1\u9001\u5bf9\u8c61\u7684\u987e\u5ba2 id<\/td><\/tr><tr><td>customizedId<\/td><td>\u5f00\u53d1\u8005\u4f20\u7684\u81ea\u5b9a\u4e49 id<\/td><\/tr><tr><td>contentType<\/td><td>\u6d88\u606f\u7c7b\u578b &#8211; text\/photo\/audio<\/td><\/tr><tr><td>deviceOS<\/td><td>\u8bbe\u5907\u7cfb\u7edf<\/td><\/tr><tr><td>customizedData<\/td><td>\u5f00\u53d1\u8005\u4e0a\u4f20\u7684\u81ea\u5b9a\u4e49\u7684\u5c5e\u6027<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p id=\"e85820ec5ed2bb4219b3279539fa22ea\">\u5f00\u53d1\u8005\u53ef\u4ee5\u6839\u636e\u8bf7\u6c42\u4e2d\u7684\u7b7e\u540d\uff0c\u5bf9\u63a8\u9001\u6d88\u606f\u8fdb\u884c\u6570\u636e\u9a8c\u8bc1\uff0c\u7f8e\u6d3d\u63d0\u4f9b\u4e86 <code>Java\u3001Python\u3001Ruby\u3001JavaScript\u3001PHP<\/code> 5\u79cd\u8bed\u8a00\u7684\u8ba1\u7b97\u7b7e\u540d\u7684\u4ee3\u7801\uff0c\u5177\u4f53\u8bf7\u79fb\u6b65 <a href=\"https:\/\/github.com\/Meiqia\/MeiqiaSDK-Push-Signature-Example\" target=\"_blank\" rel=\"noreferrer noopener\">\u7f8e\u6d3d SDK 3.0 \u63a8\u9001\u7684\u6570\u636e\u7ed3\u6784\u7b7e\u540d\u7b97\u6cd5<\/a>\u3002<\/p>\n\n\n\n<p id=\"a44fed3cfbd40be071d2cd19dd9a0947\">*\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u4f60\u662f\u65e7\u7248 SDK \u66f4\u6362\u5230\u65b0\u7248 SDK\uff0c\u6211\u4eec\u7684\u63a8\u9001\u6570\u636e\u683c\u5f0f\u7edf\u4e00\u6210\u4e86 JSON \u683c\u5f0f\uff0c\u5177\u4f53\u8bf7\u53c2\u89c1\u79bb\u7ebf\u6d88\u606f\u63a8\u9001<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"vIZpM\">\u81ea\u5b9a\u4e49UI<\/h2>\n\n\n\n<ul>\n<li>\u914d\u7f6e\u6807\u9898\u6587\u672c\u5bf9\u5176\u65b9\u5f0f<\/li>\n<\/ul>\n\n\n\n<figure id=\"IZa7E\" class=\"wp-block-table\"><table><tbody><tr><td>\u81ea\u5b9a\u4e49\u5c5e\u6027\u8bf4\u660e<\/td><td>\u8bf4\u660e<\/td><td>\u9ed8\u8ba4\u503c<\/td><\/tr><tr><td>MQConfig.ui.titleGravity<\/td><td>\u5c45\u4e2d\u5bf9\u9f50 MQTitleGravity.CENTER\u3001\u5c45\u5de6\u5bf9\u9f50 MQTitleGravity.LEFT<\/td><td>MQTitleGravity.CENTER<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<ul>\n<li>\u901a\u8fc7\u5728\u81ea\u5df1\u5de5\u7a0b\u4e2d\u8986\u76d6\u76f8\u5e94\u8d44\u6e90ID\u7684\u65b9\u5f0f\u914d\u7f6e\u81ea\u5b9a\u4e49 UI\u300c\u8fd9\u91cc\u53ea\u5217\u51fa\u5e38\u7528\u81ea\u5b9a\u4e49\u5c5e\u6027\uff0c\u5982\u9700\u7279\u6b8a\u5b9a\u5236\uff0c\u8bf7\u67e5\u770b\u7f8e\u6d3d SDK \u6e90\u7801\u91cc\u76f8\u5e94\u7684\u8d44\u6e90 ID \u5e76\u5728\u81ea\u5df1\u5de5\u7a0b\u4e2d\u8986\u76d6\u300d<\/li>\n<\/ul>\n\n\n\n<figure id=\"veyZV\" class=\"wp-block-table\"><table><tbody><tr><td>\u81ea\u5b9a\u4e49\u5c5e\u6027\u540d<\/td><td>\u8bf4\u660e<\/td><\/tr><tr><td>mq_activity_bg<\/td><td>Activity \u80cc\u666f\u989c\u8272\u8d44\u6e90<\/td><\/tr><tr><td>mq_activity_title_textColor<\/td><td>\u6807\u9898\u680f\u6587\u5b57\u989c\u8272\u8d44\u6e90<\/td><\/tr><tr><td>mq_chat_left_textColor<\/td><td>\u804a\u5929\u754c\u9762\u5de6\u8fb9\u6c14\u6ce1\u6587\u5b57\u989c\u8272\u8d44\u6e90<\/td><\/tr><tr><td>mq_chat_right_textColor<\/td><td>\u804a\u5929\u754c\u9762\u53f3\u8fb9\u6c14\u6ce1\u6587\u5b57\u989c\u8272\u8d44\u6e90<\/td><\/tr><tr><td>mq_chat_left_bubble<\/td><td>\u804a\u5929\u754c\u9762\u5de6\u8fb9\u6c14\u6ce1\u80cc\u666f\u989c\u8272\u8d44\u6e90<\/td><\/tr><tr><td>mq_chat_right_bubble<\/td><td>\u804a\u5929\u754c\u9762\u53f3\u8fb9\u6c14\u6ce1\u80cc\u666f\u989c\u8272\u8d44\u6e90<\/td><\/tr><tr><td>mq_ic_back.png<\/td><td>\u5de6\u4e0a\u89d2\u8fd4\u56de\u7bad\u5934\u56fe\u7247\u8d44\u6e90<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<ul>\n<li>\u4ee5\u4e0b\u5c5e\u6027\u53ef\u901a\u8fc7 Java \u4ee3\u7801\u7684\u65b9\u5f0f\u914d\u7f6e\u300c\u4e0d\u5efa\u8bae\u4f7f\u7528\u8fd9\u79cd\u65b9\u5f0f\u300d<\/li>\n<\/ul>\n\n\n\n<figure id=\"vUdzm\" class=\"wp-block-table\"><table><tbody><tr><td>\u81ea\u5b9a\u4e49\u5c5e\u6027\u540d<\/td><td>\u8bf4\u660e<\/td><\/tr><tr><td>MQConfig.ui.backArrowIconResId<\/td><td>\u6807\u9898\u680f\u8fd4\u56de\u7bad\u5934\u56fe\u7247\u7684\u8d44\u6e90 ID<\/td><\/tr><tr><td>MQConfig.ui.titleBackgroundResId<\/td><td>\u6807\u9898\u680f\u80cc\u666f\u989c\u8272\u7684\u8d44\u6e90 ID<\/td><\/tr><tr><td>MQConfig.ui.titleTextColorResId<\/td><td>\u6807\u9898\u680f\u6587\u5b57\u989c\u8272\u7684\u8d44\u6e90 ID<\/td><\/tr><tr><td>MQConfig.ui.leftChatBubbleColorResId<\/td><td>\u804a\u5929\u754c\u9762\u5de6\u8fb9\u6c14\u6ce1\u80cc\u666f\u989c\u8272\u7684\u8d44\u6e90 ID<\/td><\/tr><tr><td>MQConfig.ui.rightChatBubbleColorResId<\/td><td>\u804a\u5929\u754c\u9762\u53f3\u8fb9\u6c14\u6ce1\u80cc\u666f\u989c\u8272\u7684\u8d44\u6e90 ID<\/td><\/tr><tr><td>MQConfig.ui.leftChatTextColorResId<\/td><td>\u804a\u5929\u754c\u9762\u5de6\u8fb9\u6c14\u6ce1\u6587\u5b57\u989c\u8272\u7684\u8d44\u6e90 ID<\/td><\/tr><tr><td>MQConfig.ui.rightChatTextColorResId<\/td><td>\u804a\u5929\u754c\u9762\u53f3\u8fb9\u6c14\u6ce1\u6587\u5b57\u989c\u8272\u7684\u8d44\u6e90 ID<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"L7Xb4\">\u81ea\u5b9a\u4e49\u4e1a\u52a1<\/h2>\n\n\n\n<figure id=\"ICO3v\" class=\"wp-block-table\"><table><tbody><tr><td>\u5c5e\u6027\u8bf4\u660e<\/td><td>\u8bf4\u660e<\/td><td>\u9ed8\u8ba4\u503c<\/td><\/tr><tr><td>MQConfig.isVoiceSwitchOpen<\/td><td>\u662f\u5426\u5f00\u542f\u8bed\u97f3\u529f\u80fd<\/td><td>\u9ed8\u8ba4\u4e3a true<\/td><\/tr><tr><td>MQConfig.isSoundSwitchOpen<\/td><td>\u662f\u5426\u5f00\u542f\u58f0\u97f3\u63d0\u793a<\/td><td>\u9ed8\u8ba4\u4e3a true<\/td><\/tr><tr><td>MQConfig.isLoadMessagesFromNativeOpen<\/td><td>\u662f\u5426\u52a0\u8f7d\u672c\u5730\u6570\u636e<\/td><td>\u9ed8\u8ba4\u4e3a false<\/td><\/tr><tr><td>MQConfig.isShowClientAvatar<\/td><td>\u662f\u5426\u663e\u793a\u5ba2\u6237\u5934\u50cf<\/td><td>\u9ed8\u8ba4\u4e3a false<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"Jyrs8\">\u4ee3\u7801\u6df7\u6dc6<\/h2>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code>\/\/      OkHttp\u76f8\u5173\n-keepattributes Signature\n-keepattributes *Annotation*\n-keep class com.squareup.okhttp3.** { *; }\n-keep interface com.squareup.okhttp3.** { *; }\n-dontwarn com.squareup.okhttp3.**\n\/\/      Okio\u76f8\u5173\n-keep class sun.misc.Unsafe { *; }\n-dontwarn java.nio.file.*\n-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement\n-dontwarn okio.**\n \/\/     UIL\u76f8\u5173\n-keep class com.nostra13.universalimageloader.** { *; }\n-keepclassmembers class com.nostra13.universalimageloader.** {*;}\n-dontwarn com.nostra13.universalimageloader.**\n\/\/      Glide\u76f8\u5173\n-keep class com.bumptech.glide.Glide { *; }\n-keep public class * implements com.bumptech.glide.module.GlideModule\n-keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {\n  **[] $VALUES;\n  public *;\n}\n-dontwarn com.bumptech.glide.**\n \/\/     Picasso\u76f8\u5173\n-keep class com.squareup.picasso.Picasso { *; }\n-dontwarn com.squareup.okhttp.**\n-dontwarn com.squareup.picasso.**\n \/\/     xUtils3\u76f8\u5173\n-keepattributes Signature,*Annotation*\n-keep public class org.xutils.** {\n    public protected *;\n}\n-keep public interface org.xutils.** {\n    public protected *;\n}\n-keepclassmembers class * extends org.xutils.** {\n    public protected *;\n}\n-keepclassmembers @org.xutils.db.annotation.* class * {*;}\n-keepclassmembers @org.xutils.http.annotation.* class * {*;}\n-keepclassmembers class * {\n    @org.xutils.view.annotation.Event &lt;methods&gt;;\n}\n-dontwarn org.xutils.**<\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5728\u60a8\u9605\u8bfb\u6b64\u6587\u6863\u4e4b\u524d\uff0c\u6211\u4eec\u5047\u5b9a\u60a8\u5df2\u7ecf\u5177\u5907\u4e86\u57fa\u7840\u7684 Android \u5e94\u7528\u5f00\u53d1\u7ecf\u9a8c\uff0c\u5e76\u80fd\u591f\u7406\u89e3\u76f8\u5173\u57fa\u7840\u6982\u5ff5\u3002<\/p>\n","protected":false},"author":2,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"ht-kb-category":[8],"ht-kb-tag":[],"_links":{"self":[{"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/ht-kb\/64"}],"collection":[{"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/comments?post=64"}],"version-history":[{"count":35,"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/ht-kb\/64\/revisions"}],"predecessor-version":[{"id":6672,"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/ht-kb\/64\/revisions\/6672"}],"wp:attachment":[{"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/media?parent=64"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/ht-kb-category?post=64"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.meiqia.com\/help\/wp-json\/wp\/v2\/ht-kb-tag?post=64"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}