anysdk打包以后app微信登录闪退

游戏用anysdk打包,接入了微信登录,但是在某些手机,比如美图,乐视,vivo之类的某些版本会进入授权登录页面授权以后闪退,查看android的日志发现有如下日志:
04-20 11:50:17.649 22952 22952 E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{cn.isir.fls/cn.isir.fls.wxapi.WXEntryActivity}: java.lang.NullPointerException: println needs a message
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2650)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2720)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.app.ActivityThread.-wrap12(ActivityThread.java)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1567)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:111)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.os.Looper.loop(Looper.java:207)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:5917)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:888)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:749)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: Caused by: java.lang.NullPointerException: println needs a message
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.util.Log.println_native(Native Method)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.util.Log.d(Log.java:139)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at cn.isir.fls.wxapi.WXEntryActivity.onCreate(WXEntryActivity.java:34)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.app.Activity.performCreate(Activity.java:6292)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1113)
04-20 11:50:17.649 22952 22952 E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2603)

从日志来看是某个log.d传入了一个null值
用jd-gui反编译WXEntryActivity类,发现如下:


因为我们的app没有接入微信支付,所以应该是不会有微信支付的appid的,所以这个问题不知道如何解决,现上论坛求教各位大牛,当然anysdk的官方工作人员能帮忙看看是更好了:6:

登陆和支付的appid都一样的,按理说初始化就会设置这个值,不会为空的。
我还真不知道啥情况会出现这异常,不是必现的吧,代码看着也看不出啥毛病来。

在有些机型的有些版本是必现的,比如乐视,美图有些,再比如下图的这款

请问一下您知道appid是如何具体传入进去的么?是不是有些手机初始化的顺序有区别,在onCreat方法调用的时候还没有传入appid, 能否有办法自己修改这个流程避免此问题??

WXEntryActivity的onCreate登陆的时候才会调用吧,WxpayWrapper在loadAllPlugins的时候就会初始化了。appid为空除非WxpayWrapper对象被销毁了,getInstance的时候又重新new了,我是想不出为何会出现这情况。

我也不知道为啥会出现这种情况:6:按理来说这种单例对象的生命周期一般都挺长的

但是我在日志里面没有地方能看到loadAllPlugins中打印出读取到了appid的日志,这个地方是不是日志没有加:3:都不好判断是不是您说的那种情况。

但是我在日志里面没有地方能看到loadAllPlugins中打印出读取到了appid的日志,这个地方是不是日志没有加:3:都不好判断是不是您说的那种情况。

https://coding.net/u/AnySDK/p/wxpay/git
插件代码长这样,有兴趣你也可以通过自助开发功能自己修改插件代码。
代码我看了半天也不知道为啥会出现这情况

谢谢,我看看

我也碰到同样的问题了
unity(android)+微信登陆后闪退,也是这个异常

微信插件我只打开了登陆和分享,支付没有选择

和楼主一样,也是部分设备出问题

中兴手机,打开分享给好友,停留1分钟,返回时,也报这个错误。