2013-08-20 68 views
2

我正在创建一个Android应用程序,如果用户将他的信用卡信息存储在其设备中,该应用程序将为用户提供订阅选项。如果他不这样做,我正在考虑为用户提供不同的方法来使用应用程序。检查用户是否有存储在设备中的信用卡信息

有谁知道是否有方法检查用户的信用卡信息是否存储在他们的设备中?

为了澄清什么,我在寻找:

Android设备允许用户存储信用卡信息,使他们不必重新输入每购买信息。我谈论的是确定用户是否存储了这些数据。我不是在谈论为用户自己存储这些信息还是试图获取它。我需要的是一个布尔方法,它会告诉我用户是否存储了数据或类似的东西。

+4

这个问题就像是'SCARY',因为它可能是 –

+0

你是什么意思“存储在设备中的信用卡信息”? “在设备中”在哪里?附:而我甚至没有谈论安全问题。 –

+1

有这个东西叫隐私...... – Dennisch

回答

0

信用卡信息并未真正存储在“设备上”。对于连接到Play商店的设备,系统会存储Google帐户凭据,并通过Google电子钱包进行付款。我没有很多其他类型的设备的经验,但我想他们都以类似的方式工作,例如Kindle Fire将保持亚马逊帐户凭证等。

如果您正在寻找提供应用内购买,并将于Play商店,you can click here to read about Google's In-App Billing API that allows your users to use their Google Wallet to make payments.针对Kindle设备的应用,Amazon has a similar API.

这将是一个非常重大的安全问题,如果任意的应用曾获得设备所有者的信用卡信息。如果您正在编写一个应用程序,并且您打算在信誉良好的应用程序商店之外发布应用程序,并且因此没有内置的应用程序内购买API,那么您将不得不使用自己的付款机制。如果是这种情况,我不会推荐创建自己的。我相信PayPal有一个Android API,Google的一个快速搜索提出了一些其他不太知名的品牌提供这项服务,但如果你打算使用Play商店或亚马逊的应用商店,通常使用第三方支付API违反他们的服务条款。

编辑:AccountManager类允许您查看设备上的帐户信息,但是,我不认为您可以使用它来发现用户是否有通过Google电子钱包设置的付款方式。 I found this SO question that goes into detail about what the AccountManager can be used for.如果这是一个Play商店应用,我会查看Google In-App Billing API,这可能是您尝试执行的最佳选择。

+0

谢谢您的信息。我已经在Play商店中有一个应用程序,为用户提供订阅选项。在这种情况下,一个更好的问题是:有没有办法检查用户是否将他的Google帐户凭据存储在设备中? –

+0

@ReneArgento我用更多的信息编辑了我的答案。 – MattDavis

相关问题