Қызметті Android қызметіндегі ServiceConnection қызметімен байланыстырудың ең жақсы тәсілі?

Қызметімде ServiceConnection қызметімен байланысы бар Қызметім бар. Сервис қызметті құрған кезде басталады және BroadcastReceiver сыныбында тоқтайды және жақсы жұмыс істейді. Енді қызмет көрсету мерзімін кейін тоқтатамын. Менің Қызметім сыныбында TimerTask тырысып жатырмын, бірақ дұрыс жұмыс істемейтін сияқты.

Кез-келген ұсыныстар немесе шешімдер жақсы бағаланады.

Рахмет.

1

2 жауаптар

Таймер тәуелсіз Thread.so ретінде де қарастырылады. Қызметті тоқтатуға тырысқан кезде контекст өзгертілуі мүмкін. Менің шешімім Ағымдағы сервис Pid және Pid арқылы қызметті өшіреді. android: process атрибуты androidmanifest.xml ішінде көрсетіледі.

Process process = Runtime.getRuntime (). Exec («kill pid»); InputStream - процесс.getInputStream ();

бұл код жұмыс істейді. бір рет көріңіз

0
қосылды

Қолданбаңыздағы статиканы жариялау:

static Intent local_Intent;

Қолданбаны құру туралы қызметке жаңа Ниетін тағайындаңыз және жергілікті_Intent-ке байлаңыз:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    local_Intent = new Intent(this, yourAppService.class);
}

Local_Intent-ге тағайындау жергілікті_Intent статистикалық болғандықтан есте сақталады Сіз өзіңіздің қолданбаңызда қызметті бастауды қаласаңыз

 startService(local_Intent);

Қолданбаңыздағы қызметті тоқтатқыңыз келгенде

 stopService(local_Intent);
0
қосылды