Форум программистов, компьютерный форум CyberForum.ru

Как остановить сервис по нажатию на Notification - Android

Восстановить пароль Регистрация
Другие темы раздела
Android Отловить блокировку экрана http://www.cyberforum.ru/android-dev/thread1780658.html
Добрый день! Хотелось бы отловить блокировку экрана и, например, запустить активность. Т.е когда устройство разблокируется, первым что увидит пользователь - это открытая активность... Как это сделать? Если через ресиверы то как? Буду благодарен за ответ.
Android Передает ли Input Method Service какой либо интент Задача состоит в том что надо запустить активность либо сервис при вызове клавиатуры каким либо приложением(возможно ли это точно не уверен). При старте клавиатуры запускается Input Method Service (могу ошибаться), можно ли зацепиться за него? Или есть еще какие либо варианты? Возможно несу чушь, но все же http://www.cyberforum.ru/android-dev/thread1780655.html
Android Воспроизведение mp3 в программе, способной это сделать(файловый менеджер)
Здравствуйте, уважаемые форумчане, я недавно пополнил ряды новичков в программировании под android и решил запрограммировать файловый менеджер, чтобы закрепить некоторый материал(работа со списками + намерения). И все шло хорошо пока я не начал программировать открытие файлов. Беда заключается именно в открытии аудио файлов, все другие типы файлов открываются более-менее адекватно. Я перепробовал...
Android Сделать приложение для отслеживания перемещения ребенка (геоданные)
Столкнулся с проблемой. Нужно следить за перемещениями ребенка (мониторить где он находится в данный период времени). В интернете готовые решения скажем так очень дорогостоящие. Хочется написать собственное приложение, которое будет собирать данные о местоположении телефона, отправлять их на сервер, а на сервере (хотелось бы реализовать с помощью API яндекс или гугл карт) я могу смотреть где...
Android Как обработать нажатие на ImageView? Eclipse(android) http://www.cyberforum.ru/android-dev/thread1780290.html
Ребят, не пойму в чем ошибка, как обработать нажатие на картинку? public class MainActivity extends ActionBarActivity implements OnClickListener { ImageView imageView1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
Android Запустить сервис в другом потоке Как правильно запустить сервис в другом потоке? Сервис должен работать всегда (даже когда приложение закрыто) подробнее

Показать сообщение отдельно
Паблито
не спать!
1876 / 1610 / 497
Регистрация: 12.05.2014
Сообщений: 5,819
Завершенные тесты: 1
15.07.2016, 19:54     Как остановить сервис по нажатию на Notification
вобщем я проверил - у меня работает вот так
манифест
XML
1
2
3
4
<service
            android:name=".MyService"
            android:exported="false">
        </service>
в активити
Java
1
2
3
4
        Intent intent = new Intent(this, MyService.class);
        intent.setAction("START_PLEASE");
        startService(intent);
//        finish();
класс MyService
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import android.app.Notification;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.support.annotation.Nullable;
import android.support.v4.app.NotificationCompat;
 
public class MyService extends Service {
    private static final String START_PLEASE = "START_PLEASE";
    private static final String STOP_PLEASE = "STOP_PLEASE";
 
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        if (intent != null) {
            final String action = intent.getAction();
            if (START_PLEASE.equals(action)) initSomething();
            else if (STOP_PLEASE.equals(action)) stopSelf();
        }
        return super.onStartCommand(intent, flags, startId);
    }
 
    private void initSomething() {
        final Intent intent = new Intent(getBaseContext(), MyService.class);
        intent.setAction(STOP_PLEASE);
        PendingIntent pi = PendingIntent.getService(getBaseContext(), 42, intent, 0);
        //
        NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
        builder.setContentTitle(getResources().getString(R.string.app_name));
        builder.addAction(R.drawable.ic_search, "LOL STOP", pi);
        builder.setSmallIcon(R.drawable.ic_star__24px);
        Notification notification = builder.build();
        startForeground(777, notification);
    }
 
    @Nullable
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }
}
ну названия самих Action's заменить на более мудреные, но для теста пойдет
 
Текущее время: 01:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru