猿问

Gomobile库使用隐藏的API方法

我有一个Android应用程序,它使用通过Gomobile创建的Golang库 ( .aar ) 。每当应用程序尝试从库中创建类的实例或调用库方法时,它都会崩溃并显示下一条日志消息:


W/om.example.cal: Accessing hidden method Landroid/app/AppGlobals;->getInitialApplication()Landroid/app/Application; (greylist, reflection, allowed)

A/libc: Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 11110 (om.example.calc), pid 11075 (om.example.calc)

Application terminated.

getInitialApplication方法位于谷歌的浅灰名单(第349行)。我知道在 SDK 版本 28 及更高版本上无法访问任何隐藏方法,这就是为什么我写了下一个(26 是Play Marketbuild.gradle的最低版本):


compileSdkVersion 26

minSdkVersion 15

targetSdkVersion 26

implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])

implementation 'com.android.support:appcompat-v7:26.1.0'

但这没有帮助。如何让它发挥作用?备注:测试设备是在Ubuntu 18.04上模拟的Nexus S。


慕雪6442864
浏览 111回答 1
1回答

慕的地6264312

问题是我在模拟器上调试了我的应用程序。显然,它与本机库不兼容。手机调试没问题。
随时随地看视频慕课网APP

相关分类

Go
我要回答