2012-12-15 13 views
13

Czego chcę? Po pobraniu wszystkich zakupionych elementów muszę zweryfikować zakup na moim serwerze, chcę to zrobić z podpisami i podpisanymi danymi otrzymanymi z płatności w aplikacji.Android billing v3 - bez podpisu

Najpierw użyłem rozliczenia w aplikacji v2 tam dostałem za każdym razem z moim kontem programisty prawidłowy podpis i signdata do testu statycznego sku android.test.purchased.

Przełączyłem się na nowe rozliczenie v3, ponieważ wydaje się bardzo przyjemne w implementacji, jednak nie otrzymuję już podpisu.

Przesłałem poprzednią wersję mojego APK do Google (nie publikowałem nigdy, ponieważ jeszcze nie zostało ukończone), a także dodałem aktywny produkt w aplikacji do dalszych testów.

Przesłanie pliku APK miało miejsce wczoraj o 22.00, więc uważam, że czekałem wystarczająco.

Co próbowałem? Mam zainstalowany mój wniosek w innej wersji:

  • unsigned apk z mojej własnej dodanej „aktywny” produktu w aplikacji => brak podpisu
  • unsigned apk z sku android.test.purchased => Brak podpisu
  • podpisanej apk z mojej własnej dodanej "aktywny" produkt w aplikacji => brak podpisu
  • podpisał apk z sku android.test.purchased => brak podpisu

Ci 4 „aP p states "Próbowałem zarówno mojego telefonu programisty (gdzie moje główne konto Google to ten sam użytkownik, co konto konsoli programisty), jak i konta testowego podczas konfigurowania innego telefonu, konto testowe jest również umieszczane w moich ustawieniach konta w" kontach testowych " .

Hmm i teraz nie mam więcej pomysłów na to, jak zdobędę swój podpis. Myślę, że otrzymam podpis z aktywną aplikacją + aktywnym produktem w aplikacji, ponieważ proces płatności działa (Adb logcat wyświetla, że ​​kupiłem "Android.test.purchased") Mój własny produkt w aplikacji, który mogłem również nie testuję, ponieważ jeśli korzystam z mojego konta programisty, sklep gier mówi mi "nie mogę kupić, już posiadam" i na moim koncie testowym dostałem komunikat "Ten produkt nie jest dostępny dla twojego konta".

Czy masz rozwiązanie mojego problemu?

+0

@ lunarnet76, jakie dane są, jest naprawdę prosta.signdata to dane, które Google odsyła z powrotem na twoje konto, dane mówią o stanie zakupu, a podpis można użyć z kluczem aplikacji publicznej, aby zweryfikować, czy signdata nie została zmanipulowana i że google wysłał go pod numer – prdatur

+0

prdarur. Mam ten sam problem, znalazłeś rozwiązanie? – melodiouscode

+0

Nie na razie, ale czytając inne posty, które mówią "Zindeksowane google mówi tylko, że nie powinieneś go używać, ale nie zostanie usunięte" zdecydowałem się pozostać na V2, ponieważ tam moja implementacja działała zgodnie z oczekiwaniami. Ale nie przestaję szukać rozwiązania z V3. Ponieważ weryfikuję płatność za pośrednictwem mojego serwera V2, pozwól mi to zrobić bez dostarczania klucza publicznego w aplikacji, co jest bardzo miłe, mam tylko klucz publiczny na moim serwerze, który weryfikuje. W przypadku V3 uważam, że nie jest to również możliwe. – prdatur

Odpowiedz

2

Z V3 stwierdziłem, że produkty testowe nie zwracają żadnych podpisanych danych, ale jeśli podpiszesz swoją aplikację kluczem do wydania i sfinalizujesz proces zakupu rzeczywistych produktów, otrzymasz podpisane dane.

+0

Zobacz moje "testy" -> podpisany plik APK z dodanym przeze mnie "aktywnym" produktem w aplikacji => bez podpisu – prdatur

1

Nie masz już podpisów na zakupy testowe (android.test. *). Wziąłem nurkowanie i przesłałem moją aplikację na rynek (po prostu jej nie opublikowałem) używając moich prawdziwych produktów.

Niskie i wyglądające podpisy zaczęły być zwracane! Zalecam zmianę dowolnego sprawdzania poprawności po stronie serwera, którego używasz, aby pominąć sprawdzanie podpisu, gdy dane zawierają identyfikator elementu android.test. *.

Uwaga: Ważną kwestią dotyczącą powyższego jest: "używanie moich prawdziwych produktów".

+0

Witaj, ale zobacz moje testy "podpisanego pliku APK z dodanym przeze mnie" aktywnym "produktem w aplikacji => nie podpis "dodałem również" prawdziwy "produkt i nie dało mi to podpisu na eterze. – prdatur

+0

Cześć, wszystko, co mogę powiedzieć, to to, że działa dla mnie. Oczywiście używam konta zarejestrowanego jako jeden z twórców aplikacji. Jedyną różnicą, o której mogę pomyśleć, jest to, że aplikacja jest opublikowana, tylko ten apk jest w stanie niepublikowanym (następne wydanie). – melodiouscode

+0

I myślę, że to jest problem. niepublikowana aplikacja (nigdy opublikowana) nie otrzyma podpisu, została opublikowana na jakiś czas. funkcja aplikacji nie musi być obecnie publikowana, ale sama aplikacja. Ale to zachowanie jest dla mnie bezcelowe, musi być możliwe uzyskanie podpisów za pomocą nigdy nie opublikowanej aplikacji. – prdatur

Powiązane problemy