没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本文实例讲述了Android编程实现wifi扫描及连接的方法。分享给大家供大家参考,具体如下: 主界面,搜索附近WIFI信息 /** * Search WIFI and show in ListView * */ public class MainActivity extends Activity implements OnClickListener, OnItemClickListener { private Button search_btn; private ListView wifi_lv; private WifiUtils mUtils; priva
资源推荐
资源详情
资源评论
Android编程实现编程实现wifi扫描及连接的方法扫描及连接的方法
本文实例讲述了Android编程实现wifi扫描及连接的方法。分享给大家供大家参考,具体如下:
主界面,搜索附近主界面,搜索附近WIFI信息信息
/**
* Search WIFI and show in ListView
*
*/
public class MainActivity extends Activity implements OnClickListener,
OnItemClickListener {
private Button search_btn;
private ListView wifi_lv;
private WifiUtils mUtils;
private List<String> result;
private ProgressDialog progressdlg = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mUtils = new WifiUtils(this);
findViews();
setLiteners();
}
private void findViews() {
this.search_btn = (Button) findViewById(R.id.search_btn);
this.wifi_lv = (ListView) findViewById(R.id.wifi_lv);
}
private void setLiteners() {
search_btn.setOnClickListener(this);
wifi_lv.setOnItemClickListener(this);
}
@Override
public void onClick(View v) {
if (v.getId() == R.id.search_btn) {
showDialog();
new MyAsyncTask().execute();
}
}
/**
* init dialog and show
*/
private void showDialog() {
progressdlg = new ProgressDialog(this);
progressdlg.setCanceledOnTouchOutside(false);
progressdlg.setCancelable(false);
progressdlg.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressdlg.setMessage(getString(R.string.wait_moment));
progressdlg.show();
}
/**
* dismiss dialog
*/
private void progressDismiss() {
if (progressdlg != null) {
progressdlg.dismiss();
}
}
class MyAsyncTask extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... arg0) {
//扫描附近WIFI信息
result = mUtils.getScanWifiResult();
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
progressDismiss();
initListViewData();
}
}
private void initListViewData() {
if (null != result && result.size() > 0) {
wifi_lv.setAdapter(new ArrayAdapter<String>(
getApplicationContext(), R.layout.wifi_list_item,
R.id.ssid, result));
} else {
wifi_lv.setEmptyView(findViewById(R.layout.list_empty));
}
}
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
TextView tv = (TextView) arg1.findViewById(R.id.ssid);
if (!TextUtils.isEmpty(tv.getText().toString())) {
Intent in = new Intent(MainActivity.this, WifiConnectActivity.class);
in.putExtra("ssid", tv.getText().toString());
startActivity(in);
}
}
}
/**
* 连接指定的WIFI
*
*/
public class WifiConnectActivity extends Activity implements OnClickListener {
private Button connect_btn;
private TextView wifi_ssid_tv;
private EditText wifi_pwd_tv;
private WifiUtils mUtils;
// wifi之ssid
private String ssid;
private String pwd;
private ProgressDialog progressdlg = null;
@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
switch (msg.what) {
case 0:
showToast("WIFI连接成功");
finish();
break;
case 1:
showToast("WIFI连接失败");
break;
}
progressDismiss();
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_connect);
mUtils = new WifiUtils(this);
findViews();
setLiteners();
initDatas();
}
/**
* init dialog
*/
private void progressDialog() {
progressdlg = new ProgressDialog(this);
progressdlg.setCanceledOnTouchOutside(false);
progressdlg.setCancelable(false);
progressdlg.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressdlg.setMessage(getString(R.string.wait_moment));
progressdlg.show();
}
/**
* dissmiss dialog
*/
private void progressDismiss() {
if (progressdlg != null) {
progressdlg.dismiss();
}
}
private void initDatas() {
ssid = getIntent().getStringExtra("ssid");
if (!TextUtils.isEmpty(ssid)) {
ssid = ssid.replace("\"", "");
}
this.wifi_ssid_tv.setText(ssid);
}
private void findViews() {
this.connect_btn = (Button) findViewById(R.id.connect_btn);
剩余6页未读,继续阅读
资源评论
weixin_38525735
- 粉丝: 3
- 资源: 881
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于Java和Python的垃圾图像分类系统.zip
- (源码)基于Spring Boot和Beetl的代码生成管理系统.zip
- (源码)基于低功耗设计的无线互呼通信系统.zip
- (源码)基于Arduino的盲人碰撞预警系统.zip
- 自己学习java安全的一些总结,主要是安全审计相关.zip
- (源码)基于C++的多线程外部数据排序与归并系统.zip
- 编译的 FFmpeg 二进制 Android Java 库.zip
- 纯 Java git 解决方案.zip
- (源码)基于Spring Boot和Vue的后台管理系统.zip
- 用于将 Power BI 嵌入到您的应用中的 JavaScript 库 查看文档网站和 Wiki 了解更多信息 .zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功