我有一个应用程序,我从私人服务器下载,它安装在大多数手机上,但我在HTC Desire C上安装它时遇到问题。手机没有SD卡存在。我一直在搜索并找到一个清单设置,该设置应该提示内部存储,或者说至少没有安装应用程序安装位置。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.carefreegroup"
android:versionCode="1"
android:versionName="1.0"
android:installLocation="auto" >
然而,这不起作用。
我如何告诉android应用程序必须安装在内部存储器上
谢谢马特
答案 0 :(得分:7)
设置android:installLocation =“internalOnly”
这将在内部存储中安装应用程序,如果内部存储器中没有空间,则不会安装它
http://developer.android.com/guide/topics/manifest/manifest-element.html
答案 1 :(得分:1)
根据docs,如果您未设置该偏好设置,该应用程序将安装在内部存储设备上,并且不会移动。
答案 2 :(得分:1)
属性 android:installLocation 可以包含以下可能的值。
internalOnly:应用程序必须仅安装在内部设备存储上。如果设置了此项,则永远不会在外部存储上安装应用程序。如果内部存储已满,则系统将不会安装该应用程序。如果您没有定义android:installLocation,这也是默认行为。
auto :应用程序可能安装在外部存储上,但默认情况下系统会将应用程序安装在内部存储上。如果内部存储已满,则系统会将其安装在外部存储上。安装后,用户可以通过系统设置将应用程序移动到内部或外部存储。
preferExternal:该应用程序更喜欢安装在外部存储设备(SD卡)上。无法保证系统会遵守此请求。如果外部介质不可用或已满,或者应用程序使用前向锁定机制(外部存储不支持),则应用程序可能安装在内部存储上。安装后,用户可以通过系统设置将应用程序移动到内部或外部存储。