meiqia / meiqiasdk-android Goto Github PK
View Code? Open in Web Editor NEW美洽 Android SDK 3.0 面向开发者的 Demo
美洽 Android SDK 3.0 面向开发者的 Demo
Intent intent = new MQIntentBuilder(mContext,MQConversationActivity.class)
// .setClientInfo(clientInfo)
.build();
mContext.startActivity(intent);
就报错400,path[track_id],之前没出现过这个问题
Could not find class 'android.media.SoundPool$Builder', referenced from method com.meiqia.meiqiasdk.util.MQSoundPoolManager.
在android4.4.4的红米上会报这个错。原因是这个Builder的api level是21
什么时候可以支持okhttp3.X ?
另外图像处理可以加上fresco,个人感觉
怎么实现自定义的聊天界面。比如在增加个控件等。
当客户app用的是targetSdkVersion在23以下时候,引用你们的sdk,sdk的权限处理代码用的是新的,此时调用ContextCompat.checkSelfPermission,会出现,无法继续下去的问题。 应该加入判断代码,23以下直接按已经授权的逻辑走。。。一个场景就是点击会话窗口的voice按钮,没反应
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.meiqia.core.bean.MQClient.getEnterpriseId()' on a null object reference
at com.meiqia.core.b.a(Unknown Source)
at com.meiqia.core.bb.onSuccess(Unknown Source)
at com.meiqia.core.c.onSuccess(Unknown Source)
at com.meiqia.core.s.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:815)
at android.os.Handler.dispatchMessage(Handler.java:104)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5803)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1009)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:804)
美洽sdk使用的glide版本还是3.x
但是我的工程使用的是最新的4.6.1
能否做下支持?
java.lang.ClassCastException
com.meiqia.meiqiasdk.widget.MQClientItem cannot be cast to com.meiqia.meiqiasdk.widget.MQRobotItem
com.meiqia.meiqiasdk.util.MQChatAdapter.getView(MQChatAdapter.java:139)
java.lang.RuntimeException
请调用MQConfig.init方法初始化美洽 SDK,并传入MQImageLoader接口的实现类
com.meiqia.meiqiasdk.util.MQConfig.getImageLoader(MQConfig.java:78)
com.meiqia.meiqiasdk.widget.MQAgentItem.setMessage(MQAgentItem.java:47)
com.meiqia.meiqiasdk.util.MQChatAdapter.getView(MQChatAdapter.java:133)
java.lang.SecurityException
ConnectivityService: Neither user 10208 nor current process has android.permission.ACCESS_NETWORK_STATE.
java.lang.RuntimeException:Error receiving broadcast Intent { act=android.net.conn.CONNECTIVITY_CHANGE flg=0x4000010 (has extras) } in com.meiqia.core.ce@ac8f0e7
android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:874)
......
Caused by:
java.lang.SecurityException:ConnectivityService: Neither user 10208 nor current process has android.permission.ACCESS_NETWORK_STATE.
android.os.Parcel.readException(Parcel.java:1540)
android.os.Parcel.readException(Parcel.java:1493)
android.net.IConnectivityManager$Stub$Proxy.getActiveNetworkInfo(IConnectivityManager.java:968)
android.net.ConnectivityManager.getActiveNetworkInfo(ConnectivityManager.java:614)
com.meiqia.core.b.l.f(Unknown Source)
com.meiqia.core.ce.onReceive(Unknown Source)
Whenever I start to type in textbox at bottom of the screen Arrow icon on send button changes to white but I want to change it to green. There is any posibility?
http://uploadpie.com/pRAtz
导入后AS后MQChoosePicDialog这个类会报错,需要删掉重新建一个,是不是没重命名好?
sdk 版本 3.4.0
android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database
at android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:214)
at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:198)
at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:836)
at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:821)
at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:714)
at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:1252)
at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:267)
at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:223)
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:163)
at com.meiqia.core.bz.c(Unknown Source)
at com.meiqia.core.bz.a(Unknown Source)
at com.meiqia.core.bz.a(Unknown Source)
at com.meiqia.core.d$a.a(Unknown Source)
at com.meiqia.core.da.a(Unknown Source)
at com.meiqia.core.du.onResponse(Unknown Source)
at okhttp3.RealCall$AsyncCall.execute(RealCall.java:135)
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
美洽客服在安卓7.0无法调用相机,安卓6.0以下则可用,请问是官方暂时不支持吗?
AS 1.3起就支持 library 隐藏私有资源
建议隐藏 SDK 的资源,开发者在使用时不会看到一堆mq_开头的资源了.
具体参见 https://www.youtube.com/watch?v=_Rox-HXhRfI&feature=youtu.be&t=144
+100!!!
Fatal Exception: java.lang.NullPointerException
at com.meiqia.core.a.c.b(Unknown Source)
at com.meiqia.core.cz.a(Unknown Source)
at com.meiqia.core.dy.onResponse(Unknown Source)
at okhttp3.RealCall$AsyncCall.execute(Paramount:153)
at okhttp3.internal.NamedRunnable.run(Paramount:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
com.meiqia.meiqiasdk.activity.MQConversationActivity has leaked:
- GC ROOT static com.meiqia.meiqiasdk.util.MQAudioRecorderManager.sInstance
- references com.meiqia.meiqiasdk.util.MQAudioRecorderManager.mCallback
- references com.meiqia.meiqiasdk.widget.MQRecorderKeyboardLayout.mContext
- leaks com.meiqia.meiqiasdk.activity.MQConversationActivity instance
检测信息来自 LeakCanary
有怎么接入fragment的教程吗
java.lang.NoClassDefFoundError: com.meiqia.core.cp
at com.meiqia.core.MeiQiaService.a(Unknown Source)
at com.meiqia.core.MeiQiaService.onStartCommand(Unknown Source)
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4062)
at android.app.ActivityThread.access$2400(ActivityThread.java:221)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1897)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7225)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Process: com.shirble.retailer.app, PID: 22938
java.lang.NoClassDefFoundError: com.meiqia.core.cp
at com.meiqia.core.MeiQiaService.a(Unknown Source)
at com.meiqia.core.MeiQiaService.onStartCommand(Unknown Source)
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4062)
at android.app.ActivityThread.access$2400(ActivityThread.java:221)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1897)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7225)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
美洽消息发送失败code = 400 msg = details = {"message":"分配客服失败,请稍后重试!"},这种情况证明解决。
Glide 都4.2了请及时更新代码
切换自定义id的顾客,消息内容没错,但是头像显示错乱没有更新
04-22 12:21:34.003 E/AndroidRuntime( 5119): at com.meiqia.meiqiasdk.imageloader.MQGlideImageLoader.displayImage(MQGlideImageLoader.java:26)
04-22 12:21:34.003 E/AndroidRuntime( 5119): at com.meiqia.meiqiasdk.imageloader.MQImage.displayImage(MQImage.java:61)
04-22 12:21:34.003 E/AndroidRuntime( 5119): at com.meiqia.meiqiasdk.chatitem.MQBaseBubbleItem.fillContent(MQBaseBubbleItem.java:147)
04-22 12:21:34.003 E/AndroidRuntime( 5119): at com.meiqia.meiqiasdk.chatitem.MQBaseBubbleItem.setMessage(MQBaseBubbleItem.java:115)
04-22 12:21:34.003 E/AndroidRuntime( 5119): at com.meiqia.meiqiasdk.util.MQChatAdapter.getView(MQChatAdapter.java:144)
什么时候可以支持okhttp3.X ?
RT
这个项目没有对Android 7.0,8.0 以上做适配吗?
看了下demo,里面的Glide图片加载器Glide的有些方法在4.0不存在了
#0. Crashed: OkHttp Dispatcher
at android.database.sqlite.SQLiteConnection.nativeExecute(SQLiteConnection.java)
at android.database.sqlite.SQLiteConnection.execute(SQLiteConnection.java:555)
at android.database.sqlite.SQLiteSession.endTransactionUnchecked(SQLiteSession.java:437)
at android.database.sqlite.SQLiteSession.endTransaction(SQLiteSession.java:401)
at android.database.sqlite.SQLiteDatabase.endTransaction(SQLiteDatabase.java:522)
at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:262)
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:163)
at com.meiqia.core.cc.b(Unknown Source)
at com.meiqia.core.cc.a(Unknown Source)
at com.meiqia.core.cc.a(Unknown Source)
at com.meiqia.core.d$a.onSuccess(Unknown Source)
at com.meiqia.core.dd.a(Unknown Source)
at com.meiqia.core.dy.onResponse(Unknown Source)
at okhttp3.RealCall$AsyncCall.execute(Paramount:153)
at okhttp3.internal.NamedRunnable.run(Paramount:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
3.1.0 改成 Material Design 了,可喜可贺!
几个不足的地方:
MQTheme
继承自老的 @android:style/Theme.Light.NoTitleBar
,导致滚动条还是 2.X 的风格。建议改成 AppCompat 里的 @style/Theme.AppCompat.Light.NoActionBar
不然我的项目里会有okhttp2.x okhttp3.x两个包
java.lang.NullPointerException
Attempt to invoke virtual method 'java.lang.String com.meiqia.core.bean.MQClient.getTrackId()' on a null object reference
java.lang.NullPointerException
com.meiqia.core.MeiQiaService.a(Unknown Source)
java.lang.NullPointerException
Attempt to invoke virtual method 'java.lang.String com.meiqia.core.bean.MQClient.getEnterpriseId()' on a null object reference
com.meiqia.core.b.a(Unknown Source)
为什么自定义这么麻烦.干嘛不把 Activity 做成一个 父类,然后定义某个接口作为回调,让使用者可以干预 UI 的一些部分.
另外,能做下简单的国际化支持吗.
7.0以上的文件是打不开的,因为没有做7.0适配,美恰可以添加上
java.lang.IllegalStateException: Not allowed to start service Intent { act=ACTION_OPEN_SOCKET cmp=com.wannar.wannar_adroid2/com.meiqia.core.MeiQiaService }: app is in background uid UidRecord{b3281ca u0a225 TPSL bg:+30m51s605ms idle procs:1 seq(0,0,0)}
at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1577)
at android.app.ContextImpl.startService(ContextImpl.java:1532)
at android.content.ContextWrapper.startService(ContextWrapper.java:664)
at com.meiqia.core.bv.a(Unknown Source:12)
at com.meiqia.core.a.f(Unknown Source:9)
at com.meiqia.meiqiasdk.controller.a.d(SourceFile:282)
at com.meiqia.meiqiasdk.activity.MQConversationActivity.onStart(SourceFile:248)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1391)
at android.app.Activity.performStart(Activity.java:7165)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:2975)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:180)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:165)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:142)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1816)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6718)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
大量图片建议使用fresco
Unable to get support for multilanguage. I need language change at run time how to do this.
gradle配置3.3.1版SDK没有效果,compile 'com.meiqia:meiqiasdk:3.3.1@aar' gradle build完成后报错。用3.2.5版本是OK的。
java.lang.ClassCastException: com.meiqia.meiqiasdk.chatitem.MQClientItem cannot be cast to com.meiqia.meiqiasdk.chatitem.MQTimeItem
at com.meiqia.meiqiasdk.util.MQChatAdapter.getView(MQChatAdapter.java:156)
at android.widget.AbsListView.obtainView(AbsListView.java:2445)
at android.widget.HwAbsListView.obtainView(HwAbsListView.java:944)
at android.widget.ListView.makeAndAddView(ListView.java:2078)
at android.widget.ListView.fillUp(ListView.java:834)
at android.widget.ListView.layoutChildren(ListView.java:1811)
at android.widget.AbsListView.onLayout(AbsListView.java:2243)
at android.widget.HwAbsListView.onLayout(HwAbsListView.java:351)
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String org.json.JSONObject.optString(java.lang.String)' on a null object reference
at com.meiqia.core.ee.a(Unknown Source)
at com.meiqia.core.dy.onResponse(Unknown Source)
at okhttp3.RealCall$AsyncCall.execute(Paramount:153)
at okhttp3.internal.NamedRunnable.run(Paramount:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
#0. Crashed: OkHttp Dispatcher
at com.meiqia.core.ee.a(Unknown Source)
at com.meiqia.core.dy.onResponse(Unknown Source)
at okhttp3.RealCall$AsyncCall.execute(Paramount:153)
at okhttp3.internal.NamedRunnable.run(Paramount:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
用户给美洽留言后,留言自动进入美洽的工单列表而不是对话列表。如果在工单中回复用户,在android端调用getUnreadMessages接口,获取到的list一直是空的。
而在对话中回复离线的用户,android端通过此接口获取到的list内容是正确的。
iOS端目前还没试。
这样的话没法提示用户有新消息,达不到需求。
美洽sdk版本:3.3.6
升级到3.3.9之后也是这样。
libs 设置此项无意义,且会导致 manifests 合并冲突
07-19 12:59:45.894 W/System.err( 5996): java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference
07-19 12:59:45.895 W/System.err( 5996): at org.json.JSONTokener.nextCleanInternal(JSONTokener.java:116)
07-19 12:59:45.895 W/System.err( 5996): at org.json.JSONTokener.nextValue(JSONTokener.java:94)
07-19 12:59:45.895 W/System.err( 5996): at org.json.JSONObject.(JSONObject.java:156)
07-19 12:59:45.896 W/System.err( 5996): at org.json.JSONObject.(JSONObject.java:173)
07-19 12:59:45.896 W/System.err( 5996): at com.meiqia.core.bu.g(Unknown Source)
07-19 12:59:45.896 W/System.err( 5996): at com.meiqia.core.a.i(Unknown Source)
07-19 12:59:45.896 W/System.err( 5996): at com.meiqia.meiqiasdk.f.k.a(SourceFile)
07-19 12:59:45.896 W/System.err( 5996): at com.meiqia.meiqiasdk.f.k.(SourceFile)
Caused by:
java.lang.NullPointerException:
com.meiqia.meiqiasdk.activity.MQPhotoPreviewActivity$ImagePageAdapter.getCount(MQPhotoPreviewActivity.java:279)
android.support.v4.view.ViewPager.setAdapter(ViewPager.java:495)
com.meiqia.meiqiasdk.activity.MQPhotoPreviewActivity.processLogic(MQPhotoPreviewActivity.java:142)
com.meiqia.meiqiasdk.activity.MQPhotoPreviewActivity.onCreate(MQPhotoPreviewActivity.java:102)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.