Detecting when reception returns Android -
how detect when reception returns phone? there intent can register message when does? thanks
sample code: [ available here ]
package com.piusvelte.wapdroid; import static com.piusvelte.wapdroid.wapdroidservice.phone_type_cdma; import static android.telephony.neighboringcellinfo.unknown_rssi; import android.telephony.celllocation; import android.telephony.phonestatelistener; import android.telephony.signalstrength; import android.telephony.telephonymanager; // phonestatelistener api >= 7 public class phonelistenerapi7 extends phonestatelistener { private wapdroidservice mservice; public phonelistenerapi7(wapdroidservice service) { mservice = service; } public void oncelllocationchanged(celllocation location) { // calls signalstrengthchanged, since signalstrengthchanged isn't reliable enough mservice.getcellinfo(location); } public void onsignalstrengthchanged(int asu) { // add cdma support, convert signal gsm if ((mservice.mtelemanager.getphonetype() == telephonymanager.phone_type_gsm) || (mservice.mtelemanager.getphonetype() == phone_type_cdma)) mservice.signalstrengthchanged((asu > 0) && (asu != unknown_rssi) ? (2 * asu - 113) : asu); else mservice.release(); } public void onsignalstrengthschanged(signalstrength signalstrength) { if (mservice.mtelemanager.getphonetype() == telephonymanager.phone_type_gsm) { int asu = signalstrength.getgsmsignalstrength(); mservice.signalstrengthchanged((asu > 0) && (asu != unknown_rssi) ? (2 * asu - 113) : asu); } else if (mservice.mtelemanager.getphonetype() == phone_type_cdma) mservice.signalstrengthchanged(signalstrength.getcdmadbm() < signalstrength.getevdodbm() ? signalstrength.getcdmadbm() : signalstrength.getevdodbm()); else mservice.release(); } }
Comments
Post a Comment