Public void startpickappwidget (){
// Add system controls
Int appwidgetid = mappwidgethost. allocateappwidgetid ();
Intent pickintent = new intent (appwidgetmanager. action_appwidget_pick );
/* Arraylist <appwidgetproviderinfo> custominfo = new arraylist <appwidgetproviderinfo> ();
Pickintent. putparcelablearraylistextra (
Appwidgetmanager. extra_custom_info, custominfo );
Arraylist <bundle> customextras = new arraylist <bundle> ();
Pickintent. putparcelablearraylistextra (
Appwidgetmanager. extra_custom_extras, customextras );*/
Pickintent. putextra (appwidgetmanager. extra_appwidget_id, appwidgetid );
Startactivityforresult (pickintent, request_pick_appwidget );
Launcherstatemanager. startpickappwidget ();
}
Public void startpickshortcut (){
If (launcherstatemanager. ispickingshortcut ()){
Return;
}
Intent extraintent = new intent (intent. action_create_shortcut );
Intent pickintent = new intent (intent. action_pick_activity );
Pickintent. putextra (intent. extra_intent, extraintent); // the intent of the activity to be searched
Pickintent. putextra (intent. extra_title, "add shortcuts"); // Title
Startactivityforresult (pickintent, request_pick_shortcut );
Launcherstatemanager. startpickshortcut ();
}
Notes about notification
Remoteviews must be regenerated when real-time update of notification is involved. The original contentview cannot be used for update.
Remoteviews view = new remoteviews (mcontext. getpackagename (), R. layout. icationication_download_progress );
View. setprogressbar (R. Id. icationication_download_progressbar, 100, progress, false );
View. settextviewtext (R. Id. icationication_download_text, String. Format ("% s: % d %", title, Progress ));
Permission Y. contentview = view;
Updating ......