【发布时间】:2017-11-15 08:46:14
【问题描述】:
有没有办法直接从 python 或 pyjnius 获取 android 版本(4 或 5 或 6 或 7)?
如果有,谁能举个例子?
我尝试了kivy.platform,但它只告诉我它是否是 android 并且使用 python 中的platform.release 给了我 linux 版本
【问题讨论】:
标签: android python kivy pyjnius
有没有办法直接从 python 或 pyjnius 获取 android 版本(4 或 5 或 6 或 7)?
如果有,谁能举个例子?
我尝试了kivy.platform,但它只告诉我它是否是 android 并且使用 python 中的platform.release 给了我 linux 版本
【问题讨论】:
标签: android python kivy pyjnius
您可以使用 pyjnius 通过 Java API 检索版本,例如描述。 here.
【讨论】:
您可以使用我来自here 的模块(在页面上单击下载> 仅文件)并将下载的文件放入您的kivy 项目的文件夹中。添加到您的 .py 文件中:
import PyAndroid
现在你可以使用了:
print(PyAndroid.android_version())
打印android版本或
print(PyAndroid.android_name())
打印安卓名称
对于所有功能,您可以阅读documentation。
希望对我有所帮助:D
【讨论】:
我也有同样的问题。我想知道版本以决定是否引用 SDK 23 之前的版本中不存在的特定类。
然后我意识到有更好的方法。
try:
AudioFocusRequest = autoclass('android.media.AudioFocusRequest')
except jnius.JavaException:
# Not available on earlier versions of Android.
AudioFocusRequest = None
现在,我不需要知道实际的版本是什么,也不会有任何错误导致阈值错误。我只是在使用前检查 AutoFocusRequest 是否存在。
【讨论】: