java - 使用在 AndroidManifest 文件中仅适用于特定设备
问题描述
我有 Android 应用程序,它可以在带有扫描仪的不同设备上运行。对于一个设备型号,我需要使用他们的 SDK,这需要将下一个代码添加到 AndroidManifest 文件中。
<uses-library
android:name="com.datalogic.device"
android:required="true" />
问题在于,如果我尝试在另一个设备型号上运行此应用程序,程序将无法编译。得到下一个 错误。当我从清单文件中删除上面包含的代码时,一切正常。那么这是否可以用 Java 代码或 AndroidManifest 文件编写,检查设备名称并决定是否使用 uses-library 代码?
解决方案
您可以通过获取字符串值来检查设备型号android.os.Build.MODEL;
,您将获得型号(例如:用于 Galaxy S6 Edge Plus 的 SM-G928F)然后决定如何使用库,但您不能在运行时更改清单
推荐阅读
- mysql - MySQL中按日期排除的项目
- javascript - 如何在 React 中动态调整 Bootstrap Overlay/Popover 的位置?
- laravel - 如何使 php SDK 的更改与 Laravel 中的 Git 一起使用
- kotlin - java.lang.SecurityException:没有写入/storage/emulated/0/Download/的权限
- reactjs - 用相同的组件拍摄照片和视频反应原生
- sql - 如何制作我的 WHERE 语句来过滤基于当前月份的 5 个月动态范围的第一天?
- python - pythonanywhere上的静态文件加载问题
- pandas - 如何使用图例中分配的颜色显示值范围?
- networking - 域“.localdomain”的意义是什么?
- sql - 查询中的对象变量