在我的 Android 应用程序中,我想检查应用程序安装的来源。我查看了 Android 文档,发现以下 API 作为 PackageManager 类的一部分:
abstract String getInstallerPackageName(String packageName)
检索安装包的应用程序的包名。
然后我在onCreate
MyActivity的方法中使用了如下代码:
if(Build.VERSION.SDK_INT >= 11)
{
PackageManager myapp= this.getPackageManager();
String installer = myapp.getInstallerPackageName("com.MyPackage");
if(installer == null)
{
Toast.makeText(getApplicationContext(), MyActivity.this.getString(R.string.invalidsource), Toast.LENGTH_SHORT).show();
MyActivity.this.finish();
}
}
但看起来这个 APInull
在真实设备上返回。
如果我们有任何其他获取应用程序安装源的方法,请告诉我。