Android 10では、アプリに新しい制限が適用されます。バックグラウンドからアクティビティを開始することはできません。これは、大部分のアプリでは問題ないかもしれませんが、必要なvoipアプリにとっては致命的な打撃です。プッシュ通知が届いた後に着信を表示する。
これによると https://developer.Android.com/guide/components/activities/background-starts アクティビティを開くことを許可するために満たすことができる条件のリストがありますが、私はそうしますそれを完全に理解していない(ここでは英語以外のネイティブ)。
私が間違いなく知っていることは、
実行中のアクティビティ、タスク、バックスタックなどはありません
アプリは実行されていません
達成する必要があること:
Android 10)で着信VoIP通話のアクティビティを開くにはどうすればよいですか?通常のユーザーがPHONEアプリに期待するのと同じように、ロック画面などで。
ヒントを事前にありがとう。
「他のアプリを上書きする」許可を求める必要がある場合、これを以前のバージョンと同じようにすることができます
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
if (!Settings.canDrawOverlays(this)) {
RequestPermission();
}
}
private void RequestPermission() {
// Check if Android P or higher
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
// Show alert dialog to the user saying a separate permission is needed
// Launch the settings activity if the user prefers
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
Uri.parse("package:" + BuildConfig.APPLICATION_ID));
startActivityForResult(intent,
ACTION_MANAGE_OVERLAY_PERMISSION_REQUEST_CODE);
}
}