Wie lautet der branchenübliche Weg, eine lang andauernde, ständig überwachte Aufgabe in Android zu implementieren?Welchen branchenüblichen Weg bietet eine lang andauernde, ständig überwachte Aufgabe in Android?
Zum Beispiel gibt es eine Möglichkeit, die Zellsignalstärke zu erhalten:
public void getData(){
int cellSignalStrength = 0;
TelephonyManager telephonyManager = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
List<CellInfo> cellInfos = telephonyManager.getAllCellInfo();
for(CellInfo info : cellInfos){
if(info instanceof CellInfoCdma){
cellSignalStrength = ((CellInfoCdma) info).getCellSignalStrength().getLevel();
} else if(info instanceof CellInfoGsm){
cellSignalStrength = ((CellInfoGsm) info).getCellSignalStrength().getLevel();
} else if(info instanceof CellInfoLte){
cellSignalStrength = ((CellInfoLte) info).getCellSignalStrength().getLevel();
} else if(info instanceof CellInfoWcdma){
cellSignalStrength = ((CellInfoWcdma) info).getCellSignalStrength().getLevel();
}
}
}
Offensichtlich würde Ich mag diese ständig überwachen. Ist ein Timer
mit TimerTask
der "beste", industrie-bevorzugte Weg, um dies ständig zu überwachen?
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
getData();
}
}, 100);
Oder gibt es eine andere, eine bessere Art und Weise, dies zu tun, wie eine while(true)
Schleife innerhalb eines Android-Service?
Danke!
Bitte definieren Sie, was "konstant" in diesem Zusammenhang bedeutet. Meinst du "ständig während meine Tätigkeit, die diese Daten benötigt, im Vordergrund steht"? – CommonsWare
Ja, während die Aktivität im Vordergrund steht. Ich entschuldige mich dafür, dass ich das vergessen habe. –