Hirdetés
Új hozzászólás Aktív témák
-
pittbaba
aktív tag
Sziasztok!
Segítsetek nekem, mert nem értem mi zajlik..
Szeretném ha az appom újraindítaná a telefont minden nap adott óra perckor.
A reboot működik, meg van oldva, nem ez a kérdés, hanem az időzítés.
Azt olvastam, hogy erre AlarmManager a megoldás, meg is csináltam neki a reciever osztályt az egyik példa alapján ami konkrétan a google dokumentációban van.Az időzítést beállítom (on boot reciever-ben), időben elkapja az Alarm reciever, újraindítja a telefonomat. Innentől kezdve a telefon a megadott 5 perc helyett (tesztelés miatt ennyi most az intervallum nem egy nap), kb 1 percenként rebootol, nem várja meg a kezdőidőponttól eltelő öt percet. Miért?
Itt a kód:
public class RebootReceiver extends BroadcastReceiver {
private AlarmManager alarmMgr;
private PendingIntent alarmIntent;
@Override
public void onReceive(Context context, Intent intent)
{
//PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
//PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "");
//wl.acquire();
// Put here YOUR code.
Toast.makeText(context, "REBOOTING 14", Toast.LENGTH_LONG).show(); // For example
CancelAlarm(context);
Log.e("TAG","AUTO REBOOT NOW!");
try {
Process proc = Runtime.getRuntime().exec(new String[] { "su", "-c", "reboot" });
proc.waitFor();
} catch (Exception ex) {
Log.e("TAG", "Could not reboot", ex);
}
}
public void SetTimer(Context context)
{
alarmMgr = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, RebootReceiver.class);
alarmIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
// Set the alarm to start at 8:30 a.m.
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.set(Calendar.HOUR_OF_DAY, 15);
calendar.set(Calendar.MINUTE, 8);
CancelAlarm(context);
//alarmMgr.cancel(alarmIntent);
//AUTO REBOOT
//AlarmManager.INTERVAL_DAY
alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),1000*60*5, alarmIntent);
Log.e("TAG","AUTO REBOOT BEÁLLÍTVA!");
}
public void CancelAlarm(Context context)
{
Intent intent = new Intent(context, RebootReceiver.class);
PendingIntent sender = PendingIntent.getBroadcast(context, 0, intent, 0);
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
alarmManager.cancel(sender);
}
}Itt van beállítva az időzítés a bootrecieverben:
public class BootReciever extends BroadcastReceiver
{
RebootReceiver Reboot = new RebootReceiver();
@Override
public void onReceive(Context context, Intent intent) {
Log.i("TAG","BOOT Received");
String action = intent.getAction();
if(action.equalsIgnoreCase("android.intent.action.BOOT_COMPLETED"))
{
//Reboot időzítése
Reboot.SetTimer(context);
Intent myIntent=new Intent(context,com.example.thedoor.MainActivity.class);
myIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(myIntent);
}
}
}
Új hozzászólás Aktív témák
- Eredeti játékok OFF topik
- Milyen széket vegyek?
- A fociról könnyedén, egy baráti társaságban
- AMD vs. INTEL vs. NVIDIA
- Napelem
- Hálózatokról alaposan
- Mibe tegyem a megtakarításaimat?
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- A SteamOS helyett Bazzite felé fordul a GPD
- Apple iPhone 17 - alap
- További aktív témák...
- Dell Latitude 5420 - i7 1185G7 ,16-32GB RAM, 512GB SSD, jó akku, számla, 6 hó gar
- REFURBISHED és ÚJ - HP Thunderbolt Dock G2 230W with combo cable (3TR87AA)
- CoolerMaster MM710 53gr pehelykönnyű gamer egér eladó
- REFURBISHED és ÚJ - HP USB-C Dock G5 (5TW10AA) - 3x4K felbontás
- Bomba ár! Lenovo ThinkPad L490 - i5-G8 I 16GB I 256SSD I 14" FHD Touch I HDMI I Cam I W11 I Gari!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


