package Ġcom . nk ming . sys usage Ċ Ċ import Ġandroid . util . Pair Ċ Ċ object ĠNet Utils Ċ { Ċ ĉ fun Ġget Readable Speed No Unit ( bps : ĠLong ): ĠString Ċ ĉ { Ċĉ ĉ if Ġ( bps Ġ>= Ġ 1 0 0 0 0 0 0 0 0 0 L ) Ċĉ ĉ { Ċĉĉ ĉ return Ġ"% . 1 f ". format ( bps Ġ/ Ġ 1 0 0 0 0 0 0 0 0 0 . 0 ) Ċĉ ĉ } Ċĉ ĉ else Ġif Ġ( bps Ġ>= Ġ 1 0 0 0 0 0 0 L ) Ċĉ ĉ { Ċĉĉ ĉ return Ġ"% . 1 f ". format ( bps Ġ/ Ġ 1 0 0 0 0 0 0 . 0 ) Ċĉ ĉ } Ċĉ ĉ else Ġif Ġ( bps Ġ>= Ġ 1 0 0 0 L ) Ċĉ ĉ { Ċĉĉ ĉ return Ġ"% . 1 f ". format ( bps Ġ/ Ġ 1 0 0 0 . 0 ) Ċĉ ĉ } Ċĉ ĉ else Ċĉ ĉ { Ċĉĉ ĉ return Ġ"$ bps " Ċĉ ĉ } Ċ ĉ } ĊĊ ĉ fun Ġget Readable Bit Speed ( bps : ĠLong ): ĠString Ċ ĉ { Ċĉ ĉ if Ġ( bps Ġ>= Ġ 1 0 0 0 0 0 0 0 0 0 L ) Ċĉ ĉ { Ċĉĉ ĉ return Ġ"% . 1 f ĠG bit / s ". format ( bps Ġ/ Ġ 1 0 0 0 0 0 0 0 0 0 . 0 ) Ċĉ ĉ } Ċĉ ĉ else Ġif Ġ( bps Ġ>= Ġ 1 0 0 0 0 0 0 L ) Ċĉ ĉ { Ċĉĉ ĉ return Ġ"% . 1 f ĠM bit / s ". format ( bps Ġ/ Ġ 1 0 0 0 0 0 0 . 0 ) Ċĉ ĉ } Ċĉ ĉ else Ġif Ġ( bps Ġ>= Ġ 1 0 0 0 L ) Ċĉ ĉ { Ċĉĉ ĉ return Ġ"% . 1 f Ġk bit / s ". format ( bps Ġ/ Ġ 1 0 0 0 . 0 ) Ċĉ ĉ } Ċĉ ĉ else Ċĉ ĉ { Ċĉĉ ĉ return Ġ"$ bps Ġbit / s " Ċĉ ĉ } Ċ ĉ } ĊĊ ĉ fun Ġget Readable Byte Speed ( bps : ĠLong ): ĠString Ċ ĉ { Ċĉ ĉ if Ġ( bps Ġ>= Ġ 1 0 0 0 0 0 0 0 0 0 L ) Ċĉ ĉ { Ċĉĉ ĉ return Ġ"% . 1 f ĠG Byte / s ". format ( bps Ġ/ Ġ 1 0 0 0 0 0 0 0 0 0 . 0 ) Ċĉ ĉ } Ċĉ ĉ else Ġif Ġ( bps Ġ>= Ġ 1 0 0 0 0 0 0 L ) Ċĉ ĉ { Ċĉĉ ĉ return Ġ"% . 1 f ĠM Byte / s ". format ( bps Ġ/ Ġ 1 0 0 0 0 0 0 . 0 ) Ċĉ ĉ } Ċĉ ĉ else Ġif Ġ( bps Ġ>= Ġ 1 0 0 0 L ) Ċĉ ĉ { Ċĉĉ ĉ return Ġ"% . 1 f Ġk Byte / s ". format ( bps Ġ/ Ġ 1 0 0 0 . 0 ) Ċĉ ĉ } Ċĉ ĉ else Ċĉ ĉ { Ċĉĉ ĉ return Ġ"$ bps ĠByte / s " Ċĉ ĉ } Ċ ĉ } ĊĊ ĉ /** Ċĉ Ġ* ĠReturn Ġthroughput Ġfor Ġvarious Ġmobile Ġnetwork Ġtype . ĠThese Ġfigures Ġare Ċĉ Ġ* Ġpretty Ġrandom ĠB TW Ġ:) Ċĉ Ġ* Ċĉ Ġ* Ġ@ param Ġtype Ċĉ Ġ* Ġ@ return ĠDown link Ġand Ġup link Ġthroughput Ġof Ġsaid Ġnetwork , Ġin Ġbit / s . Ġnull Ġif Ċĉ Ġ* Ġnetwork Ġunknown Ċĉ Ġ*/ Ċ ĉ fun Ġget Mobile Net Through put ( type : ĠString ): ĠPair < Long , ĠLong > Ċ ĉ { Ċĉ ĉ return Ġwhen Ġ( type . toUpperCase ()) Ċĉ ĉ { Ċĉĉ ĉ " LTE " Ġ-> ĠPair ( 1 5 L Ġ* Ġ 1 0 0 0 0 0 0 L , Ġ 5 L Ġ* Ġ 1 0 0 0 0 0 0 L ) Ċĉĉ ĉ " WI MAX " Ġ-> ĠPair ( 1 0 L Ġ* Ġ 1 0 0 0 0 0 0 L , Ġ 2 L Ġ* Ġ 1 0 0 0 0 0 0 L ) Ċĉĉ ĉ " H SPA +" Ġ-> ĠPair ( 1 0 L Ġ* Ġ 1 0 0 0 0 0 0 L , Ġ 2 L Ġ* Ġ 1 0 0 0 0 0 0 L ) Ċĉĉ ĉ " H SPA " Ġ-> ĠPair ( 7 2 0 0 L Ġ* Ġ 1 0 0 0 L , Ġ 1 5 0 0 L Ġ* Ġ 1 0 0 0 L ) Ċĉĉ ĉ " 3 G " Ġ-> ĠPair ( 5 0 0 L Ġ* Ġ 1 0 0 0 L , Ġ 5 0 0 L Ġ* Ġ 1 0 0 0 L ) Ċĉĉ ĉ " EDGE " Ġ-> ĠPair ( 3 8 4 L Ġ* Ġ 1 0 0 0 L , Ġ 3 8 4 L Ġ* Ġ 1 0 0 0 L ) Ċĉĉ ĉ " 2 G " Ġ-> ĠPair ( 1 7 2 L Ġ* Ġ 1 0 0 0 L , Ġ 1 7 2 L Ġ* Ġ 1 0 0 0 L ) Ċĉĉ ĉ else Ġ-> Ġthrow ĠIllegalArgumentException (" Unknown Ġnetwork Ġtype : Ġ$ type ") Ċĉ ĉ } Ċ ĉ } Ċ } Ċ