我怎么知道我的应用程序来自哪里?

时间:2012-05-30 16:33:18

标签: android google-play package-managers

我需要你的帮助。我有两个问题!

1)我怎么知道我下载的应用程序来自哪里? Google Play或其他。

我使用类似的东西获取有关已安装包的一些信息;但我没有找到方法来获得包裹的来源! http://myandroidStore.com/myNewGame.apk例如。

List<PackageInfo> packages = getActivity() .getPackageManager()
                       .getInstalledPackages(0);

for (int i=0; i<packages.size(); i++) {     
PackageInfo packageInfo = packages.get(i);
AppList tmpList = new AppList();
tmpList.applicationName = packageInfo.applicationInfo.loadLabel(getActivity()
                .getPackageManager()).toString();

tmpList.packageName = packageInfo.packageName; 
tmpList.versionName = packageInfo.versionName; 
tmpList.versionCode = packageInfo.versionCode; 

tmpList.provider = packageInfo.providers;
tmpList.firstInstallTime = packageInfo.firstInstallTime;
tmpList.lastUpdateTime = packageInfo.lastUpdateTime;
tmpList.signatures = packageInfo.signatures;
}

2)如果未选择“未知来源”,我无法在Google Play之外下载应用程序。 您是否知道Android如何检查此验证?

1 个答案:

答案 0 :(得分:0)

  

1)我怎么知道我下载的应用程序来自哪里? Google Play或其他。

AFAIK系统无法获取此信息。如果你有兴趣获得它,你必须制作单独嵌入其中的独立apk文件,这样你就可以根据运行时来自apk的唯一字符串知道。

  

2)如果未选择“未知来源”,我无法在Google Play之外下载应用程序。您是否了解Android如何检查此验证?

我假设PackageManager正在检查这个。但不确定。