java.lang.NoSuchMethodError: No virtual method launchUrl(Landroid/app/Activity;Landroid/net/Uri;)V in class Landroid/support/customtabs/CustomTabsIntent

在一切正常之前,但今天我可以看到上述错误。
为什么会发生?如果更改了某些内容,为什么不向后兼容?

最佳答案

不知道它是否对您有帮助,但在我的情况下(我的应用程序中有custom tabs enabled的应用程序中有Facebook SDK),当用户(未安装Facebook应用程序)尝试登录时,发生了此错误。

Exception java.lang.NoSuchMethodError: No virtual method launchUrl(Landroid/app/Activity;Landroid/net/Uri;)V in class Landroid/support/customtabs/CustomTabsIntent; or its super classes
com.facebook.internal.CustomTab.openCustomTab (CustomTab.java:48)

更新依赖关系以使用最新的SDK版本(它们已在4.17.0版中切换到customtabs:25.0.0)
compile 'com.facebook.android:facebook-android-sdk:4.17.0'

解决了问题。

我还在我的应用程序中使用了“自定义标签”(v25.0.0),并且它们没有任何问题。如果不是您的情况,请you can check what they've changed

09-26 22:57