Guest User

Untitled

a guest
Jun 8th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 1.09 KB | None | 0 0
  1. private int getSignalIconLevel(String type) {
  2.     int iconLevel = 0;
  3.     if (isCdma() || isLTE()) {
  4.         /* TODO: Test on AT&T LTE.
  5.            But it seems LTE's signal is in getCdmaRaw() */
  6.         if (isEvdo()){
  7.                 iconLevel = getEvdoRaw();
  8.             } else {
  9.                 iconLevel = getCdmaRaw();
  10.             }
  11.     } else if (isGSM()) {
  12.         if (type.equals(RAW_TYPE)) {
  13.                     iconLevel = mSignalStrength.getGsmSignalStrength();
  14.         } else if (type.equals(BAR_TYPE)) {
  15.             int asu = mSignalStrength.getGsmSignalStrength();
  16.  
  17.                     // ASU ranges from 0 to 31 - TS 27.007 Sec 8.5
  18.                     // asu = 0 (-113dB or less) is very weak
  19.                     // signal, its better to show 0 bars to the user in such cases.
  20.                     // asu = 99 is a special case, where the signal strength is unknown.
  21.                     if (asu <= 2 || asu == 99) iconLevel = 0;
  22.                     else if (asu >= 12) iconLevel = 4;
  23.                     else if (asu >= 8)  iconLevel = 3;
  24.                     else if (asu >= 5)  iconLevel = 2;
  25.                     else iconLevel = 1;
  26.         }
  27.             }
  28.     }
  29.     return iconLevel;
  30. }
Add Comment
Please, Sign In to add comment