如何以编程方式从设备上安装的应用过滤游戏应用

时间:2014-03-26 11:44:54

标签: android

我想从我设备中已安装的应用中过滤游戏应用。我的问题是:

是否可以从所有已安装的应用中过滤游戏应用程序?如果答案是肯定的,请提供一些方法或教程。

提前致谢。

4 个答案:

答案 0 :(得分:1)

不,不是。没有可靠的元数据可以将应用程序标识为游戏。

答案 1 :(得分:0)

您是在尝试过滤还是过滤游戏?

没有办法肯定地确定应用程序是否是从Play商店中的某个游戏类别下载的(没有做一些服务器数据库查找),但是你可以找到一些线索。可以将其识别为游戏的应用程序:

1)检查是否存在相应的元数据,以检查Google Play游戏服务的使用情况:

<meta-data android:name="com.google.android.gms.games.APP_ID"
    android:value="@string/app_id" />
<meta-data android:name="com.google.android.gms.version"
   android:value="@integer/google_play_services_version"/>

您可以使用PackageManager.getApplicationInfo(packageName, GET_META_DATA)

来掌握此功能

2)查看该应用是否正在使用游戏引擎,通过检查其apk文件中包含的文件,查找以下内容:

  • Unity引擎
  • Adob​​e AIR运行时

答案 2 :(得分:0)

没有特定的方法可以做到这一点,因为对于android系统,所有应用程序都与自己的资源集和java类相似。 有几种不同大小的游戏,从几KB到几大MB。此外,还有各种大小的实用程序应用程序。 因此,实际上不可能确定游戏中没有任何特定的关键字。 所以你无论如何也无法做到这一点。

答案 3 :(得分:0)

有一种方法可以通过编程从您自己的应用程序中找到已安装应用程序的类别, 这样,您命中具有两个必需参数的API,一个是程序包名称,第二个是访问令牌密钥,使您可以在https://data.42matters.com/launchpad登录,然后再命中Api Api的文档为https://data.42matters.com/docs/app-market-data/android/apps/lookup 希望你找到解决方案 谢谢