/ / Ako zobraziť aktualizácie textových služieb na obrazovke v systéme Android? - android, android-service, android-ui

Ako zobraziť aktualizácie textových služieb na obrazovke v systéme Android? - android, android-service, android-ui

Vytváram aktivitu Android a začína somslužby z tejto činnosti pomocou nasledujúceho kódu. Teraz chcem zobraziť text "Dobrý používateľ" z tejto služby na obrazovku, čo znamená, že služba by mala spustiť toto zobrazenie. Mohol by som použiť Toast.maketext.show, ale displej zmizne po niekoľkých sekundách.

    new Thread(new Runnable() {
@Override
public void run() {
startAdapterIntent.setAction("START_ADAPTER");
startService(startAdapterIntent);
System.out.println("Thread2: Adapter Service started.");
}
}).start();

Ako to urobím?

Snažil som sa použiť tento odkaz: Zmeny používateľského rozhrania hlavnej aktivity z vlákien v službe

a jeho (pravdepodobne) nadradený odkaz http://developer.android.com/reference/android/app/Service.html časť "Vzorka programu Remote Messenger Service"

Počas používania tohto druhého odkazu sa zdá, že časť ServiceConnection onServiceConnected nefunguje?

odpovede:

0 pre odpoveď č. 1

Z vašej služby by ste mali vytvoriťhandler, ktorý môže byť spustený úlohou časovača, by handler mal byť ten, ktorý je priamo zodpovedný za komunikáciu s aktuálne aktívnym používateľským rozhraním.

    long delay  = 3000;
long period = 3000;
TimerTask mDoTask = new TimerTask() {
@Override
public void run() {
xHandler.sendMessage(Message.obtain(xHandler, SOME_OPERATION));
}
};
mT.scheduleAtFixedRate(mDoTask, delay, period);
Handler xHandler=new Handler(){
@Override
public void handleMessage(Message message){
switch (message.what){
case SOME_OPERATION:
YourMethod();// in this method you can display your text
break;
}
}
};