I am using Google Wallet Instant Buy as per the description given here and example provided by Google with Android SDK at this path or a similar path D:\android-sdk-windows\extras\google\google_play_services\samples\wallet as per the SDK present on your pc.
I successfully run the app and implemented the same in my app and it is working fine in Sandbox Mode
As now I have to move on final stage of app to publish it in play store i need to change the Sandbox Mode to Production Mode so we can do live transaction(Purchase).
As far as i understand the code and got what i need to change i have done the changes as shown below in particular class
Classes
Constants.class
// Environment to use when creating an instance of WalletClient
public static final int WALLET_ENVIRONMENT = WalletConstants.ENVIRONMENT_SANDBOX;
replaced by
public static final int WALLET_ENVIRONMENT = WalletConstants.ENVIRONMENT_PRODUCTION;
LoginFragment.class
private static final String WALLET_SANDBOX_SCOPE ="https://www.googleapis.com/auth/paymentssandbox.make_payments";
replaced by
private static final String WALLET_SANDBOX_SCOPE ="https://www.googleapis.com/auth/payments.make_payments";
This all the classes are given in the example provide by GOOGLE and at location D:\android-sdk-windows\extras\google\google_play_services\samples\wallet as per the SDK present on your pc.
And which i have used directlly in my app with necessary package changes and other design related changes.
I have done all the required setup as per the instruction given here Android Google Wallet Integration
As I have to mode on Prduction mode i created Client id and Android Key using the Sign APK Keystore.
And I tried to run Sign APK in device but it returns an error ERROR_CODE_MERCHANT_ACCOUNT_ERROR (405)
Not getting how to solve this.
And one more query is how google wallet is detect it's Android key or Client key.. because as in simple Google map Example we are using Api key in the app but i didn't find a similar use of either Api key or client id in Google Wallet Example.
Guess the error occuered due to invalid fingerprint ,The Instant Buy API for Android returns ERROR_CODE_MERCHANT_ACCOUNT_ERROR (405) when the signing key fingerprint used to sign the Android app does not match the fingerprint registered with Google Play
To resolve this ,make sure that the fingerprint provided to Google matches the fingerprint of the key used to sign the Android app. Once an Android app is signed,
to verify the fingerprint of the key used for signing it by using the following commands:
// First extract the META-INF/CERT.RSA from the APK jar -xvf META-INF/CERT.RSA inflated: META-INF/CERT.RSA
keytool -printcert -file META-INF/CERT.RSA
Certificate fingerprints: MD5: 77:41:C5:C1:DD:3F:6C:09:88:FA:33:3D:83:5F:D3:9E SHA1: EC:4A:EE:DC:F4:02:EA:87:0A:C5:09:C0:58:06:91:E7:EA:41:09:9D
Signature algorithm name: SHA1withRSA
Match the SHA1 with the fingerprint provided to Google Play.,Hope it helps
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With