Je viens de trouver quelques jour j'ai un peu de comment solution.je suis donc part de mon idée.
Ce site est très utile pour moi.
http://kasperholtze.com/android/how-to-make-a-simple-android-widget/
- Je faire des changements et de faire mon travail.
Exigence solution:
1. Faire du Récepteur et de mettre en manifeste l'autorisation de ce genre.
<receiver
android:name=".WatchWidget"
android:label="WatchWidget" >
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/watch_widget_provider" />
</receiver>
2. De Mon côté nécessitent haut textview cliquez donc pouvez faire en utilisant texview id en onUpdate()
.
remoteViews = new RemoteViews(context.getPackageName(),R.layout.widget_lay);
Intent intent = new Intent(context, TestActivity.class);
intent.setAction("callActivity");
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
remoteViews.setOnClickPendingIntent(R.id.widget_textview, pendingIntent);
appWidgetManager.updateAppWidget(new ComponentName(context,WatchWidget.class), remoteViews);
3. Je tiens à appeler de la base de données et de chercher de l'enregistrement et de l'afficher.maintenant la question qu'à propos de la mise à jour?
donc, je suis habitué classe timer et exécuter toutes les 1000sec raison de plus de widget est toujours de mise à jour de 30min(peut-être).
@Override
public void onUpdate( final Context context, final AppWidgetManager appWidgetManager, final int[] appWidgetIds )
{
this.appWidgetManager = appWidgetManager;
try {
Timer timer = new Timer();
timer.scheduleAtFixedRate(new MyTime(context, appWidgetManager,appWidgetIds), 1, 1000);
} catch (Exception e) {
System.out.println("Exception:");
}
updateSwitch1(context, appWidgetManager, appWidgetIds[0]);
}
Si tout de la requête puis mettre des commentaires et merci à tous qui me donne plein de soutien pour faire de cette réponse utile.