簡體   English   中英

如何解決此“無法在運行時權限之前觸發默認處理程序提示”

[英]how to fix this "Unable to trigger default handler prompt prior to runtime permissions"

今天我收到了來自谷歌團隊的這封郵件我的應用程序發布狀態:被拒絕。

無法在運行時權限提示之前觸發默認處理程序提示*如果您的應用程序是默認處理程序,則默認處理程序提示必須在運行時權限提示之前。

根據我們的審查,您的應用似乎沒有在運行時權限提示之前正確觸發默認處理程序提示。 請在任何運行時權限提示之前添加默認處理程序提示。*

請幫助解決這個問題,我也使用了默認處理程序提示,但不知道谷歌為什么給我發這封郵件。

您需要明確提示默認處理程序,而不是簡單地在清單中聲明權限。

RoleManager roleManager = (RoleManager) 
activity.getSystemService(Context.ROLE_SERVICE);
Intent intent = roleManager.createRequestRoleIntent(RoleManager.ROLE_DIALER);
activity.startActivityForResult(intent, requestCode);

要更改默認處理程序:

Intent setDefaultSmsIntent = new Intent(Telephony.Sms.Intents.ACTION_CHANGE_DEFAULT);
setDefaultSmsIntent.putExtra(Telephony.Sms.Intents.EXTRA_PACKAGE_NAME, getPackageName());
startActivityForResult(setDefaultSmsIntent, requestCode);

來自 Google 的 Android 文檔,這是關於Play Store policy的。

鑒於應用在作為默認處理程序時訪問的敏感用戶信息,您的應用不能成為默認處理程序,除非它滿足以下 Play 商店列表和核心功能要求:

您的應用程序必須能夠執行其作為默認處理程序的功能。 例如,默認的 SMS 處理程序應該能夠發送文本消息。

您的應用必須提供隱私政策。

您的應用必須在 Play 商店說明中明確說明其核心功能。

例如,默認電話處理程序應在描述中描述其與電話相關的功能。

您的應用程序必須聲明適合其用例的權限。 有關您可以將哪些權限聲明為給定處理程序的更多詳細信息,請參閱 Play 管理中心幫助中心中有關使用短信或通話記錄權限組的指南。

您的應用程序必須先請求成為默認處理程序,然后才能請求與成為該處理程序相關的權限。 例如,應用程序必須先請求成為默認的 SMS 處理程序,然后才能請求 READ_SMS 權限。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM