首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android8.1预览版NNAPI中的UnsatisfiedLinkError on ANeuralNetworksModel_identifyInputsAndOutputs

Android8.1预览版NNAPI中的UnsatisfiedLinkError on ANeuralNetworksModel_identifyInputsAndOutputs
EN

Stack Overflow用户
提问于 2017-10-28 08:09:38
回答 2查看 502关注 0票数 0

我写了一个NNAPI的演示。但是应用程序崩溃时出现了"java.lang.UnsatisfiedLinkError: dlopen failed:无法找到符号java.lang.UnsatisfiedLinkError“的错误。在我删除了包含ANeuralNetworksModel_identifyInputsAndOutputs(and的行之后,该应用程序不再崩溃,它保留了关于NNAPI的其他行,比如ANeuralNetworksModel_addOperation等等)。

我的minSdkVersion,compileSdkVersion,targetSdkVersion都是27岁。

是窃听器,还是我的错?你能帮帮我吗?提前谢谢。

感谢下面的优秀解决方案,我编写了一个NNAPI包装器库和演示,并在GitHub上发布了它,在电话上部署一个模型只需要四行。我希望我的项目能帮助那些对NNAPI感兴趣的开发人员。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-01 18:20:16

不幸的是,NN在NDK发布之前被请求更改,但没有及时进入OMR1Beta 1。换句话说,NDK比beta图像更最新。这将在下一个O测试版(或发行版)时自行解决。我不确定时间线是什么)启动。

同时,测试版中该函数的名称是ANeuralNetworksModel_setInputsAndOutputs。下面这样的内容应该可以工作,并且会让您知道什么时候可以删除解决方案(注意:我还没有测试这一点,因为我没有运行beta版本的设备,因此可能需要进行一些小的修改)。

代码语言:javascript
复制
// TODO: Remove when O MR1 Beta 2 is available.
__attribute__((weak))
extern "C" int ANeuralNetworksModel_setInputsAndOutputs(
  uint32_t inputCount, const uint32_t* inputs, uint32_t outputCount,
  const uint32_t* outputs);

extern "C" int ANeuralNetworksModel_identifyInputsAndOutputs(
    uint32_t inputCount, const uint32_t* inputs, uint32_t outputCount,
    const uint32_t* outputs) {
  if (ANeuralNetworksModel_setInputsAndOutputs == nullptr) {
    __android_log_print(ANDROID_LOG_ERROR,
      "ANeuralNetworkdModel_setInputsAndOutputs not found. Remove workarounds.");
    abort();
  }
  return ANeuralNetworksModel_setInputsAndOutputs(
    inputCount, inputs, outputCount, outputs);
}
票数 3
EN

Stack Overflow用户

发布于 2017-12-07 10:51:57

发生此问题是因为SDK包不正确。将SDK包更新为最新的。如果SDK管理器没有显示任何更新,那么在Android中,从File菜单中选择无效缓存并重新启动。一旦完成,Android将询问是否存在任何挂起的SDK更新。安装更新后,使用AVD管理器重新创建新的Virtual (如果您使用的是Virtual )。你的节目准备好了..。

SDK\system-images\android-27\google_apis\x86\source.properties

代码语言:javascript
复制
  Pkg.Desc=System Image x86 with Google APIs.
  ****Pkg.Revision=2****
  Pkg.Dependencies=emulator#26.1.3
  ****AndroidVersion.ApiLevel=27****
  SystemImage.Abi=x86
  SystemImage.TagId=google_apis
  SystemImage.TagDisplay=Google APIs
  SystemImage.GpuSupport=true
  Addon.VendorId=google
  Addon.VendorDisplay=Google Inc.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46987602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档