![](/img/trans.png)
[英]how can i know what data is being sent or received from all the apps installed on my android device?
[英]How to know about the apps installed on the android device
我正在开发一个基于Web的移动应用程序,在该应用程序中,用户可以选择不同的应用程序,并且在单击安装后,它将打开该应用程序的Google-play-store链接。 用户现在可以从Play商店安装应用程序。 但是,播放室将作为一个单独的窗口打开。
这样,如果用户选择要安装的多个应用程序,则会打开几个Playstore窗口。
我希望一旦安装完成,就可以依次打开Playstore窗口,但是,从移动浏览器(因为它不是apk并使用HTML / Java脚本),很难知道是否在Windows XP上安装了一个应用程序设备(由于安全原因)。 我已经阅读了有关Google购买状态API的信息 。 但这需要几个字段,例如package-id,product-id,purchase Tokens,才能获取应用程序的购买状态。
有人可以帮我解决上面提到的情况吗? 我可以使用Google购买或Google电子钱包API解决我的问题吗? 如果有人可以为此提出任何其他解决方案,那将是很好的。
提前致谢。
不可以,无法从HTML知道运行Web应用程序的设备上已经安装了哪些APK。
Google购买API适用于应用内购买-它们也不会告诉您用户购买了哪些应用(而且购买的应用无论如何都不等于安装的应用)。
正如Booger的回答所提到的,如果您不使用HTML编写代码,而是编写可安装的应用程序,则可以了解其他已安装的应用程序(并且不需要特定的权限)。
要了解当前设备上已安装了哪些应用程序,可以使用PackageManager
查询设备并获取此信息。
您可以注册一个广播,当设备上安装了应用程序时,系统会通知该广播。
要注册此广播,请在清单中输入以下内容:
<receiver
android:name="com.yourpackage.service.InstallReceiver"
android:exported="false" >
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED" />
<data android:scheme="package" />
</intent-filter>
</receiver>
然后,您将创建一个名为InstallReceiver的类,并在其中包含以下内容:
public class InstallReceiver extends BroadcastReceiver {
@Override
public void onReceive(final Context context, final Intent intent) {
final String packageLink = intent.getData().toString();
EasyTracker.getInstance().setContext(context);
final Tracker trackerV2 = EasyTracker.getTracker();
trackerV2.trackEvent("app_action", "installed", packageLink, null);
}
....
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.