1***@qq.com
1***@qq.com
  • 发布:2026-03-10 16:08
  • 更新:2026-03-10 16:24
  • 阅读:17

uniapp 集成个推 小米手机app崩溃报错

分类:uni-app

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.uqjump.app/com.igexin.sdk.PushActivity}: java.lang.ClassNotFoundException: Didn't find class "com.igexin.sdk.PushActivity" on path: DexPathList[[zip file "/data/app/com.uqjump.app-bUUtD5cTb8GwKGI4c-I3oQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.uqjump.app-bUUtD5cTb8GwKGI4c-I3oQ==/lib/arm, /data/app/com.uqjump.app-bUUtD5cTb8GwKGI4c-I3oQ==/base.apk!/lib/armeabi-v7a, /system/lib, /system/lib/arm, /system/lib/arm/nb]]
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2884)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3122)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1819)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6754)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:506)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:863)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.igexin.sdk.PushActivity" on path: DexPathList[[zip file "/data/app/com.uqjump.app-bUUtD5cTb8GwKGI4c-I3oQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.uqjump.app-bUUtD5cTb8GwKGI4c-I3oQ==/lib/arm, /data/app/com.uqjump.app-bUUtD5cTb8GwKGI4c-I3oQ==/base.apk!/lib/armeabi-v7a, /system/lib, /system/lib/arm, /system/lib/arm/nb]]
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.instantiateActivity(AppComponentFactory.java:69)
at androidx.core.app.CoreComponentFactory.instantiateActivity(CoreComponentFactory.java:44)
at android.app.Instrumentation.newActivity(Instrumentation.java:1216)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2872)
... 11 more

2026-03-10 16:08 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

报错信息很明确:
java.lang.ClassNotFoundException: com.igexin.sdk.PushActivity
说明打包后的 apk 里没有找到个推 SDK 的 PushActivity 类,导致启动时直接崩溃。
在 uni-app 中集成个推(UniPush)时,出现这个 99% 是「SDK 没打进去」或「混淆把类剔除了」。

按下面 3 步自查即可解决:

  1. 确认 manifest 已正确填写组件
    在 HBuilderX 里打开 manifest.json → App 模块配置 → 勾选 Push(消息推送) → 选 UniPush → 填好 appIdappKeyappSecret
    保存后会自动在 app-android/distribute/android 节点下生成一段包含 PushActivity 的组件声明,形如

    {  
     "app-android": {  
       "distribute": {  
         "permissions": [  
           "<uses-permission android:name=\"android.permission.REQUEST_INSTALL_PACKAGES\"/>"  
         ],  
         "modules": {  
           "push": {  
             "appid": "xxx",  
             "appkey": "xxx",  
             "appsecret": "xxx"  
           }  
         }  
       }  
     }  
    }  

    如果之前是手动在源码视图里写的,请删掉旧写法,重新用可视化界面勾选一次即可避免格式错误。

  2. 确认打包时真的带上了 UniPush 模块
    云打包:在「App 模块权限配置」界面里,UniPush 必须处于勾选状态;
    本地离线打包:把 unipush-release.aar(或对应版本的 aar)放到 libs 目录,并在 build.gradleimplementation 进去。

  3. 关闭混淆或加 keep 规则
    如果开启了混淆(minifyEnabled true),在 proguard-rules.pro 里加:

    -keep class com.igexin.** { *; }  
    -dontwarn com.igexin.**  

    重新打包即可。

完成以上三步后再打自定义基座或正式包,com.igexin.sdk.PushActivity 会被正确打进 apk,小米手机即可正常启动。

内容为 AI 生成,仅供参考
1***@qq.com

1***@qq.com (作者) - 111

我是云打包 unipush也勾选了

1***@qq.com

1***@qq.com (作者) - 111

unipush 勾选后云打包的

1***@qq.com

1***@qq.com (作者) - 111

<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />

这个权限一定要加上吗?

1***@qq.com

1***@qq.com (作者) - 111

<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />

这个权限一定要加上吗?

要回复问题请先登录注册