Gmail Gmail은 위젯이 원래 Gmail 응용 프로그램에서 메시지를 열어 보려는 의도를 파악하려고합니다. 나는 위젯에서 전자 메일을 클릭하면, 나는 다음과 같은 로그 캣 출력을 얻을 것이다 :logcat에 인트라 추가 표시
09-29 14:42:51.312: I/ActivityManager(1550): START u0
{act=android.intent.action.VIEW
dat=content://com.google.android.gm.email.provider/uimessage/87?threadOp=true&appVersion=58454703&folderUri=content://com.google.android.gm.email.provider/uifolder/1 typ=application/gm-email-ls flg=0x1000c000 pkg=com.google.android.gm cmp=com.google.android.gm/.ui.MailActivityGmail (has extras)} from uid 10066 on display 0
하지만 전송받은 엑스트라를 표시하는 방법을하지 않았다. 작업을 모방하려고하면 Gmail받은 편지함 만 보입니다. 이 코드가 사용하고
09-29 14 : 46 : 01.457 :의 Gmail/W (13,334) Gmail 앱 도시
Intent defineIntent =new Intent(Intent.ACTION_VIEW, Uri.parse("content://com.google.android.gm.email.provider/uimessage/86?threadOp=true&appVersion=58454703&folderUri=content://com.google.android.gm.email.provider/uifolder/1")); Bundle extra = new Bundle(); extra.putString("exchange_username", "XXX"); extra.putString("email_address", "XXXX"); defineIntent.setType("application/gm-email-ls"); defineIntent.setPackage("com.google.android.gm"); defineIntent.setClassName("com.google.android.gm", "com.google.android.gm.ui.MailActivityGmail"); defineIntent.putExtras(extra); defineIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(defineIntent);
수신함 후하는 로그 캣에 에러가 발생 : 번들의 email_address가 비어 있습니다.
그러나 여분의 번들에 email_adress 문자열을 설정했습니다.
예, 물론입니다. 그러나 의도가 내 자신의 응용 프로그램으로 전송 된 경우에만. 인 텐트가 Logcat의 에뮬레이터에 설치된 다른 응용 프로그램에 의해 전송 된 것을 볼 수 있지만, 추가 정보는 표시되지 않습니다 ("추가 기능이 있음"). –