1. 程式人生 > >get方式網路請求+藍芽狀態判斷+wifi狀態判斷

get方式網路請求+藍芽狀態判斷+wifi狀態判斷

package com.bawei.bluetoodemo;

import android.bluetooth.BluetoothAdapter;
import android.content.Context;
import android.net.wifi.WifiManager;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

import com.google.gson.Gson;

import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;

public class MainActivity extends AppCompatActivity {
private TextView tv,tv1;
private WifiManager wm;
private ListView lv;
String str=”藍芽狀態:”;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv= (TextView) findViewById(R.id.tv);
tv1= (TextView) findViewById(R.id.tv1);
lv= (ListView) findViewById(R.id.lv);
//判斷是否有網路
ConnectivityManager cm= (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getActiveNetworkInfo();
if(info!=null){
Toast.makeText(MainActivity.this,”當前狀態有網路”,Toast.LENGTH_LONG).show();
}else{
Toast.makeText(MainActivity.this,”當前沒有網路連線”,Toast.LENGTH_LONG).show();

    }
    //藍芽狀態
    BluetoothAdapter ba=BluetoothAdapter.getDefaultAdapter();
    if(ba!=null){
        if(ba.isEnabled()){
         //為true 開
            tv.setText(str+"開");
        }else{
            //為false   關
            tv.setText(str+"關");
        }
    }else{
        Toast.makeText(this,"當前不支援藍芽",Toast.LENGTH_LONG).show();
        tv.setText(str+"當前狀態不可用");
    }
    //WiFi  狀態
    wm= (WifiManager) getSystemService(Context.WIFI_SERVICE);
    int state = wm.getWifiState();

    switch (state){
        case 0:
            tv1.setText("wifi正在關閉");
            break;
        case 1:
            tv1.setText("wifi已經關閉");
            break;
        case 2:
            tv1.setText("wifi正在開啟");
            break;
        case 3:
            tv1.setText("wifi已經開啟");
            break;
    }

    if(state==3){
        //非同步
       new AsyncTask<String, Integer, String>() {
           @Override
           protected String doInBackground(String... strings) {
               String json_str="";
               //解析介面
               try {
                   URL url=new URL("https://www.toutiao.com/api/pc/focus/");
                   HttpURLConnection conn = (HttpURLConnection) url.openConnection();
                   conn.setConnectTimeout(5000);
                   conn.setReadTimeout(5000);
                   int code = conn.getResponseCode();
                   //判斷狀態碼

                   if(code==200){
                       InputStream is = conn.getInputStream();
                       byte arr[]=new byte[1024];
                       int len=0;
                       while((len=is.read(arr))!=-1){
                           String s = new String(arr, 0, len);
                           json_str+=s;
                       }

                   }

               } catch (MalformedURLException e) {
                   e.printStackTrace();
               } catch (IOException e) {
                   e.printStackTrace();
               }
               return json_str;
           }

           @Override
           protected void onPostExecute(String s) {
             //  super.onPostExecute(s);
               //json  字串  json_str
               Gson gson=new Gson();
               User u = gson.fromJson(s, User.class);
               List<User.DataBean.PcFeedFocusBean> list =  u.getData().getPc_feed_focus();
               //介面卡
               Myadapter adapter=new Myadapter(MainActivity.this,list);
               lv.setAdapter(adapter);
           }
       }.execute();
    }else{
        Toast.makeText(MainActivity.this,state+"當前無網路連線",Toast.LENGTH_LONG).show();
    }

}

}
/////////////////////////介面卡//////
package com.bawei.bluetoodemo;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.AsyncTask;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;

/**
* Created by 王利博 on 2017/12/1.
*/

public class Myadapter extends BaseAdapter{
private Context context;
private List

相關推薦

get方式網路請求+狀態判斷+wifi狀態判斷

package com.bawei.bluetoodemo; import android.bluetooth.BluetoothAdapter; import android.content.Context; import android.net.wif

get方式網路其你去+狀態判斷+wifi狀態判斷

package com.bawei.bluetoodemo; import android.bluetooth.BluetoothAdapter;  import android.content.Context;  import android.net.wifi.Wif

表單預設採用method=GET方式傳送請求

<form action="/login"><table> <tr>  <td>使用者名稱:</td>  <td><input type="text" name="username" />&l

在JavaScript中使用GET方式提交請求,親測可用。。。

在使用jsp+Servlet做一個分頁效果時,遇到了JavaScript使用get方式傳送請求的問題,具體效果如下圖: 點選轉到按鈕,呼叫js的函式,把頁碼引數傳給Servlet,Servlet接

Android BLE 4.0 屬性判斷

 * Characteristic proprty: Characteristic is broadcastable. * 可以廣播,二進位制0001 */publicstaticfinalint PROPERTY_BROADCAST = 0x01;  /** * Characteristic proper

tomcat下get方式提交請求亂碼解決辦法

最近在程式設計的時候,發現分別用get和post傳送中文資料,後者可以得到正確結果, 前者卻是亂碼。查了些資料,發現伺服器對post和get請求的資料的編碼處理是不一樣的 。現把tomcat下get和url直接傳送請求亂碼的解決辦法列舉如下: 方法1.  String n

判斷WIFi狀態的NetUtils

public class NetUtils { public static boolean isConnected() { ConnectivityManager connectivity = (ConnectivityManager) MyApplication.sCon

判斷Wifi狀態是否可用

獲取網路資訊需要在AndroidManifest.xml檔案中加入相應的許可權。 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />1)判斷是否有網路連線

Android 通訊及WiFi開發

在我們正常的Android藍芽功能開發步驟中,一般要經過系統許可權和藍芽開關狀態監測、裝置掃描、裝置連線、藍芽資料通訊這幾個過程。 在Android 4.3系統之後,我們可以使用藍芽4.0(低功耗藍芽),它最主要的特點是低功耗,普及率高。現在所說的藍芽裝置,大

網路請求GET方式 ListView展示資料

標題ListView展示資料 private Button button; private ListView listView; private MyBase myBase; private final int UPDATE_UI=1; private Hand

mac通過抓包分析iPhone app網路請求

在遊戲或者手機app開發過程中,前後端為了除錯定位協議問題,有時候需要抓取客戶端伺服器的網路互動資料包進行分析。在linux伺服器上可以方便的在命令列使用tcpdump抓包,在windows或者mac上 也可以選擇Wireshark,Ethereal等工具。

Android 網路請求網路狀態判斷

文章轉載: 網址:http://blog.csdn.net/anye_anye/article/details/50569114 Android 中判斷網路連線是否可用 一、判斷網路連線是否可用 public static boolean isNetworkAv

RxVolley進行網路請求get方式),獲取json資料

1、新增依賴:  compile 'com.kymjs.rxvolley:rxvolley:1.1.4'//在app 下的build.gradle 裡 2、聚合資料申請微信精選介面,獲取APP-

網路】JAVA Socket 實現HTTP與HTTPS客戶端傳送POST與GET方式請求

JAVA Socket 實現HTTP與HTTPS客戶端傳送POST與GET方式請求 哇,一看標題怎麼這麼長啊,其實意思很簡單,哥討厭用HTTP Client做POST與GET提交 覺得那個畢竟是別人寫得API庫,所以我就自己實現了一個簡單的HTTP客戶端,支援POST 方

判斷開啟關閉狀態+wifi開啟關閉狀態

Android 藍芽程式設計的基本步驟:  獲取藍芽介面卡BluetoothAdapter blueadapter=BluetoothAdapter.getDefaultAdapter();  如果BluetoothAdapter 為null,說明android手

android網路請求網路連線狀態判斷 & 監控網路狀態改變

個人筆記 開發遇到的網路判斷思路:         不能每次網路請求都要去呼叫ConnectivityManager進行網路判斷,所以在程式啟動的時候判斷一次網路狀態,然後全域性記錄這個狀態,每次網路請求的時候只用根據這個記錄的狀態來判斷網路的連線狀態即可,只有當人為的關閉

轉載 解密mesh系列 | 第一篇 【關於拓撲】【mesh網路的動機】【以訊息為中心的通訊】【訊息和裝置狀態

藍芽技術聯盟EMEA技術專案經理Martin Woolley小碼哥前言藍芽技術是享譽全球的品牌之一,也是全世界應用最為普遍的無線通訊技術之一。從2000年到現在,藍芽技術已經廣泛應用於數十億臺裝置。就2016年而言,製造商的藍芽裝置出貨量更是超過30億臺。藍芽的創新步伐從未停止。自面世以來,每一次改進都系統嚴

Bluetooth-->開發之狀態判斷

1:判斷裝置是否支援藍芽 BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter(); if (null == adapter)

libcurl以get方式請求服務器端文件

cti ati set printf libcurl lba map lean creat static size_t callbackfunction(void *ptr, size_t size, size_t nmemb, void* userdata){ FI

url請求get方式字符過長

limit forall module mit quest bsp sts false als 解決方式在<system.webServer>節點下設置maxQueryString值: <system.webServer> <v