【问题标题】:How to test an application compiled for arm64-v8a architecture on phone with armeabi-v7a architecture?如何在具有 armeabi-v7a 架构的手机上测试为 arm64-v8a 架构编译的应用程序?
【发布时间】:2021-03-03 15:19:35
【问题描述】:

我在 Google Play 商店发布了an application。谷歌需要编译 它进入 arm64-v8a 架构。当编译成 armeabi-v7a 架构时,它可以在我的手机上运行。我的一个朋友在另一位朋友的 arm64-v8a 上成功安装并运行它 该应用程序在启动后崩溃了,因此我将其提供给更多人进行测试,另外三个报告该应用程序在启动后崩溃了。我想修复错误,但我仅限于 我的手机装有 armeabi-v7a。可以用我的设备调试吗? Here是源代码 为了完整性。

【问题讨论】:

  • PermissionError: [Errno 13] Permission denied: '/storage/emulated/0/tdg_articles' in line - 175 无需请求读取权限 - request_permissions([Permission.WRITE_EXTERNAL_STORAGE]) You还可以删除未使用的导入并将所有按钮,标签移动到kv文件``` from kivy.uix.scrollview import ScrollView from kivy.uix.label import Label from os.path import join from kivy.uix.image import Image import基维```
  • @Pikro 但我也在从外部存储读取数据。
  • 现在可以工作了,但您需要修复其中一些与您的问题无关的错误。
  • @Neizvestnyj 好的,我明白了。我从朋友那里借了一天设备。当我单击新建时,应用程序崩溃了。我现在开始连接设备,然后调试。谢谢。

标签: android kivy google-play


【解决方案1】:

我意识到错误是什么,在 android 11 及更高版本中,您需要设置一个附加参数才能查看存储 (android:requestLegacyExternalStorage="true"),请参阅我的拉取请求 https://github.com/kivy/python-for-android/pull/2431/commits/30a28d5a71fcca4c369d3f9ae85539515d413a6e。编辑 AndroidManifest.tmpl.xml 文件并重建项目。

为此,您需要转到项目文件夹/home/<USER>/<APP>/.buildozer/android/platform/python-for-android/pythonforandroid/bootstraps/sdl2/build/templates - 例如,找到AndroidManifest.tmpl.xml,然后您可以从我的拉取请求中复制代码或添加所需的参数,如我上面所说

【讨论】:

  • 谢谢。但我没有 AndroidManifest.tmpl.xml。这是一个 kivy 项目,所以我有 buildozer.spec 文件。在将项目发布到 Google 之前,我是否可以使用我的设备对其进行测试?审核时间大约是一周,所以我想发布没有错误的版本。
  • 我可以测试一下吗?当我只发布新的发布版本时,它的审核时间可能会超过赏金的持续时间。
  • 是的,一切正常,我有应用程序本身使用外部存储,通常检查应用程序需要 2 天。您可以创建一个用于内部测试的版本,因为我知道它没有通过验证,并且在几个小时后可供测试人员使用
  • 好的,我应该先buildozer android clean buildozer -v android release 就够了吗?
  • 是 1) buildozer android clean 2) buildozer android debug(查看应用程序)3 buildozer android release
猜你喜欢
  • 2020-07-20
  • 2019-11-11
  • 2016-01-23
  • 1970-01-01
  • 2021-06-05
  • 2022-12-14
  • 2019-09-09
  • 1970-01-01
相关资源
最近更新 更多