android - 为什么有些应用无法移动到sd卡?

标签 android android-sdcard sd-card

我知道开发人员通过 list 中的 android:installLocation” 属性 选择允许。我的问题是:允许或不允许这样做的原因是什么?


我经常看到许多应用程序不属于下一个列表的任何类别。他们不允许移动到 SD 卡,他们为什么要这样做?这会带来什么类型的优势/好处。

  • Services
  • Alarm Services
  • Input Method Engines
  • Live Wallpapers
  • App Widgets
  • Account Managers
  • Sync Adapters
  • Device Administrators
  • Broadcast Receivers listening for "boot completed"

最佳答案

根据 the documentation ,在以下情况下,您不应允许您的应用安装在外部存储设备上:

  • Services
  • Alarm Services
  • Input Method Engines
  • Live Wallpapers
  • App Widgets
  • Account Managers
  • Sync Adapters
  • Device Administrators
  • Broadcast Receivers listening for "boot completed"

文档接着说:

By default, the system will not allow your application to install on the external storage, so you don't need to worry about your existing applications.

这意味着默认情况下不允许在外部存储上安装。这可能意味着大部分无法安装在外部存储上的应用只是开发人员根本不知道 installLocation 并使用默认行为的情况。

您需要单独分析每个应用程序,以查看开发人员是否专门设置了 installLocation="internalOnly",或者他们是否只是简单地忽略了它以确定它是有意还是不是。

关于android - 为什么有些应用无法移动到sd卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42476232/

相关文章:

android - 您如何设置 Android Studio 以对新项目使用项目 View ?

javascript - 将 JSON 转换为放入 Sdcard 的 CSV 文件

android - 无法推送项目。在安卓中

java - 如何在 android 中找到内部(默认手机存储)和外部存储(可移动 sd 卡)?

embedded - 以 44 kHz 的速率将 16 位数据记录到 SD 卡

java - 使布局适应 hdpi 和 xhdpi

java - 如何同步 Play Services 实时多人游戏

java - Android - 从 Activity 到广播接收器获取偏好

Android-以编程方式删除SD卡

android - Android 模拟器中不支持的虚拟 SD 卡