国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Der benutzerdefinierte Android-Launcher fügt ein benutzerdefiniertes Widget hinzu und kann die Widget-Oberfl?che nicht aktualisieren
某草草
某草草 2017-05-16 13:29:24
0
1
826

Android Custom Launcher fügt benutzerdefinierte Widgets hinzu, aber die Widget-Oberfl?che kann nicht im System-Launcher aktualisiert werden. System-Widgets wie Uhren k?nnen im benutzerdefinierten Launcher aktualisiert werden.

Der

AppWidgetProvider-Code lautet wie folgt:

 @Override
    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
        super.onUpdate(context, appWidgetManager, appWidgetIds);
        SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
        String dateStr = dateFormat.format(new Date());
        RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
        views.setTextViewText(R.id.tv_update, dateStr);
        Log.i("TAG","--"+dateStr);
        appWidgetManager.updateAppWidget(new ComponentName(context, WidgetProvider.class),views);
    }

Der Code für den benutzerdefinierten Launcher lautet wie folgt:
Erstellt in onCreate

        //得到com.test包名的所有widegt,并且分配一個(gè)appwidgetId,保存起來
        mAppWidgetHost = new AppWidgetHost(MainActivity.this, HOST_ID);
        mAppWidgetHost.startListening();
        mAppWidgetManager = AppWidgetManager.getInstance(MainActivity.this);
        List<AppWidgetProviderInfo> providers = mAppWidgetManager.getInstalledProviders();
        for (int i = 0; i < providers.size(); i++) {
            ComponentName provider = providers.get(i).provider;
            if (provider.getPackageName().contains("com.test")) {
                surfAppWidgetList.add(providers.get(i));
                surfAppWidgetIdList.add(mAppWidgetHost.allocateAppWidgetId());
                LogUtil.printlf("-->" + provider.getPackageName());
            }
        }
        //intent里面可以傳入
        mAppWidgetIds=new int[surfAppWidgetIdList.size()];

Fügen Sie es dann in einer Schleife zum übergeordneten Layout hinzu

AppWidgetHostView hostView = mAppWidgetHost.createView(this, surfAppWidgetIdList.get(i), surfAppWidgetList.get(i));
            addView(hostView);

Was ist das Problem?

某草草
某草草

Antworte allen(1)
漂亮男人

已經(jīng)解決。需要進(jìn)行bindAppWidgetId();
而bindAppWidgetId需要系統(tǒng)權(quán)限。必須將自身應(yīng)用提升至系統(tǒng)應(yīng)用。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage