也许我错过了一些非常明显的东西:
我想测试PackageManager.getInstallerPackageName()
。当我通过eclipse测试我的应用程序时,甚至作为一个独立的apk,上述方法如预期的那样返回null
。但对于通过Google Play或Amazon AppStore安装的用户,返回值将不会是null
。
我的问题是,在把我的应用程序投入生产之前,我如何测试这一点?
(。这样的事情是可能的:在Android开发者控制台上传草稿,而不将其移动到生产中,以某种方式通过Google Play访问它,也许是通过使用与我的开发者控制台帐户设置相同的设备;然后在我的测试设备上安装和测试它?)
更新答:
如果你想要的是能够从google play测试实际安装,那么使用他们的Alpha和Beta程序。请参阅此处查看程序的描述。
原始答:
如果你想要的只是测试你对这种情况的处理,那么你可以使用BuildConfig。DEBUG标志,当你处于DEBUG模式时,给你一个虚拟值。
String installer;
if (BuildConfig.DEBUG) {
installer = "com.android.vending";
} else {
installer = pm.getInstallerPackageNamge(myPackage);
}