【发布时间】:2010-10-07 12:16:39
【问题描述】:
我有一个在 MarketPlace 内外提供的应用程序。
有没有办法从代码中确定应用程序的来源?
我有一些间接方法...
1) 我可以简单地推断他们是否勾选了“允许安装非市场应用程序”...
2) 或者我可以单独构建并在代码中明确说明。
【问题讨论】:
标签: android marketplace
我有一个在 MarketPlace 内外提供的应用程序。
有没有办法从代码中确定应用程序的来源?
我有一些间接方法...
1) 我可以简单地推断他们是否勾选了“允许安装非市场应用程序”...
2) 或者我可以单独构建并在代码中明确说明。
【问题讨论】:
标签: android marketplace
如果PackageManager.getInstallerPackageName() 为您的应用返回com.google.android.feedback,那么它是由Android Market 安装的。
【讨论】:
com.android.vending 针对市场安装的应用程序返回。但是,如果返回null,则可以安全地假设它不是由市场安装的。
在每个版本的android:versionName 中明确说明。
如果代码可供人们编译自己的 APK,请将 android:versionName 设置为“自定义”,并在为市场构建时临时更改它。
【讨论】:
鉴于市场应用程序在您擦除其缓存时甚至不知道应用程序的来源,我非常怀疑是否有任何其他方法可以找到。
【讨论】: