A1. Yes. No need to close old account
A2. No need to change anything. Since November '11 keys are connected to apps not to accounts, so feel free to migrate apps as many times as you want.
Tried for myself: all went fine.
Question
I am planning to move my application to another account.
Question 1: Can I do it without closing my old account?
Question 2: My application has in-app payments, so according to this spec. This article states
In-app billing: The moment your application is transferred over, the billing service will begin signing all billing responses using your new keypair. Old versions of your app will immediately fail to authenticate billing responses. To prepare for this, you'll need to push out a version of your app in advance that attempts to authenticate requests using both your old and new keypair.
What is authenticating billing responses? Is this something they have in their demo application Security.java class?
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("....");
String base64EncodedPublicKey = stringBuilder.toString();
PublicKey key = Security.generatePublicKey(base64EncodedPublicKey);
verified = Security.verify(key, signedData, signature);
If yes, then what do they mean by
attempts to authenticate requests
What are the requests?
Solution
A1. Yes. No need to close old account
A2. No need to change anything. Since November '11 keys are connected to apps not to accounts, so feel free to migrate apps as many times as you want.
Tried for myself: all went fine.