背景:

升级 push 服务,下线个推,切换成其他三方 push 服务,出现以下 crash:

java.lang.RuntimeException: Unable to instantiate service com.**.getui.GetuiPushIntentService: java.lang.ClassNotFoundException: Didn't find class "com.**.push.getui.GetuiPushIntentService" on path: DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.**.**-L84y3CpfNvmwgLMaYeXmHQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.*.*-L84y3CpfNvmwgLMaYeXmHQ==/lib/arm, /data/app/com.*.*-L84y3CpfNvmwgLMaYeXmHQ==/base.apk!/lib/armeabi, /system/lib, /product/lib]] at android.app.ActivityThread.handleCreateService(ActivityThread.java:4136) at android.app.ActivityThread.access$2400(ActivityThread.java:273) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2055) at android.os.Handler.dispatchMessage(Handler.java:112) at android.os.Looper.loop(Looper.java:216) at android.app.ActivityThread.main(ActivityThread.java:7625) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.*.*.push.getui.GetuiPushIntentService" on path: DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.*.*-L84y3CpfNvmwgLMaYeXmHQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.*.*-L84y3CpfNvmwgLMaYeXmHQ==/lib/arm, /data/app/com.*.*-L84y3CpfNvmwgLMaYeXmHQ==/base.apk!/lib/armeabi, /system/lib, /product/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at android.app.AppComponentFactory.instantiateService(AppComponentFactory.java:103) at android.support.v4.app.CoreComponentFactory.instantiateService(CoreComponentFactory.java:68) at android.app.ActivityThread.handleCreateService(ActivityThread.java:4131) ... 8 more

原因:我们知道广播发送是有延迟的,当我们更换 push 服务时,我们很可能会有残留广播消息还没接收完成,当用户升级之后,收到延迟的广播消息之后,接收的 service 已经被干掉,就会出现已上的 crash 异常

解决方案:

过度阶段先把com.**.getui.GetuiPushIntentService 保留,哪怕是空实现也是可以的,将残留广播消息消化掉,逐步覆盖完成之后,若干版本之后可以平滑切入,干掉残留 service 即可

经验分享:RuntimeException: Unable to instantiate service com.***.push.getui.GetuiPushIntentService相关推荐

  1. HiveException java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.S

    项目场景: 启动mysql后 启动hive,执行 show databases;后出现以下问题.或者在show databases时候报错:Unable to instantiate org.apac ...

  2. FAILED: Error in metadata: java.lang.RuntimeException: Unable to instantiate org.apache.解决办法

    http://blog.csdn.net/lxpbs8851/article/details/11018933 起因是我重装了mysql数据库. 安装之后 把访问权限都配置好 : GRANT ALL ...

  3. Andorid之提示java.lang.RuntimeException: Unable to start service net.gotev.uploadservice.UploadService@

    1 问题 用android-upload-service上传一个文件提示错误如下 04-15 17:46:33.245 24932 24932 E AndroidRuntime: Process: c ...

  4. java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.gaobo.e5community/com.g

    java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.gaobo.e5community/com.g ...

  5. 安卓- apk安装出现闪退java.lang.RuntimeException: Unable to instantiate application

    Android Apk安装出现java.lang.RuntimeException: Unable to instantiate application## 08-08 14:50:12.445 29 ...

  6. Android应用闪退异常java.lang.RuntimeException: Unable to instantiate application

    1.闪退异常的出现 开发过程中测试的时候一般都是打的debug包来测试,但是昨天打的debug包突然出现一个很棘手的问题,一直没找到原因,本来项目在手机上直接部署是没问题的,但是打个debug包给测试 ...

  7. java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.vick.myapp/com.vick.mya

    项目之前运行正常,但是当引入一些三方库时,在run app时,会报如下错误:java.lang.RuntimeException: Unable to instantiate activity Com ...

  8. 在kotlin中启动activity发生java.lang.RuntimeException: Unable to instantiate activity ComponentInfo for Kot

    在kotlin中启动activity发生java.lang.RuntimeException: Unable to instantiate activity ComponentInfo for Kot ...

  9. java.lang.RuntimeException: Unable to instantiate activity ComponentInfo(不能实例化)异常解决

    java.lang.RuntimeException: Unable to instantiate activity ComponentInfo(不能实例化)异常解决 一.可能出现的原因及解决方法: ...

  10. java.lang.RuntimeException: Unable to instantiate application问题的可能处理方法

    网上搜索了好久,大部分都是说两种解决办法:1,关闭Instant Run:2,降低或者升级gradle版本. 但是我已经关闭了InstantRun,然后并不认可第二种方法,虽然这样说,但是自己也不知道 ...

最新文章

  1. MikroTik Routeros Wlan应用之-pppoe Server
  2. docker tag 删除images_深入浅出 Docker (二) —— Docker的基本概念和架构原理
  3. 【ArcGIS Pro微课1000例】0012:ArcGIS Pro属性表中文乱码完美解决办法汇总
  4. 如何启用计算机的远程服务,远程桌面服务,教您怎么打开远程桌面服务
  5. hdu 3999The order of a Tree
  6. linux查看非注释行_Linux筛除空行和注释行的技巧
  7. 2021温州市高考成绩查询,温州2021高考成绩排名榜单,温州各高中高考成绩喜报
  8. oracle用户导出和导入用不同的用户名,oracle用exp\imp导出导入,及创建表空间与用户...
  9. AcWing 841. 字符串哈希(字符串Hash)
  10. 公众号文章发送pdf文件 pdf文件如何变成导出图片
  11. c语言实现字符串转16进制,C语言实现字符串中(10进制和16进制)转成十进制数(示例代码)...
  12. 新手如何学习单片机,一套很好的51单片机教程
  13. 软考网络工程师重难点总结分享~(3)
  14. 微信公众平台的STRUTS
  15. 判断js中对象的类型
  16. Linux ifconfig命令无效的解决方法
  17. 电脑被格式化后数据还能恢复吗【图文】
  18. qq iphone for android,QQ for iPhone/Android v8.2.8 正式版发布
  19. php面向对象手册,php学习笔记之面向对象
  20. 恭敬观世音菩萨( 远离色欲)

热门文章

  1. python设置休眠时间_如何在Python中实现时间睡眠?
  2. EML-NET: An Expandable Multi-Layer NETwork for Saliency Prediction【论文笔记】
  3. 一个最全产品开发流程
  4. Unity开发教程 打造战棋手游《天地劫》
  5. 织梦模板修改{dede:list}标签后,可支持权重排序、flag标签功能
  6. 锁定Excel部分单元格不能编辑,可以这样操作
  7. 数据时代,大数据未来的发展趋势主要有哪些?
  8. Byte,Kb,Mb,Gb,Tb,Pb,Eb,Zb,Yb,Bb单位换算
  9. 计算机组成原理—第4章数值的机器运算
  10. Linux常用命令大全 阶段性总结(一)