本文概述
- 要求
- 实现
- 信息
但是, 对于某些应用程序, 此功能意义不大。例如, 如果你有应用程序小部件, 动态壁纸或其他类型的服务或实用程序应用程序(例如文件管理器), 则在移除SD卡后, 你的应用程序将无用。无论如何, 在这种情况下, 你正在寻找如何启用此功能, 这意味着你知道要执行的操作不是吗?
要求 我们需要修改AndroidManifest.xml文件, 但是我们不会手动进行修改。这不是一个好习惯, 因为每次构建项目时, 所做的更改都会丢失。
相反, 我们将使用cordova-custom-config插件, 该插件可让你从config.xml文件中修改AndroidManifest.xml文件而不会出现问题。要安装插件, 请在命令行中执行以下命令:
cordova plugin add cordova-custom-config# Or phonegapphonegap plugin add cordova-custom-config
在此处的官方资料库中了解有关插件的更多信息。
实现 【如何在Android的Cordova应用程序中启用移动到SD卡功能】通常, 对于每个默认的cordova应用程序, 此功能都被禁用:
文章图片
幸运的是, 要启用此功能, 你只需向AndroidManifest.xml文件添加一个属性。使用cordova-custom-config插件(该插件可让你在cordova应用程序的config.xml文件中使用自定义配置块), 你需要在config.xml文件中的< platform =” android” > 标签内添加以下行:
<
!-- Note that needs to be inside the android config -->
<
platform name="android">
<
!-- Modify the android-manifest block and add the new property android:installLocation with value auto !-->
<
preference name="android-manifest/@android:installLocation" value="http://www.srcmini.com/auto" />
<
/platform>
该值设置为” 自动” , 以便用户可以决定将应用程序安装在何处。如果此值根本不存在, 则默认行为是仅允许安装到内部存储中, 而不给用户选择。其他可能使用的值是” internalOnly” (与没有此设置的行为相同), 以及” preferExternal” (如果可用且有可用存储空间, 则将首先在SD卡上安装应用程序)。
最后尝试使用cordova run android构建你的应用程序。现在应该启用该功能, 并且你的用户我们将能够将你的应用移至SD卡。
文章图片
信息 请注意, 随着Android 6.0 Marshmallow的引入, 这些功能不再可用, 因此请不要担心如果你在Galaxy设备上进行测试, 并且该功能不起作用, 因为在这种情况下没有任何帮助。
但是, 构建目标必须至少更新为API级别8(Android 2.2), 否则你将收到类似错误的错误:软件包” android” 中找不到属性” installLocation” 的资源标识符。
在某些Android 6.0棉花糖设备(Nexus)中, 用户可以轻松移动它。玩得开心
推荐阅读
- 如何加密(保护)Android Cordova应用程序的源代码
- 如何使用Cordova生成和扫描二维码
- 如何清理我的Android模拟器中不需要的应用程序()
- 没有USB设备android studio 3.1.3
- Android模拟器没有显示画布绘图
- 无法加载android sdk实例。请检查您的互联网连接
- Wi-fi无法连接到Android Studio模拟器
- 模拟器不接受ANDROID_SDK_ROOT
- 如何防止Electron app中断macOS系统关机()