3 回答

TA貢獻1801條經驗 獲得超8個贊
如果您真的想在有效使用的情況下使用這些類型的權限。您必須在應用程序和播放控制臺中提供隱私政策。
Google Play 限制使用高風險或敏感權限,包括 SMS 或通話記錄權限組。
如果您的應用不需要訪問通話記錄或短信權限,您必須從應用的清單中刪除這些權限。有關符合政策的替代實施的詳細信息也在下文詳述。
如果您認為您的應用符合可接受使用的政策要求或符合例外條件,則應直接通過 Play 管理中心聲明任何通話記錄或短信權限。
對于之前提交過聲明表的應用,Google Play 可酌情授予延期至 2019 年 3 月 9 日的期限,以使您的應用符合本 Play 政策。如果您不打算使用這些權限,但仍需要額外的時間來提供您的應用(s ) 合規。
不符合政策要求或未提交聲明表的應用可能會從 Google Play 下架。
您應該何時訪問這些權限
僅當您的應用屬于允許的用途并且僅啟用應用的核心功能時,您才應訪問通話記錄或短信權限。
核心功能被定義為應用程序的主要目的。這是應用程序描述中最突出地記錄和推廣的功能;沒有其他功能比應用程序的功能更重要。如果未提供此功能,則應用程序將“損壞”或無法使用(即,應用程序被剝奪了其主要功能并且無法按用戶預期執行)。

TA貢獻1875條經驗 獲得超3個贊
根據谷歌,您只能請求在您的應用程序中實現關鍵當前功能或服務所必需的權限。您不得將授予用戶或設備數據訪問權限的權限用于未公開、未實現或不允許的功能或目的。
單擊此處閱讀 Google 官方許可文檔
在您的情況下,您的方法makePhoneCall使用需要呼叫權限的Intent.ACTION_CALL,我建議您使用Intent.ACTION_DIAL它將您重定向到撥號器,您的應用仍然可以通過撥號器使用此功能進行呼叫,因此您不需要任何呼叫權限為了那個原因。
public static void makePhoneCall(Activity activity, String phoneNumber) {
if (phoneNumber != null) {
Intent callIntent = new Intent(Intent.ACTION_DIAL);
callIntent.setData(Uri.parse("tel:" + phoneNumber));
activity.startActivity(callIntent);
}
}
添加回答
舉報