2016-09-07 11 views
0

안드로이드에 의해 신호 강도를 사용하여 모바일 인터넷 (업로드 속도)의 속도를 계산하는 방법 안드로이드 : 나는 코드 아래 사용하여 신호의 강도를 찾을 수 있었다 프로그래밍 방식

protected int getSignalStrength(SignalStrength signal) { 
      String ssignal = signal.toString(); 
      String[] parts = ssignal.split(" "); 

      int dB = -120; // No Signal Measured when returning -120 dB 

      // If LTE 
      if (telephonyManager.getNetworkType() == TelephonyManager.NETWORK_TYPE_LTE){ 

       int ltesignal = Integer.parseInt(parts[9]); 

       // check to see if it get's the right signal in dB, a signal below -2 
       if(ltesignal < -2) { 
        dB = ltesignal; 
       } 
      } 
      // Else 3G 
      else { 

       if (signal.getGsmSignalStrength() != 99) { 

        int strengthInteger = -113 + 2 * signal.getGsmSignalStrength(); 
        dB = strengthInteger; 
       } 
      } 

      return dB; 
     } 

어떻게 속도를 계산 프로그래밍 방식으로 신호 강도를 사용하여 모바일 인터넷 (업로드 속도/다운로드 속도) ?? 이게 내 질문이야?

+0

신호 강도가 다운로드/업로드 속도에 해당하지 않습니다. –

+0

데이터 업로드 속도를 찾는 방법 n ... 다운로드 할 수 있습니다. pls – kgsharathkumar

+1

소스 코드에서 speedtest.net을 (를) 사용하면 도움이 될 수 있습니다. http : // www .gregbugaj.com /? attachment_id = 70 –

답변

0

페이스 북은 이것에 대한 라이브러리를 출시 :

https://github.com/facebook/network-connection-class

라이브러리 설명 :

는 응용 프로그램에서 현재의 네트워크 트래픽을 듣고 네트워크의 품질을 분류합니다.

+0

안드로이드 스튜디오에서 가져온 프로젝트 ** 가져 오기 javax.annotation.Nonnull; ** 오류 ... 내가 추가 할 필요가있는 의존성을 말할 수 있습니까? 'org.jetbrains : annotations : 7.0.2'를 컴파일했지만 시도하지 않았습니다. – kgsharathkumar

+0

gradle을 사용하여 라이브러리를 추가 할 수 있습니다. 'compile'com.facebook을 추가하십시오. .network.connectionclass : connectionclass : 1.0.1 ''을 앱의 gradle 의존성에 적용하십시오. –