Слушайте пользовательское событие (многопользовательское устройство)
У меня есть приложение, которое запускается, если телефон загружается. Пользователь сказал мне, что его телефон используется двумя людьми, один из них использует мое приложение, а другое нет.
Поэтому мне нужно какое-то событие, чтобы прослушать, когда пользователь переключился, чтобы я мог запустить службу своих приложений, если правильный пользователь использует телефон. Все, что я могу использовать для этого?
Edit
Я слушаю событие загрузки с передатчиком, зарегистрированным в манифесте, поэтому я знаю, что это такое. Но я не мог найти ничего подходящего для переключения пользователей на устройство
Ответы
Ответ 1
Выполнение сложной задачи:
Регистрация фона | широковещательный приемник события события переднего плана и проверка на переход пользователя:
ACTION_USER_BACKGROUND
и ACTION_USER_FOREGROUND
Полный исходный код: https://readyandroid.wordpress.com/event-for-switch-user-multiusersupport-android/
Еще много: https://readyandroid.wordpress.com/
Ответ 2
Вам нужно искать что-то под названием BroadcastReciever в android. Они используются для захвата таких событий, как щелчок камеры, загрузка телефона, разблокировка экрана и т.д. Эти события имеют обратный вызов, называемый onReceive, где вы можете реализовать свой логин.
Это довольно легко, и вы можете использовать его в Google.
В вашем манифесте:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
В вашем элементе приложения (обязательно используйте полное/квалифицированное имя класса для вашего BroadcastReceiver):
<receiver android:name="com.example.MyBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
В MyBroadcastReceiver.java:
package com.example;
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Intent startServiceIntent = new Intent(context, MyService.class);
context.startService(startServiceIntent);
}
}