资源简介
根据室内多个wifi信号的强度进行定位;
可以扫描室内wifi的型号强度Value,并记录到数据库。
目前还未完善:需要手动修改代码将记录的数据写入定位代码。
但大体定位能够成功,概率90%准确定位率;
基本算法已经可以使用,只是一个可行的框架。
但仍旧需要再度开发。
代码片段和文件信息
/**
*
*/
package com.sample.testwifi;
import com.sample.testwifi.helper.DatabaseHelper;
import android.annotation.SuppressLint;
import android.app.ListActivity;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.widget.TextView;
import android.widget.Toast;
/**
* @author hubin2010
*
*/
@SuppressLint(“NewApi“)
public class DatabaseRecordAcivity extends ListActivity {
private Context mContext;
private static final String LOG_TAG = “WIFI_INFO“;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getActionBar().settitle(R.string.current_info);
setContentView(R.layout.wifi_list_db_info);
mContext = DatabaseRecordAcivity.this;
Intent intent = getIntent();
int location = intent.getIntExtra(“location“ 0);
Log.e(LOG_TAG “location: “ + location);
if (1 == location) {
((TextView) findViewById(R.id.tv_location))
.setVisibility(View.VISIBLE);
initContainLocation();
} else {
init();
}
}
private void init() {
SQLiteDatabase mDB = mContext.openOrCreateDatabase(
DatabaseHelper.DB_NAME MODE_PRIVATE null);
final Cursor cursor = mDB.query(DatabaseHelper.TB_NAME null null
null null null “location DESC“);
@SuppressWarnings(“deprecation“)
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this
R.layout.db_wifi_info_list cursor new String[] { “wifi_name“
“wifi_mac“ “wifi_level“ } new int[] {
R.id.db_wifi_name R.id.db_wifi_macAddress
R.id.db_wifi_level });
ListView lv = (ListView) findViewById(android.R.id.list);
lv.setAdapter(adapter);
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView> parent View view
int position long id) {
cursor.moveToPosition(position);
Toast.makeText(DatabaseRecordAcivity.this
“This is No.[“ + position + “] Item“
Toast.LENGTH_SHORT).show();
}
});
}
private void initContainLocation() {
SQLiteDatabase mDB = mContext.openOrCreateDatabase(
DatabaseHelper.DB_NAME MODE_PRIVATE null);
final Cursor cursor = mDB.query(DatabaseHelper.TB_LOCATION_WIFI null
null null null null “location DESC“);
@SuppressWarnings(“deprecation“)
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this
R.layout.db_wifi_info_location_list cursor new String[] {
“location“ “wifi_name“ “wifi_mac“ “wifi_level“ }
new int[] { R.id.db_wifi_location R.id.db_wifi_name
R.id.db_wifi_macAddress R.id.db_wifi_level });
ListView lv = (ListView) findViewById(android.R.id.list);
lv.setAdapter(adapter);
lv.setOnItemClickListener(new O
相关资源
- Android定位当前所在城市
- android定位
- Android定位并记录轨迹项目源码
- 基于Android手机的室内定位技术研究与
- 基于蓝牙的室内定位软件androidIBeaco
- android手机的室内wifi定位的设计与实现
- Android记录wifi信号强度,磁场传感器,
- android 每日定时功能
- 室内定位指纹采集系统-AndroidWIFI版本
- 基于RSSI的蓝牙室内定位系统
- 安卓WiFi室内定位程序源码
- 基于Android的WIFI室内定位技术研究
- Android开发之百度地图定位以及简单覆
- ArcGIS for Android定位、放大缩小功能
- 室内定位系统
- 全志H3 SDK开发包说明文档
- 大作业:基于WiFi FTM 的室内定位技术
- 解决Android锁屏无法继续定位问题
- android快速集成高德地图
- 解决Android锁屏无法继续定位问题-最新
- V40 Android定制化文档V1.0
- 利用百度地图实现GPS, 基站,wifi定位
- android定时开关机或重启的代码
- wifi室内定位demo
- android 定时定位 用的是百度地图定位
- Android定位功能,获取经纬度
- 最新的经纬度获取!wifi,基站,gps定
- android定时器原创.
- android定位服务的实现
- android 室内定位 (蓝牙定位)
评论
共有 条评论