我正在创建一个 Android 应用程序,如果用户将信用卡信息存储在他们的设备中,它将为用户提供订阅选项。如果他不这样做,我正在考虑为用户提供不同的方法来使用该应用程序。
有谁知道是否有办法检查用户的信用卡信息是否存储在他们的设备中?
为了澄清我在寻找什么:
Android 设备允许用户存储信用卡信息,这样他们就不必为每次购买重新输入信息。我说的是识别用户存储了该数据。我不是在谈论自己为用户存储这些信息或试图获取它。我所需要的只是一个布尔方法,它会告诉我用户是否存储了数据或类似的东西。
我正在创建一个 Android 应用程序,如果用户将信用卡信息存储在他们的设备中,它将为用户提供订阅选项。如果他不这样做,我正在考虑为用户提供不同的方法来使用该应用程序。
有谁知道是否有办法检查用户的信用卡信息是否存储在他们的设备中?
为了澄清我在寻找什么:
Android 设备允许用户存储信用卡信息,这样他们就不必为每次购买重新输入信息。我说的是识别用户存储了该数据。我不是在谈论自己为用户存储这些信息或试图获取它。我所需要的只是一个布尔方法,它会告诉我用户是否存储了数据或类似的东西。
信用卡信息并没有真正存储在“设备上”。对于连接到 Play 商店的设备,将存储 Google 帐户凭据并通过 Google 电子钱包进行付款。我对其他类型的设备没有太多经验,但我想它们都以类似的方式工作,例如 Kindle Fire 将保留亚马逊帐户凭据等。
如果您希望创建一个提供应用内购买的应用程序并将在 Play 商店中提供,您可以单击此处了解 Google 的应用内结算 API,该 API 允许您的用户使用他们的 Google 电子钱包进行付款。 对于 Kindle 设备,亚马逊也有类似的 API。
如果任意应用程序可以访问设备所有者的信用卡信息,这将是一个相当大的安全问题。如果您正在编写一个打算在信誉良好的应用商店之外分发的应用,因此没有内置的应用内购买 API,那么您将不得不使用自己的支付机制。如果是这种情况,我不建议您创建自己的。我相信 PayPal 有一个 Android API,并且通过快速的谷歌搜索找到了一些其他不太知名的品牌提供这项服务,但如果你打算使用 Play 商店或亚马逊的应用商店,通常使用 3rd 方支付 API违反他们的服务条款。
编辑:AccountManager类允许您查看有关设备上帐户的信息,但是,我不相信您可以使用它来发现用户是否通过 Google 电子钱包设置了付款方式。 我发现这个 SO question 详细介绍了 AccountManager 的用途。 如果这是一个 Play Store 应用程序,我会研究 Google In-App Billing API,它可能是您尝试做的最佳选择。