用Nash/Unity导出ADF到Tango存储卡- ADF写入权限被拒绝

本文关键字:ADF 权限 拒绝 存储卡 Tango Nash Unity 导出 | 更新日期: 2023-09-27 17:50:12

我正在使用Unity 5和Tango,并试图获得区域学习样本代码(Nash)以将ADF导出到SD卡。我得到的logcat错误是:

I/tango_client_api(  195): Tango Service: saveAreaDescriptionMetadata, internal status 0
W/tango_client_api(  195): The application 'com.projecttango.experiments.unityarealearning' has no ADF import/export permissions. Instead of calling import/export through the Tango Service API, call the import/export Android intent.
I/tango_client_api(  195): Tango Service: exportAreaDescription, internal status -6
E/tango   (  195): TangoServer.cc:309 Export Area Description has no permission.
E/tango_client_api( 9873): TangoErrorType TangoService_exportAreaDescription(const char*, const char*): Internal Error: Could not export the ADF: 95f406fa-f24f-41bc-9355-5abd0db68c14 into folder: /sdcard/defaultArea.
I/Unity   ( 9873): PoseProvider.ExportAreaDescription() Could not export area description: 95f406fa-f24f-41bc-9355-5abd0db68c14
I/Unity   ( 9873):  
I/Unity   ( 9873): (Filename: ./artifacts/generated/common/runtime/UnityEngineDebug.gen.cpp Line: 56)
I/Unity   ( 9873): 

似乎我必须复制这个基于意图的导出和导入权限,而不仅仅是ADF加载和保存(参见:https://developers.google.com/project-tango/apis/java/java-user-permissions)

但是在c# Unity中,我不知道如何。

用Nash/Unity导出ADF到Tango存储卡- ADF写入权限被拒绝

我不太确定,因为我使用的是C而不是Unity。会不会是你没有在Android Manifest中设置权限?您可能需要为应用程序设置写入权限。

在构建设置>播放器设置>其他设置中,确保写入访问设置为"外部(SD卡)"

阅读本文:

https://github.com/chucknology/TangoSDfix/blob/master/README.md

abcdefghijklmnopqrstuvwxyz

我也遇到了同样的问题。解决方案是创建一个Android库并调用RequestImportExportActivity。像这样。

你可以在这里看到怎么做