如何知道一个应用程序是从谷歌播放或侧装?
我需要检测我的应用程序是从谷歌播放或其他市场安装,我怎么能得到这些信息?
PackageManager
类提供getInstallerPackageName方法,该方法将告诉你指定的软件包的安装包名称。 侧装应用程序不会包含值。
编辑 :注意@mttmllns关于亚马逊app store的答案如下 。
FYI 显然最新版本的亚马逊商店最终将PackageManager.getInstallerPackageName()
为"com.amazon.venezia"
,以便与Google Play的"com.android.vending"
进行对比。
我使用这个代码来检查,如果一个构build是从商店下载或sideloaded:
public static boolean isStoreVersion(Context context) { boolean result = false; try { String installer = context.getPackageManager() .getInstallerPackageName(context.getPackageName()); result = !TextUtils.isEmpty(installer); } catch (Throwable e) { } return result; }
- 如何使用ViewPager将Google Maps V2放在片段上
- 简单的方法来做dynamic,但方形布局
- Google Play商店为什么说我的Android应用与我的设备不兼容?
- 升级到棒棒糖后无法testing应用程序
- Android Studio中的XML属性顺序
- SimpleDateFormat(string模板,语言环境语言环境),例如用于ASCIIdate的Locale.US
- 执行失败的任务:在Android Studio中的应用程序:compileDebugJavaWithJavac
- 在Fedora 21上安装Android Studio时如何解决“无法运行mksdcard SDK工具”?
- 如何在Android中将文件写入外部公共存储,以便从Windows中可见?