2012-07-16 2 views
3

을 이동하지만, 트랜잭션을 초기화하는에 다음과 같은 로그 캣 출력을 점점 계속 할 수 없습니다 :인앱 결제, RESULT_DEVELOPER_ERROR 멀리 나는 안드로이드 작업 인앱 결제를 얻으려고

// from logcat, BillingService: 
Billing service connected 
CheckBillingSupported 
CheckBillingSupported response code: RESULT_OK 
RestoreTransactions 
    restoreTransactions received RESULT_OK 
    request id: 12345 
    request id: -1 
handleCommand() action: [com.android.vending.billing.RESPONSE_CODE]. 
RestoreTransactions: RESULT_DEVELOPER_ERROR 

내 설정 :

  1. 나는 매니페스트에 청구 권한이 있습니다.
  2. 청구 서비스와 수신자가 매니페스트에 정의되어 있습니다.
  3. 내 앱이 이 게시되지 않았습니다., 방금 초안을 작성했습니다.
  4. 하나의 인앱 항목을 만들고 게시했습니다.
  5. 테스트 계정을 추가했지만이 시점에서 차이가 나는지 확신 할 수 없습니다.
  6. 시장의 초안 APK와 휴대 전화의 APK는 동일한 키를 사용하여 릴리스 모드로 서명되며 동일한 versionCode를 갖습니다.

다른 앱에서 작동하도록 인앱 구매를했는데이 경우 이미 앱 버전이 게시되었습니다. 이 경우 (# 3에서 언급했듯이) APK를 한 번 게시 한 적이 없습니다. 이 기능이 작동하려면 한 번 앱을 게시해야합니까? 나는하지 가정

감사

+0

이봐, 어떻게이 문제를 해결 했습니까?나는 당신과 똑같은 문제를 가지고 있지만, 구매를 할 때. –

답변

0

것 초안은 충분하다, 구글 플레이에 게시 된 응용 프로그램을 할 필요가 없습니다. 당신이 언급 한

6 점을 확인하지만 나는 문서에 언급 된대로 추가 요구 사항을 확인해야 할 것 같아요 :

RESULT_DEVELOPER_ERROR: 

응용 프로그램은 인앱 결제를 만들기 위해 노력하고 있음을 나타냅니다 요청했지만 응용 프로그램이 매니페스트에 com.android.vending.BILLING 권한을 선언하지 않았습니다. 또한 은 응용 프로그램이 제대로 서명되지 않았거나 번들 키가 누락 된 요청 또는 인식 할 수없는 요청 유형을 사용하는 요청과 같은 잘못된 요청을 에게 보냈음을 나타낼 수 있습니다.

5

문서의 모든 요구 사항을 준수한 것으로 보이므로 Google Play 서버가 따라 잡을 때까지 기다리는 것이 해결책이라고 생각합니다.

Google Play에 앱용 새 버전의 apk를 업로드 한 직후 트랜잭션을 복원하려고 할 때도 동일한 문제가있었습니다. 새 APK가 Google 서버에서 완전히 처리되기까지 다소 시간이 걸릴 것 같습니다 (즉, 몇 시간). 유형의 청구 요청에 올바르게 응답합니다. 예를 들어, 너무 오래 기다릴 필요없이 CHECK_BILLING_SUPPORTED에 대한 응답으로 RESULT_OK를 (를) 얻었지만 RESTORE_TRANSACTIONS에 문제 (RESULT_DEVELOPER_ERROR를 비동기 응답으로)가있었습니다. 하지만 apk의 동일한 버전으로 몇 시간 만에 다시 시도했을 때 코드를 변경하지 않고 RESTORE_TRANSACTIONS에 대한 응답으로 RESULT_OK를 받았습니다.

+3

RESULT_DEVELOPER_ERROR이 (가) 반환되기 전에 내 APK를 초안으로 업로드하는 데 약 40 분이 걸렸습니다. –

+0

Ditto, 약 40 분 후 그리고 RESULT_DEVELOPER_ERROR 대신 RESULT_OK가 표시됩니다. – William

+0

오해의 소지가있는 오류. – nmr

1

이 오류가 발생할 수있는 또 다른 이유는 한 번에 20 개가 넘는 SKU를 가져 오는 것입니다. 이 한도는 AIDL 파일에 설명되어 있습니다.