本文介绍了运行Tango API会在库上显示警告对话框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在开发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 http://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 http://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 http://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 http://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 http://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 http://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.

根据这个,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.apache.commons: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="http://schemas.android.com/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会在库上显示警告对话框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-02 21:14