简体   繁体   English

Android Pay - 如何检测是否安装了 Android Pay?

[英]Android Pay - How to detect if Android Pay is installed?

There is this code (taken from https://stackoverflow.com/a/5016624/1369016 ):有这个代码(取自https://stackoverflow.com/a/5016624/1369016 ):

private boolean isAppInstalled(String packageName) {
   PackageManager pm = getPackageManager();
   boolean installed = false;
   try {
      pm.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES);
      installed = true;

   } catch (PackageManager.NameNotFoundException e) {
      installed = false;
   }
   return installed;
}

But I don't know what to put in the packageName.但我不知道在 packageName 中放什么。 I tried com.google.android.gms.wallet (which is the package of some Wallet fragments used by Android Pay) but the above method returns false.我尝试了com.google.android.gms.wallet (这是 Android Pay 使用的一些 Wallet 片段的包),但上述方法返回 false。

It turns out the package name required is " com.google.android.apps.walletnfcrel ".结果证明所需的包名称是“ com.google.android.apps.walletnfcrel ”。 With that you can call the method in the question to detect if Android Pay is installed.这样您就可以调用问题中的方法来检测是否安装了 Android Pay。

on Kotlin:在科特林上:

private fun isAppInstalled(packageName: String): Boolean {
    return try {
        activity?.packageManager?.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES)
        true
    } catch (e: PackageManager.NameNotFoundException) {
        false
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM