我想我越來越接近我的Android應用授權之旅,但相信我錯過了這裏的一個關鍵部分。我正在使用下面顯示的代碼使用可能非常簡單的許可檢查。仍然缺少一些Android授權
if (isFinishing()) {
// Don't update UI if Activity is finishing.
return;
}
if (policyReason == Policy.LICENSED){
// Handle licensed
}
if (policyReason == Policy.NOT_LICENSED){
// Handle not licensed
}
if (policyReason == Policy.RETRY){
// handle retry
}
我可以使用開發者網站上的測試部分與我的測試帳戶和它的作品我究竟是怎麼樣提供我選擇第4個選項。
- 迴應正常
- 未獲得許可
- 許可
- 舊許可
如果我選擇的錯誤之一,它匹配的方法在我的MainActivity,但在同一時間,直接進入我的應用程序。
public void applicationError(int errorCode) {
if (isFinishing()) {
// Don't update UI if Activity is finishing.
return;
}
// This is a polite way of saying the developer made a mistake
// while setting up or calling the license checker library.
// Please examine the error code and fix the error.
Toast.makeText(getApplicationContext(), String.valueOf(errorCode), Toast.LENGTH_LONG).show();
//appLicenseError = errorCode;
}
我在這裏的假設是,這一切都發生在與POLICY.NOT_LICENSED結合,但顯然我失去了一些東西。
我在我的MainActivity onCreate方法中有doCheck(),所以這是發生的第一件事。它看起來像下面兩個回調事件發生的唯一時間是返回前4個許可選項之一,而不是錯誤代碼。
公共無效允許(INT policyReason){...
公共無效dontAllow(INT policyReason){
我想我的理解閱讀文檔後,如果發生錯誤,如錯誤3 「沒有市場管理」,這將遵循非許可的路徑,並阻止我的應用程序完全啓動。但是,這似乎只會導致發生錯誤回調,然後返回到我的onCreate並簡單地啓動應用程序。
任何指針,我如何能更好地處理這將不勝感激。