電話で同期アダプターを正常に作成できますが、特定のシナリオを処理できません。
私のタスク同期アプリは、タスクを取得するためのタスク権限を必要とするか、Google サーバーから任意のサービスの権限を取得するために適用されます。このシナリオは、ユーザーがアプリケーションを起動せずに Google アカウントに移動した場合に初めて発生します。
1) [設定] --> [アカウントと同期] --> [Google アカウントを選択] に移動します。
2) タスク同期コンテンツ プロバイダーが表示されます。
3)同期を押すと、同期プロバイダーは初めてタスクやGoogleサービスなどにアクセスできないため、userRecoverableExceptionが発生するアカウント
4) 通知プロバイダーの助けを借りて、catch ブロックでプッシュ通知を発生させます。
ここで私がやっている方法、e は userRecoverableException インテントです。
PendingIntent pendingNotificationIntent = PendingIntent.getActivity(
mContext, constants.REQUEST_AUTHORIZATION, e.getIntent(),
PendingIntent.FLAG_UPDATE_CURRENT
| PendingIntent.FLAG_ONE_SHOT);
4) ユーザーが通知をクリックすると、認証ウィンドウが開き、ユーザーはアプリがカレンダー、連絡先、タスクなどのサービスを取得する許可を承認します。
5) ユーザーが認証部分を完了したら、同期を再開する方法を教えてください。また、一部のアプリでは、同期アイコンの横に赤い感嘆符のアイコンが表示され、「同期で問題が発生していますが、まもなく元に戻ります」と表示されます。許可が自動的に得られると、再開して同期します。
ここでは、ユーザーが許可を認証するとすぐに同期を再開または再開するための通知を取得する方法を示します