2012-10-27 12 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

वर्कअराउंड AndroidManifest.xml में GET_ACCOUNTS अनुमति की जरूरत डंप से बचने के लिए होगा? इसका पता लगाने और एक संदेश प्रदर्शित करने का एक तरीका? – powder366

+0

बस सभी खातों को हटाने का प्रयास किया लेकिन इस बग का अनुभव नहीं किया, ऐप अभी भी सोचता है कि इसमें लाइसेंस है। अगर Google Play को फोन पर इंस्टॉल नहीं किया गया था, तो Google Play डेवलपर कंसोल पर यह अपवाद कैसे रिपोर्ट किया गया था? – petrsyn

6

मैं जानता हूँ कि यह एक पुराने सवाल है, लेकिन मैं परीक्षण उपकरणों की एक जोड़ी पर इस त्रुटि एनपीई था और इस त्वरित सुधार कहा:

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 
    } 

आप

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

हम्म, खाता प्रबंधक को हल नहीं किया जा सकता है। आयात android.accounts.AccountManager भी हल नहीं किया जा सकता है। यह काम करने के लिए क्या चाल है? –

+0

कभी नहीं, इसे मिला। जाहिर है कि एपीआई स्तर 5 में जोड़ा गया था और मैं एपीआई स्तर 4 ऐप पर काम कर रहा हूं ... "यह कभी आसान नहीं है" :-) –

+0

लोग GET_ACCOUNTS अनुमति देखते समय बाहर निकलते हैं। इसे मूल रूप से प्रस्तुत किया जाता है "एप्लिकेशन आपके सभी खाते और व्यक्तिगत जानकारी को पढ़ सकता है"। दुर्भाग्य से मेरे लिए एक विकल्प नहीं है। – ShellDude

संबंधित मुद्दे