Launcher.java에서 AppWidget 추가 프로세스 분석
2. showAddDialog() 방법으로 넘어가면 showDialog(DIALOG CREATE SHORTCUT)가 보입니다.Activity의 showDilaog () 를 통해 dialog를 표시하기 때문에 onCreateDialog 방법을 찾을 수 있습니다.
해당 dialog의 ID(DIALOG CREATE SHORTCUT)를 찾으면 다음 코드가 표시됩니다.
case DIALOG_CREATE_SHORTCUT:
return new CreateShortcut().createDialog();
3、Create ShortCut이라는 내부 클래스로 이동하면 길게 누르는 메뉴가 여기에서 만들어진 것을 발견할 수 있습니다.
온클릭 방법에서 창의 작은 위젯 항목을 클릭 처리합니다.코드는 다음과 같습니다.
int appWidgetId = Launcher.this.mAppWidgetHost.allocateAppWidgetId();
Intent pickIntent = new Intent(AppWidgetManager.ACTION_APPWIDGET_PICK);
pickIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID,appWidgetId);
// start the pick activity
startActivityForResult(pickIntent, REQUEST_PICK_APPWIDGET);
intent를 통해 activity, AppWidget Manager가 시작되었습니다.Action_APPWIDGET_PICK 이 action은 settings(설정)를 시작하는 AppWidget PickActivity입니다.java의 activity, 시스템에 설치된 App Widget을 표시하고 사용자가 선택한 App Widget와 전송된 App Widget Id를 연결합니다. (연결은 App Widget Manager의 bind App Widget Id (id,provider) 방법으로 연결됩니다. 이 방법은 시스템 권한이 있어야 실행할 수 있습니다. 설정은 시스템 권한이 있습니다.그래서 백엔드 코드에widget을 자신이 쓴 launcher에 추가하려면 launcher는 시스템 권한이 있어야 합니다. 그렇지 않으면 백엔드 코드에widget을 추가할 수 없습니다.
4、widget을 선택한 후 Launcher에 추가합니다.java에서 onActivity Result 보기
case REQUEST_PICK_APPWIDGET:
addAppWidget(data);
addappWidget 방법으로 다시 이동합니다.if (appWidget.configure! =null) 는widget에 설정이 있는지 판단하는 것입니다. 설정이 있으면 설정 인터페이스로 이동하고 설정이 없으면 completeAddAppWidget () 방법을 직접 실행하여widget을 데스크톱 데스크톱 데이터베이스에 추가합니다.
이렇게 AppWidget 추가가 완료되었습니다...
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.