我的代码逻辑需要在设备中安装 SD 卡。我在应用程序的初始屏幕中添加了针对这种情况的检查,但想在用户下载/安装此应用程序之前通知他们。有没有办法做到这一点?
谢谢 !
在应用程序安装之前无法做到这一点,因为限制此类事情的唯一方法是使用<uses-feature>
标签。但是,该标签没有存储要求的选项。您可以给出的最佳警告是将其突出显示在您的应用说明中。
另一方面,我听说过的每个设备都有某种形式的外部存储,无论是 SD 卡还是作为外部存储安装的内置内存。您通过使用启动画面来检查外部存储是执行此操作的最佳方式,因为没有其他选择。
没有办法做到这一点。必须安装您的应用程序才能检查用户的环境。您可以尝试强制安装您的应用程序的 SD 卡,因此如果没有,Google Play可能(未经测试)根本不允许安装应用程序,但它不会解决您的问题,因为用户仍然不知道为什么。解决方案是在产品说明中明确说明 SD 卡是强制性的。但请注意,需要 SD 卡是有风险的,因为许多设备在仍然提供外部存储的同时没有任何设备。我的建议 - 只需添加有关存储要求的注释并让系统处理它。
我认为这是不可能的。您正在启动屏幕上检查 sdcard 并阻止用户进行下一个进程是正确的解决方案或android:installLocation
用于在 sdcard 上安装 android 应用程序。
从 API 级别 8 开始,您可以允许将应用程序安装在外部存储(例如,设备的 SD 卡)上。这是一个可选功能,您可以使用 android:installLocation 清单属性为您的应用程序声明。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:installLocation="preferExternal"
... >
如果您声明“preferExternal”,您要求将您的应用程序安装在外部存储上,但系统不保证您的应用程序将安装在外部存储上。如果外部存储已满,系统会将其安装到内部存储上。用户还可以在两个位置之间移动您的应用程序。
当您的应用程序安装在外部存储上时: