當前位置:首頁 » 無線網路 » 獲取網路信號強度
擴展閱讀

獲取網路信號強度

發布時間: 2022-01-24 11:27:18

無線網路信號強度在什麼級別是正常的

無線信號強度:正常的范圍是-90dBm~-60dBm。
中國移動的規范規定,手機接收電平>=(城市取-90dBm ;鄉村取 -94dBm )時,則滿足覆蓋要求,也就是說此處無線信號強度滿足覆蓋要求。
dB是兩個量之間的比值,表示兩個量間的相對大小,而dBm則是表示功率絕對大小的值。在dB,dBm計算中,要注意基本概念,用一個dBm減另外一個dBm時,得到的結果是dB,如:30dBm - 0dBm = 30dB。
手機上顯示的數字的單位是dBm,這個值是負的,也就是說手機會顯示比如-67(dBm),那就說明信號很強了。
-67dBm 要比-90dBm 信號要強20多個dB ,那麼在打電話接通成功率和通話過程中的話音質量都會好的多(當然也包括EDGE/GPRS上網的速度那些 )。
嘗試如下,那個值越大信號就越好,因為那是個負值;如果附近有無線基站的天線的話,盡量接近天線面板,那麼值就越來越大,如果手機跟天線面板挨到一起,那麼就可能十分接近於0了(0是達不到的,這里的0的意思也不是說手機沒信號了。)
在信號強度計選擇工程模式,顯示了很多參數,只要看BCCHLev(控制信道電平值),它就是手機的信號強度值,單位dBm,你的手機信號可以正常接聽的范圍BCCHLev-C1,C1也有顯示數值,如:BCCHLev(-63) ,C1(34),表示在信號大於-97dBm的狀況下是不會掉話的。
再來看手機發射功率要多大才合適呢,按GSM協議規定,手機發射功率是可以被基站控制的。基站通過下行SACCH信道,發出命令控制手機的發射功率級別,每個功率級別差2dB,GSM900 手機最大發射功率級別是5(2W=2000mw,33dBm),最小發射功率級別是19(3mw,5dBm),DCS1800手機最大發射功率級別是0(1W,30dBm),最小發射功率級別是15(1mW,0dBm)。當手機遠離基站,或者處於無線陰影區時,基站可以命令手機發出較大功率,直至33dBm(GSM900),以克服遠距離傳輸或建築物遮擋所造成的信號損耗。

② Windows API中如何獲取無線網路的信號強度和詳細信息

MSDN上不是說了嗎,這個函數只支持
Requirements
Minimum supported client
Windows Vista
Minimum supported server
Windows Server 2008

③ windows下如何獲得wifi信號強度信息新手小白跪求指導!完美解決可加分!!!!!

同是小白哈 你看無線網路連接那地方(電腦右下角點擊網路圖標) cmcc顯示的小格子 就和手機上的一樣 格子越多 信號越強 希望對你有幫助~~~~·

④ 能夠實現檢測網路信號強度的設備或元器件(財富值不多,被採納的回答者我願意發紅包感謝)

「How Secure Is My Password?」網站是一個可以幫助用戶檢測自己所設置的密碼安全性和被破解所花費時間的檢測網站,其目的是告訴用戶密碼不要設置成簡單的123456,而是要包含數字、字母、特殊符號等,提高密碼的安全能力。
space

網路的發達導致了用戶需要設置很多的密碼,為了方便起見很多人都設置了相對簡單的密碼,這是的做法是非常不安全的,想知道你設置的密碼會不會被破解?需要多長時間才能破解?你可以利用「How Secure Is My Password?」這個工具來在線檢測。
使用方法:打開網站後,將密碼輸入進去,就會直接現實被破解所需要的時間,網站的背景顏色也會隨著密碼的安全度進行變化,本人也算是經常用電腦的人了,但是輸入密碼進去以後,竟然不用一秒鍾就被破解,真是道高一尺魔高一丈呀,加強密碼安全勢在必行了。
相關網站

Mitto密碼管理

密碼生成

FlowerPassWord:花密密碼管理專家

My1Login:基於雲密碼管理分享應用

Fidoalliance:密碼安全認證聯盟

SafeinClou:在線ASE加密密碼管理應用

Pass Word Svvy

Passible:專業級密碼管理應用

⑤ 如何獲得在Android的LTE信號的強度

Android手機信號強度檢測詳細介紹
作者:skxy 字體:[增加 減小] 類型:轉載 時間:2016-11-17 我要評論
這篇文章主要介紹了Android手機信號強度檢測的相關資料,android定義了2種信號單位:dBm和asu。具體兩種的關系本文給大家介紹非常詳細,需要的朋友可以參考下

最近到處在跑著找工作,難免在面試過程中遇到這樣那樣的問題,記得最清楚一次在面試過程中被問到,當手機處於弱網狀態下,如何處理,如何監聽網路信號強度變化。但是真是蒙了,回答的亂七八糟,思路一點都不明確。今天小編在這里帶領大家了解下關於手機信號強度的相關幾個概念。
Android手機信號強度介紹
android定義了2種信號單位:dBm和asu。它們之間的關系是:dBm =-113+2asu,這是google給android手機定義的特有信號單位。例如,我的信號強度為-53dBm,則對應30asu,因為-53 = -113 + (230) 。
詳細介紹兩者:
asu:alone signal unit 獨立信號單元,是一種模擬信號。ASU僅僅代表手機將它的位置傳遞給附近的信號塔的速率。它和dBm測量的是一樣的東西,但是是以一種更加線性的方式來表示。
dBm:是一個表示功率絕對值的值(也可以認為是以1mW功率為基準的一個比值),計算公式為:10log(功率值/1mw)。
[例] 如果功率P為1mw,折算為dBm後為0dBm。
[例] 對於0.01mW的功率,按dBm單位進行折算後的值應為: 10log(0.01/1)=-20dBm。
這個數值越大,表明信號越好。由於手機信號強度一般較小,折算成為dBm一般都是負數。
中國移動的規范規定,手機接收電平>=(城市取-90dBm;鄉村取-94dBm) 時,則滿足覆蓋要求,
也就是說此處無線信號強度滿足覆蓋要求.-67dBm要比-90dBm信號要強20多個dB,
那麼它在打電話接通成功率和通話過程中的話音質量都會好的多。再引入一個相關概念dB。
dB:是一個表徵相對值的值,純粹的比值,只表示兩個量的相對大小關系,沒有單位,當考慮甲的功率相比於乙功率大或小多少個dB時,按下面的計算公式:10log(甲功率/乙功率),如果採用兩者的電壓 比計算,要用20log(甲電壓/乙電壓)。
[例] 甲功率比乙功率大一倍,那麼10lg(甲功率/乙功率)=10lg2=3dB,即甲的功率比乙的功率大3 dB。反之,如果甲的功率是乙的功率的一半,則甲的功率比乙的功率小3 dB。
總結:dBm是負數,越接近0信號強度越高,信號越好,但不可能為0。asu為正數,值越大信號越好。dB是兩個量之間的比值,表示兩個量間的相對大小,而dBm則是表示功率絕對大小的值。
關於對數運算,不記得的自行復習一下了。
下面再來了解一下網路類型吧,還是很多的,不過在國內只要了解國內三大運營商的網路類型大概就可以了。
電信
2G CDMA
3G CDMA2000
4G TD-LTE,FDD-LTE
移動
2G GSM
3G TD-SCDMA
4G TD-LTE,FDD-LTE
聯通
2G GSM
3G WCDMA
4G TD-LTE,FDD-LTE
而谷歌API給我們提供的有19種類型,在TelephonyManager類中定義,具體如下
/** Network type is unknown */
public static final int NETWORK_TYPE_UNKNOWN = 0;
/** Current network is GPRS */
public static final int NETWORK_TYPE_GPRS = 1;
/** Current network is EDGE */
public static final int NETWORK_TYPE_EDGE = 2;
/** Current network is UMTS */
public static final int NETWORK_TYPE_UMTS = 3;
/** Current network is CDMA: Either IS95A or IS95B*/
public static final int NETWORK_TYPE_CDMA = 4;
/** Current network is EVDO revision 0*/
public static final int NETWORK_TYPE_EVDO_0 = 5;
/** Current network is EVDO revision A*/
public static final int NETWORK_TYPE_EVDO_A = 6;
/** Current network is 1xRTT*/
public static final int NETWORK_TYPE_1xRTT = 7;
/** Current network is HSDPA */
public static final int NETWORK_TYPE_HSDPA = 8;
/** Current network is HSUPA */
public static final int NETWORK_TYPE_HSUPA = 9;
/** Current network is HSPA */
public static final int NETWORK_TYPE_HSPA = 10;
/** Current network is iDen */
public static final int NETWORK_TYPE_IDEN = 11;
/** Current network is EVDO revision B*/
public static final int NETWORK_TYPE_EVDO_B = 12;
/** Current network is LTE */
public static final int NETWORK_TYPE_LTE = 13;
/** Current network is eHRPD */
public static final int NETWORK_TYPE_EHRPD = 14;
/** Current network is HSPA+ */
public static final int NETWORK_TYPE_HSPAP = 15;
/** Current network is GSM {@hide} */
public static final int NETWORK_TYPE_GSM = 16;
/** Current network is TD_SCDMA {@hide} */
public static final int NETWORK_TYPE_TD_SCDMA = 17;
/** Current network is IWLAN {@hide} */
public static final int NETWORK_TYPE_IWLAN = 18;

下面通過一些實例來測試一下吧

首先記得加許可權
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

實例代碼
public class MainActivity extends AppCompatActivity {
private static final int NETWORKTYPE_WIFI = 0;
private static final int NETWORKTYPE_4G = 1;
private static final int NETWORKTYPE_2G = 2;
private static final int NETWORKTYPE_NONE = 3;
public TextView mTextView;
public TelephonyManager mTelephonyManager;
public PhoneStatListener mListener;
/**
* 網路信號強度監聽
*
* @param savedInstanceState
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTextView = (TextView) findViewById(R.id.textview);
//獲取telephonyManager
mTelephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
//開始監聽
mListener = new PhoneStatListener();
//監聽信號強度
mTelephonyManager.listen(mListener, PhoneStatListener.LISTEN_SIGNAL_STRENGTHS);
}
@Override
protected void onResume() {
super.onResume();
mTelephonyManager.listen(mListener, PhoneStatListener.LISTEN_SIGNAL_STRENGTHS);
}
@Override
protected void onPause() {
super.onPause();
//用戶不在當前頁面時,停止監聽
mTelephonyManager.listen(mListener, PhoneStatListener.LISTEN_NONE);
}
private class PhoneStatListener extends PhoneStateListener {
//獲取信號強度
@Override
public void onSignalStrengthsChanged(SignalStrength signalStrength) {
super.onSignalStrengthsChanged(signalStrength);
//獲取網路信號強度
//獲取0-4的5種信號級別,越大信號越好,但是api23開始才能用
// int level = signalStrength.getLevel();
int gsmSignalStrength = signalStrength.getGsmSignalStrength();
//獲取網路類型
int netWorkType = getNetWorkType(MainActivity.this);
switch (netWorkType) {
case NETWORKTYPE_WIFI:
mTextView.setText("當前網路為wifi,信號強度為:" + gsmSignalStrength);
break;
case NETWORKTYPE_2G:
mTextView.setText("當前網路為2G移動網路,信號強度為:" + gsmSignalStrength);
break;
case NETWORKTYPE_4G:
mTextView.setText("當前網路為4G移動網路,信號強度為:" + gsmSignalStrength);
break;
case NETWORKTYPE_NONE:
mTextView.setText("當前沒有網路,信號強度為:" + gsmSignalStrength);
break;
case -1:
mTextView.setText("當前網路錯誤,信號強度為:" + gsmSignalStrength);
break;
}
}
}
public static int getNetWorkType(Context context) {
int mNetWorkType = -1;
ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = manager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected()) {
String type = networkInfo.getTypeName();
if (type.equalsIgnoreCase("WIFI")) {
mNetWorkType = NETWORKTYPE_WIFI;
} else if (type.equalsIgnoreCase("MOBILE")) {
return isFastMobileNetwork(context) ? NETWORKTYPE_4G : NETWORKTYPE_2G;
}
} else {
mNetWorkType = NETWORKTYPE_NONE;//沒有網路
}
return mNetWorkType;
}
/**判斷網路類型*/
private static boolean isFastMobileNetwork(Context context) {
TelephonyManager telephonyManager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
if (telephonyManager.getNetworkType() == TelephonyManager.NETWORK_TYPE_LTE) {
//這里只簡單區分兩種類型網路,認為4G網路為快速,但最終還需要參考信號值
return true;
}
return false;
}
}

關於信號獲取流程,這個還需深入研究,目前只在應用層簡單獲取了網路信號。

⑥ 求助,js如何檢測 移動端 網路信號

<script type="text/javascript">
function browserRedirect() {
var sUserAgent = navigator.userAgent.toLowerCase();
var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";
var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";
var bIsMidp = sUserAgent.match(/midp/i) == "midp";
var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4";
var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb";
var bIsAndroid = sUserAgent.match(/android/i) == "android";
var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce";
var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";
if (!(bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) ){
window.location.href=B頁面;
}
}
browserRedirect(); </script>

怎麼獲取無線網路信號強度

主要看工作環境,如果信號不好的台式機與路由器隔了兩堵牆的話信號不好很正常。如果想要信號好的話請調整路由器的位置。TP-LINK的路由器,好像無法設置功率,天線好像不可以更換。如果你的路由器使用TNC或者SMA介面的天線的話,你可以試著更換高增益的天線,或者加信號放大器。不過不建議加放大器,因為畢竟增加了功率就增加了輻射,家庭環境小心為妙。台式機的無線網卡,也就是你說的「接收器」(實際上雙向的信號,發射,接收同時進行。並不是像電視單向的廣播。想想看如果你不發射信號的話,你要看什麼網頁伺服器又怎麼知道?怎麼給你發送數據?)最好不要用USB介面的,天線增益太小。最好用PCI帶天線的會好一些。

⑧ android 如何獲取LTE小區信息,包括信號強度、TAC等

以MIUI系統為例來說明一下Android獲取網路信號強度等信息步驟:

1、打開手機設置應用,在設置頁面中,選擇「關於手機」選項。