특정 침묵 기능을 처리하는 앱이 있지만 휴대 전화가 잠자기 상태이고 컴퓨터에 연결되어 있지 않으면 작동하지 않습니다. 화면이 켜지면 모든 것이 잘 작동하지만 전화기가 잠자기 상태 일 때 작동을 멈 춥니 다. 무엇이 잘못하고 있는지 알 수 있습니까? 나는 100 개의 다른 포스트를 여기에서 점검했다. 그러나 나는 단지 내 문제를 식별 할 수 없다.잠자기시 BroadcastReciever가 실행되지 않음
Intent intent2 = new Intent(this, Silence.class);
PendingIntent pendingIntent2 = PendingIntent.getBroadcast(this, 1000 + id, intent2, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager am2 = (AlarmManager)getSystemService(Activity.ALARM_SERVICE);
am2.setRepeating(AlarmManager.RTC_WAKEUP, cal2.getTimeInMillis(), AlarmManager.INTERVAL_DAY * 7, pendingIntent2);
브로드 캐스트 리시버 :
public class MainSilenceCatcherVibrate extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent1) {
WakeLocker.acquire(context);
System.out.println("test");
WakeLocker.release();
}
}
매니페스트 사용 : 의도한다
내 알람 매니저
<uses-permission android:name="android.permission.WAKE_LOCK" />
<receiver android:name=".Silence"></receiver>
<activity android:name=".ContactActivity"></activity>
나는 내 응용 프로그램에 들어가서 "지금"(테스트 할 때와 비교하여)에서 1 분만 발사하도록 지정했습니다. 그리고 화면이 켜져 있거나 디버깅을 위해 연결되어 있으면 문제가 없습니다. 문제는 내가 뭔가를 인쇄하는 대신에 자동 모드로 데려 가기 위해 묵비권을 행사할 때 컴퓨터에서 벗겨내어 (실제로 잠을 자도록) 나옵니다. 화면을 수동으로 켜고 이전에 화면을 켰을 때 자동 모드로 전환됩니다 (심지어 PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP을 사용하더라도 컴퓨터에 연결되어 있지 않으면 화면이 켜지지 않습니다). – Reaver
@ user2523881 : ** 'adb shell dumpsys alarm' **을 사용하여 알람이 올바르게 구성되었는지 확인하십시오. STAMINA 모드를 제공하는 SONY Xperia를 사용하는 경우 사용을 중지하거나 허용 목록에 앱을 추가하십시오. – CommonsWare
STAMINA 모드에 대한 도움말을 보내 주셔서 감사합니다. 그것이 나왔던 것에 따라, 나는 소니 Xperia를 얻었고, Xperia의 전지 최적화는 나의 응용이 방송을받을 수 없게한다. – Reaver