我正在开发Tango的AR应用程序。 该设备是ZenfoneAR(Android 7.0 Nougat)。
I am developing AR application by Tango. The device is ZenfoneAR (Android 7.0 Nougat).
我改进了示例项目并开发了一个应用程序。 但是,启动应用程序时,将显示以下警告消息。
I improved the sample project and developed an application. However, when launching the application, the following warning message will be displayed.
对话消息
Detected problems with app native libraries(please consult log for detail): libtango_client_api.so: unauthorized access to "libbinder.so" libtango_client_api.so: unauthorized access to "libcutils.so" libtango_client_api.so: unauthorized access to "libutils.so" libtango_client_api.so: unauthorized access to "libgui.so" libtango_client_api.so: unauthorized access to "libandroid_runtime.so" libtango_client_api.so: unauthorized access to "libui.so"logcat
W/linker: library "libbinder.so" ("/system/lib64/libbinder.so") needed or dlopened by "/data/data/com.google.tango/libfiles/default/libtango_client_api.so" is not accessible for the namespace "classloader-namespace" - the access is temporarily granted as a workaround for b/26394120, note that the access will be removed in future releases of Android. W/linker: library "libcutils.so" ("/system/lib64/libcutils.so") needed or dlopened by "/data/data/com.google.tango/libfiles/default/libtango_client_api.so" is not accessible for the namespace "classloader-namespace" - the access is temporarily granted as a workaround for b/26394120, note that the access will be removed in future releases of Android. W/linker: library "libutils.so" ("/system/lib64/libutils.so") needed or dlopened by "/data/data/com.google.tango/libfiles/default/libtango_client_api.so" is not accessible for the namespace "classloader-namespace" - the access is temporarily granted as a workaround for b/26394120, note that the access will be removed in future releases of Android. W/linker: library "libgui.so" ("/system/lib64/libgui.so") needed or dlopened by "/data/data/com.google.tango/libfiles/default/libtango_client_api.so" is not accessible for the namespace "classloader-namespace" - the access is temporarily granted as a workaround for b/26394120, note that the access will be removed in future releases of Android. W/linker: library "libandroid_runtime.so" ("/system/lib64/libandroid_runtime.so") needed or dlopened by "/data/data/com.google.tango/libfiles/default/libtango_client_api.so" is not accessible for the namespace "classloader-namespace" - the access is temporarily granted as a workaround for b/26394120, note that the access will be removed in future releases of Android. W/linker: library "libui.so" ("/system/lib64/libui.so") needed or dlopened by "/data/data/com.google.tango/libfiles/default/libtango_client_api.so" is not accessible for the namespace "classloader-namespace" - the access is temporarily granted as a workaround for b/26394120, note that the access will be removed in future releases of Android. E/linker: library "libavenhancements.so" ("/system/vendor/lib64/libavenhancements.so") needed or dlopened by "/system/lib64/libmedia.so" is not accessible for the namespace: [name="classloader-namespace", ld_library_paths="", default_library_paths="/data/app/<package name>-2/lib/arm64:/system/fake-libs64:/data/app/<package name>-2/base.apk!/lib/arm64-v8a", permitted_paths="/data:/mnt/expand:/data/data/<package name>"]我认为它与以下网站的NDK应用程序链接到平台库有关。
I think that it is related to "NDK Apps Linking to Platform Libraries" of the following site.
developer.android/about /versions/nougat/android-7.0-changes.html#ndk
根据这个,libtango_client_api.so是私人平台库?
According to this, "libtango_client_api.so" is "private platform library"?
或者我的配置文件中有错误吗?
Or is there a mistake in my configuration file?
我不知道如何修复它,所以我可以改善它。我怎样才能提高警告?请帮帮我。
I do not know how to fix it, so I can not improve it. How can I improve my warning? please help me.
app / build.gradle
android { compileSdkVersion 23 buildToolsVersion '25.0.0' dataBinding { enabled = true } defaultConfig { applicationId "<package name>" minSdkVersion 19 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } lintOptions { abortOnError false } } } dependencies { apply from: '../version.gradle' compile "com.google.tango:sdk-base:${release_version}" compile "com.google.tango:support-base:${release_version}" compile "com.google.tango:support-reconstruction:${release_version}" compile 'org.rajawali3d:rajawali:1.1.668@aar' compile 'com.android.support:appcompat-v7:23.4.0' compile 'commons-io:commons-io:2.4' compile 'org.apachemons:commons-lang3:3.4' }$ { release_version} = 1.54
${release_version} = 1.54
Project / build.gradle
buildscript { repositories { jcenter() flatDir { dirs 'libs' } } dependencies { classpath 'com.android.tools.build:gradle:2.3.3' } } allprojects { repositories { mavenLocal() jcenter() } }app / src / main / AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="schemas.android/apk/res/android" package="<package name>" android:versionCode="0" android:versionName="0" > <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="23" /> <uses-permission android:name="android.permission.CAMERA" /> <application ...about application...> <uses-library android:name="com.projecttango.libtango_device2" android:required="true" /> <activity ...about activity...> ... </activity> </application> </manifest>顺便说一下,配置文件与Tango示例项目几乎相同。
By the way, the configuration file is almost same as the Tango sample project.
推荐答案不知道原因,但此错误仅在调试模式下发生,而不是在发布模式下。 因此,解决方法在发布模式下运行您的应用程序。
Don't know why, but this error occurs only in debug mode not in release mode. So as a workaround run your application in release mode.
更多推荐
运行Tango API会在库上显示警告对话框
发布评论