Android InstallLocation

时间:2013-07-16 17:18:23

标签: android android-manifest

我想知道当我们将应用程序放入谷歌播放时哪一个是好的

  1. 拥有android:installLocation =“preferExternal”或
  2. 在位置上没有提及任何内容
  3. 在下面的语句中,什么是versionCode和versionName

    之间的区别
    android:versionCode="1"
    android:versionName="1.0" 
    

    提前致谢

4 个答案:

答案 0 :(得分:8)

如果声明“preferExternal”,则请求将应用程序安装在外部存储上,但系统不保证您的应用程序将安装在外部存储上。如果外部存储空间已满,系统会将其安装在内部存储器上。用户还可以在两个位置之间移动您的应用程序。

如果您声明“自动”,则表明您的应用程序可能已安装在外部存储上,但您没有安装位置的首选项。系统将根据几个因素决定安装应用程序的位置。用户还可以在两个位置之间移动您的应用程序。

android:installLocation="auto"
    android:versionCode="5"
    android:versionName="0.5.02"

答案 1 :(得分:4)

如Android Api指南中所述,

  

从API Level 8开始,您可以允许您的应用程序   安装在外部存储设备上(例如,设备的SD卡)。   这是您可以为您的应用程序声明的可选功能   android:installLocation清单属性。如果你没有申报   这个属性,你的应用程序将安装在内部   仅存储,无法移动到外部存储。

我认为最好宣布android:installLocation因为,

  1. 某些设备的内部存储空间有限。
  2. 用户可以选择在内部存储和外部存储之间移动应用程序。
  3. 有关这方面的更多信息,请参阅Android API Guide on App Install Location

    this会回答您关于android:versionCodeandroid:versionName

    的问题

    希望有所帮助!!!!!!!!!!

答案 2 :(得分:1)

versionCode - 表示应用程序版本的整数值   代码,相对于其他版本。 versionName - 表示版本的发布版本的字符串值   应用程序代码,应该向用户显示。

答案 3 :(得分:1)

  

我想知道当我们将应用程序放入谷歌播放时哪一个是好的

这取决于您的应用要求。

正如我正在研究这样的sleep Cycle app。我们需要一个服务整夜运行而不停止。如果您使用preferExternal将应用放在SD卡上。一旦用户卸载外部存储器,运行这些操作的过程就会终止。

在这种情况下,我必须设置android:installLocation="internalOnly"

当您将应用放入external storage时。它不会recieve system broadcast.