Android:Branch SDK 生产版本中的崩溃问题

Android : Branch SDK Crash Issue in production build

我在我的应用程序中使用 Branch SDK(最新版本 Android Branch SDK (v4.3.2)) 自上次更新以来,我在生产版本中遇到 class not found 问题。但在开发中它没有任何问题。这是来自 firebase 的崩溃日志。

Fatal Exception: java.lang.RuntimeException
Unable to instantiate receiver io.branch.referral.InstallListener: java.lang.ClassNotFoundException: Didn't find class "io.branch.referral.InstallListener" on path: DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/gman.vedicastro-dnsDZX6uCyAilVBlCp8zjQ==/base.apk"],nativeLibraryDirectories=[/data/app/gman.vedicastro-dnsDZX6uCyAilVBlCp8zjQ==/lib/arm64, /system/lib64]]

Caused by java.lang.ClassNotFoundException
Didn't find class "io.branch.referral.InstallListener" on path: DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/gman.vedicastro-dnsDZX6uCyAilVBlCp8zjQ==/base.apk"],nativeLibraryDirectories=[/data/app/gman.vedicastro-dnsDZX6uCyAilVBlCp8zjQ==/lib/arm64, /system/lib64]]

根据分支的文档,我已从 Android 清单文件

中删除此代码
<receiver android:name="io.branch.referral.InstallListener" android:exported="true">
   <intent-filter>
   <action android:name="com.android.vending.INSTALL_REFERRER" />
   </intent-filter>
</receiver>

知道为什么会出现这个问题吗?

请帮我解决这个问题。谢谢

这可能是缓存问题,尤其是在涉及 multidex 构建时。我执行了以下步骤并解决了问题 -

  1. 在 Android Studio 上禁用即时 运行。
  2. 运行 以下命令 ./gradlew clean && ./gradlew cleanbuildcache(注意 Windows 上的语法略有不同)。
  3. 最后通过文件重新启动 Android Studio -> 使缓存无效/重新启动 ...

此外,请仔细检查最新的 Android SDK (v4.3.2) 文档并确认您已在所有文件中添加了所有必要的 command/code。这是最新文档的 link - https://docs.branch.io/apps/android/

我希望这对某人有所帮助。

快乐编码:)

感谢您通知我们。

我们的文档目前已全部更新。在每个文档页面的底部,我们会通知文档的最后更新日期。