導航:首頁 > 操作系統 > android判斷wifi是否打開

android判斷wifi是否打開

發布時間:2022-10-02 20:24:42

android 判斷wifi是否打開

//獲取系統服務
ConnectivityManager manager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
//獲取狀態
State wifi = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();
//判斷wifi已連接的條件
if(wifi == State.CONNECTED||wifi==State.CONNECTING)
希望我的回答能幫助到你,滿意請採納,謝謝!

② android 判斷是否有網路

用戶手機當前網路可用:WIFI、2G/3G網路,用戶打開與不打開網路,和是否可以用是兩碼事。可以使用指的是:用戶打開網路了並且可以連上互聯網進行上網。
檢測當前網路是否可用,代碼如下:
/**
* 檢測當的網路(WLAN、3G/2G)狀態
* @param context Context
* @return true 表示網路可用
*/
public static boolean isNetworkAvailable(Context context) {
ConnectivityManager connectivity = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null) {
NetworkInfo info = connectivity.getActiveNetworkInfo();
if (info != null && info.isConnected())
{
// 當前網路是連接的
if (info.getState() == NetworkInfo.State.CONNECTED)
{
// 當前所連接的網路可用
return true;
}
}
}
return false;
}
/**
* 檢測當的網路(WLAN、3G/2G)狀態
* @param context Context
* @return true 表示網路可用
*/
public static boolean isNetworkAvailable(Context context) {
ConnectivityManager connectivity = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null) {
NetworkInfo info = connectivity.getActiveNetworkInfo();
if (info != null && info.isConnected())
{
// 當前網路是連接的
if (info.getState() == NetworkInfo.State.CONNECTED)
{
// 當前所連接的網路可用
return true;
}
}
}
return false;
}

在AndroidManifest.xml文件添加的許可權:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>

③ android 怎麼判斷當前網路連接是否可以連接到外網

Android里判斷是否可以上網,常用的是如下方法:

/**
* 檢測網路是否連接
*
* @return
*/
private boolean isNetworkAvailable() {
// 得到網路連接信息
ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
// 去進行判斷網路是否連接
if (manager.getActiveNetworkInfo() != null) {
return manager.getActiveNetworkInfo().isAvailable();
}
return false;
}

有時候我們連接上一個沒有外網連接的WiFi或者有線就會出現這種極端的情況,目前Android SDK還不能識別這種情況,一般的解決辦法就是ping一個外網。

/* @author suncat
* @category 判斷是否有外網連接(普通方法不能判斷外網的網路是否連接,比如連接上區域網)
* @return
*/
public static final boolean ping() {

String result = null;
try {
String ip = "www..com";// ping 的地址,可以換成任何一種可靠的外網
Process p = Runtime.getRuntime().exec("ping -c 3 -w 100 " + ip);// ping網址3次
// 讀取ping的內容,可以不加
InputStream input = p.getInputStream();
BufferedReader in = new BufferedReader(new InputStreamReader(input));
StringBuffer stringBuffer = new StringBuffer();
String content = "";
while ((content = in.readLine()) != null) {
stringBuffer.append(content);
}
Log.d("------ping-----", "result content : " + stringBuffer.toString());
// ping的狀態
int status = p.waitFor();
if (status == 0) {
result = "success";
return true;
} else {
result = "failed";
}
} catch (IOException e) {
result = "IOException";
} catch (InterruptedException e) {
result = "InterruptedException";
} finally {
Log.d("----result---", "result = " + result);
}
return false;
}

④ android 怎麼判斷是否wifi

AndroidAPI有提供獲取網路狀態以及網路類型的介面,代碼也很簡單

NetworkInfonetworkInfo=(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE).getActiveNetworkInfo();

if(networkInfo!=null&&networkInfo.isConnected()){

if(networkInfo.getType()==ConnectivityManager.TYPE_WIFI)//這個狀態就是wifi

//TODO

}elseif(networkInfo.getType()==ConnectivityManager.TYPE_MOBILE)

{

//TODO

}

}

希望能幫到你

一下這些是源碼中的一些網路類型定義,可以參考一下

⑤ 如何檢查Android中的WiFi網路是否連接成功

01.public boolean isWifiConnect() {
02. ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
03. NetworkInfo mWifi = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
04. return mWifi.isConnected();
05. }
代碼非常簡單,操作也非常簡單。

01.boolean isConnected;
02.isConnected = isWifiConnect();
03.if (isConnected == false) {
04.Toast toast = Toast.makeText(Sync.this, "Wifi is NOT connected yet", Toast.LENGTH_SHORT);
05.toast.setGravity(Gravity.CENTER, 0, 0);
06.toast.show();
07.} else {
08.Toast toast = Toast.makeText(Sync.this, "Wifi is connected yet", Toast.LENGTH_SHORT);
09.toast.setGravity(Gravity.CENTER, 0, 0);
10.toast.show();
11.}

⑥ 安卓獲取用戶是否開啟wifi

可以開啟,但是最好是你要知道這個程序是幹嘛的,選擇性地開啟,像瀏覽一些網頁那些可以自動開啟
但是如果是交易,或者是私密聊天、雲端上傳那些最好不要開啟,還是選擇安全的wifi吧,畢竟很多免費wifi就是故意免費獲取你手機信息的。

⑦ android手機連接WiFi,WiFi連接modem,在android開發代碼實現如何判斷手機是否能上網。

java">/**
*檢測網路是否連接
*@return
*/
(){
booleanflag=false;
//得到網路連接信息
manager=(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
//去進行判斷網路是否連接
if(manager.getActiveNetworkInfo()!=null){
flag=manager.getActiveNetworkInfo().isAvailable();
}
if(!flag){
setNetwork();
}else{
isNetworkAvailable();
}
returnflag;
}
/**
*網路未連接時,調用設置方法
*/
privatevoidsetNetwork(){
Toast.makeText(this,"wifiisclosed!",Toast.LENGTH_SHORT).show();

AlertDialog.Builderbuilder=newAlertDialog.Builder(this);
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("網路提示信息");
builder.setMessage("網路不可用,如果繼續,請先設置網路!");
builder.setPositiveButton("設置",newOnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
Intentintent=null;
/**
*判斷手機系統的版本!如果API大於10就是3.0+
*因為3.0以上的版本的設置和3.0以下的設置不一樣,調用的方法不同
*/
if(android.os.Build.VERSION.SDK_INT>10){
intent=newIntent(android.provider.Settings.ACTION_WIFI_SETTINGS);
}else{
intent=newIntent();
ComponentNamecomponent=newComponentName(
"com.android.settings",
"com.android.settings.WirelessSettings");
intent.setComponent(component);
intent.setAction("android.intent.action.VIEW");
}
startActivity(intent);
}
});
builder.setNegativeButton("取消",newOnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
}
});
builder.create();
builder.show();
}

/**
*網路已經連接,然後去判斷是wifi連接還是GPRS連接
*設置一些自己的邏輯調用
*/
privatevoidisNetworkAvailable(){

Stategprs=manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();
Statewifi=manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();
if(gprs==State.CONNECTED||gprs==State.CONNECTING){
Toast.makeText(this,"wifiisopen!gprs",Toast.LENGTH_SHORT).show();
}
//判斷為wifi狀態下才載入廣告,如果是GPRS手機網路則不載入!
if(wifi==State.CONNECTED||wifi==State.CONNECTING){
Toast.makeText(this,"wifiisopen!wifi",Toast.LENGTH_SHORT).show();
loadAdmob();
}

}

/**
*在wifi狀態下載入admob廣告
*/
privatevoidloadAdmob(){
ll=(LinearLayout)findViewById(R.id.load_ads);
ll.removeAllViews();
adsView=newAdView(this,AdSize.BANNER,"a15194a1ac9505d");
ll.addView(adsView);

adsView.loadAd(newAdRequest());
}

⑧ 如何檢查Android中的WiFi網路是否連接成功

安卓手機連上wifi後查看連接埠的方法為:1、ROOT手機,具體步驟為:a、將手機連接到WIFI或者使用蜂窩數據網路。b、在手機上下載並安裝超級ROOT。c、點擊ROOT開始操作按鈕。d、依據提示完成重啟即可。2、然後下載RE管理器。獲取許可權後,在根目錄下進入data這個文件夾,往下拉,進入misc文件夾,然後再往下拉會看見一個叫wifi的文件夾,點擊進入,最後一個文件就是。

⑨ android應該如何實現 判斷連上wifi 但沒有網路的情況

可以使用當前網路去訪問外網資源,如果能訪問成功,說明當前網路是可用的,否則不能用。
不管哪個平台或者什麼語言,都可以用這種方法。因為只有當網路連接上,並且可用才能訪問外網的資源。由此便可判斷當前網路的可用性。

閱讀全文

與android判斷wifi是否打開相關的資料

熱點內容
滴滴金融app被下架如何還款 瀏覽:208
jpg轉換成pdf免費軟體 瀏覽:741
范里安pdf 瀏覽:443
偽造pdf 瀏覽:75
能刪除android文件夾嗎 瀏覽:446
LINUX使用V2ray 瀏覽:797
找人幫忙注冊app推廣是什麼 瀏覽:820
獨立伺服器如何恢復初始化 瀏覽:11
優秀到不能被忽視pdf 瀏覽:316
導遊程序員家政 瀏覽:586
22乘28的快速演算法 瀏覽:337
軟通動力程序員節2021 瀏覽:845
安卓系統如何卸載安裝包 瀏覽:870
簡訊刪除助手文件夾 瀏覽:688
java辦公自動化 瀏覽:342
php中超鏈接 瀏覽:254
linux默認路由設置 瀏覽:36
linux如何掛載iso 瀏覽:432
vs程序換文件夾後不能編譯 瀏覽:558
安卓源碼編譯輸入腳本沒反應 瀏覽:47