2012-10-27 6 views
5

私は手順を確認し、標準的なAndroidのライセンスを踏襲し、最近私は、これらのレポートを取得する:これはライセンスチェッカーのエラー報告 - これはどういう意味ですか?

java.lang.NullPointerException 
at com.google.android.vending.licensing.LicenseValidator.verify(LicenseValidator.java:99) 
at com.google.android.vending.licensing.LicenseChecker$ResultListener$2.run(LicenseChecker.java:228) 
at android.os.Handler.handleCallback(Handler.java:605) 
at android.os.Handler.dispatchMessage(Handler.java:92) 
at android.os.Looper.loop(Looper.java:137) 
at android.os.HandlerThread.run(HandlerThread.java:60) 

何を意味するのだろうか?これは正常ですか?私は前にこれを得たことはありません。 問題のアプリがより一般的になっているので、誰かが何とか支払いを避けるためにアプリを解読しようとしたことを示すことができますか?

あなたの洞察に感謝します。

答えて

13

この例外は通常、端末にGoogle Playアプリがインストールされていないか、デフォルトのアカウントが登録されていない場合に発生します。 古いGoogleマーケットアプリケーションがある場合、この例外が発生する可能性があります。

あなたにも、ここでの問題を確認することができます。http://code.google.com/p/android/issues/detail?id=26722

+1

回避策をGET_ACCOUNTS許可が必要になりますか?これを検出してメッセージを表示する方法は? – powder366

+0

すべてのアカウントを削除しようとしましたが、このバグは発生しませんでしたが、アプリはまだライセンスを持っていると考えています。また、Google Playが電話にインストールされていない場合、この例外がGoogle Playデベロッパーコンソールにどのように報告されましたか? – petrsyn

6

を、私はこれが古い質問です知っているが、私はテストデバイスのカップルにNPEこのエラーを持っていたし、このクイックフィックスを追加しました:

AccountManager am = AccountManager.get(context); 
    int numAccounts = am.getAccountsByType("com.google").length; 

    if(numAccounts == 0) { 
     noAccountDialog(); 
    } else { 
     // Do the license check as you have an account 
    } 

あなたはダンプを回避するためのAndroidManifest.xmlに

<uses-permission android:name="android.permission.GET_ACCOUNTS" /> 
+0

Hmmm、AccountManagerを解決することはできません。 import android.accounts.AccountManagerも解決できません。この仕事をするためのトリックは何ですか? –

+0

気にしないでください。 APIレベル5で追加されたようですが、APIレベル4のアプリで作業しています...「 –

+0

」は、GET_ACCOUNTS権限が表示されているときにフリークアウトする傾向があります。これは、基本的に "アプリケーションはあなたのアカウントと個人情報をすべて読み取ることができます"と表示されます。残念ながら私のための選択肢ではありません。 – ShellDude

関連する問題