手机防盗之获取手机经纬度(Android)
获取手机经纬度有gps , network , 基站 三种方式,我们可以根据定位的条件,获取一个最好的定位方式。然后将获取到经纬度信息发送到指定的手机号码中。 /* * 单态只允许存在一个实例. * 获取手机的gps信息 */ public class GPSInfoService { private Context context; private LocationManager manager; SharedPreferences sp ; //私有化构造方法 private GPSInfoService(Context context){ this.context= context; manager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); sp = context.getSharedPreferences("config", Context.MODE_PRIVATE); } private static GPSInfoService mGPSService; public synchronized static GPSInfoService getInstance(Context context){ if(mGPSService==null) mGPSService = new GPSInfoService(context); return mGPSService; } /* * 当前你的手机 所支持的定位方式获取出来 * 有多种定位方式gps network ,基站, passive * 可以根据定位的条件,获取 一个最好的定位方式 */ public void registerLocationUpdates(){ Criteria criteria = new Criteria(); // 设置定位的精度 criteria.setAccuracy(Criteria.ACCURACY_COARSE); //获取大体的位置 criteria.setAltitudeRequired(false); // 海拔信息 criteria.setCostAllowed(true); //允许产生费用 criteria.setPowerRequirement(Criteria.POWER_LOW); //低功耗 //获取一个最符合查询条件的位置提供者 String provider =manager.getBestProvider(criteria, true); // 位置改变就会调用Linster的监听器 获取经度纬度 manager.requestLocationUpdates(provider, 60000, 0, getLinster()); } public void cancleLocationUpdates(){ manager.removeUpdates(getLinster()); } private static MyGPSLinster myGPSLinser; private MyGPSLinster getLinster(){ if(myGPSLinser==null) myGPSLinser = new MyGPSLinster(); return myGPSLinser; } private class MyGPSLinster implements LocationListener{ // 用户位置改变的时候 的回调方法 public void onLocationChanged(Location location) { //获取到用户的纬度 double latitude= location.getLatitude(); //获取到用户的经度 double longitude = location.getLongitude(); //进行封装写入到文件中 String locationstr = "jing du "+ longitude + " weidu :"+latitude; Editor editor = sp.edit(); editor.putString("lastlocation", locationstr); editor.commit(); } // 状态改变 public void onStatusChanged(String provider, int status, Bundle extras) { // TODO Auto-generated method stub } //gps ,打开 public void onProviderEnabled(String provider) { // TODO Auto-generated method stub } //关闭 public void onProviderDisabled(String provider) { // TODO Auto-generated method stub } } /** * 获取手机的最后一次位置 * @return */ public String getLastPosition(){ return sp.getString("lastlocation", ""); } } 获取短信的经纬度并将获取到的经纬度发送到指定的号码上: //获取当前手机的经纬度. GPSInfoService.getInstance(context).registerLocationUpdates(); //把经纬度的信息发送到安全号码,获取到短信发送器,将短信发送到指定的号码 SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage("15287978798", null, GPSInfoService.getInstance(context).getLastPosition() , null, null);
手机防盗之获取手机经纬度(Android)的更多相关文章
- iOS 整理笔记 获取手机信息(UIDevice、NSBundle、NSLocale)
/* iOS的APP的应用开发的过程中,有时为了bug跟踪或者获取用反馈的需要自动收集用户设备.系统信息.应用信息等等,这些信息方便开发者诊断问题,当然这些信息是用户的非隐私信息,是通过开发ap ...
- PHP获取手机相关信息
该PHP操作类实现获取手机号手机头信息,取UA,取得手机类型,判断是否是opera,判断是否是m3gate,取得HA,取得手机IP 代码如下: <?php /** * @desc 手机操作类 获 ...
- vue 项目,获取手机验证码和图形验证码(iviewUI框架)
1.编辑获取验证码模块 <Form ref="phoneFormItem" :model="phoneFormItem" :label-width=&qu ...
- Android项目实战_手机安全卫士手机防盗界面
#安全卫士手机防盗# ###1.Activity的任务栈 1.类似一个木桶,每层只能放一个木块,我们放入木块和取出木块的时候只能从最上面开始操作 ###2.Android中的坐标系![](http:/ ...
- Android 获取手机Mac地址,手机名称
/** * 获取手机mac地址<br/> * 错误返回12个0 */ public static String getMacAddress(Context context) { // 获取 ...
- android获取手机信息大全
IMEI号,IESI号,手机型号: private void getInfo() { TelephonyManager mTm = (TelephonyManager) getSystemServic ...
- Android获取手机制作商,系统版本等
在开发中 我们有时候会需要获取当前手机的系统版本来进行判断,或者需要获取一些当前手机的硬件信息. android.os.Build类中.包括了这样的一些信息.我们可以直接调用 而不需要添加任何的权限和 ...
- Android获取手机设备识别码(IMEI)和手机号码
最近看了下获取手机设备ID和手机信息以及SIM的信息例子,主要还是借鉴别人的,现在自己写一下,算是巩固加深了,也希望能给大家一个参考 必要的条件还是一部真机,SIM卡或者UIM卡. 首先,在Andro ...
- 【风马一族_Android】Android 从命令行界面获取手机信息
Android 从命令行界面获取手机信息 1: cmd 打开命令行界面 2:adb devices 获取与电脑相连的设备,例如:模拟器.真机(手机) (右击“标记”,选择设备名称,点击“Ctrl+ ...
随机推荐
- 算法笔记_175:历届试题 蚂蚁感冒(Java)
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 长100厘米的细长直杆子上有n只蚂蚁.它们的头有的朝左,有的朝右. 每只蚂蚁都只能沿着杆子向前爬,速度是1厘米/秒. 当两只蚂蚁碰面时,它 ...
- Phpcms没有找到网址列表
今天在搞phpcms的采集遇到了这个问题. 没有找到网址列表,请先进行网址采集. 百度,google了好久: 网上答案: 方案1 1.尝试清除 v9_collection_history 表里的内容 ...
- codeforces Epic Game 题解
Simon and Antisimon play a game. Initially each player receives one fixed positive integer that does ...
- yml在线格式转换工具(properties)
分享一个在线properties 转 yml工具,也支持yml转properties, 域名非常简单好记,直接在地址栏里输入toyaml.com,地址:http://toyaml.com/ yml,即 ...
- java Socket Tcp示例三则(服务端处理数据、上传文件)
示例一: package cn.itcast.net.p5.tcptest; import java.io.BufferedReader;import java.io.IOException;impo ...
- bash: fork: Resource temporarily unavailable
Last login: Wed Jul 26 09:19:11 2017 from ... -bash: fork: Resource temporarily unavailable -bash-3. ...
- 如何使用Dockerfile构建Tomcat镜像并部署war
我们都知道Docker构建一个镜像有两种方式: 使用`docker commit`命令 使用`Dockerfile`文件和`docker build`命令 那么这两种方式有何区别呢? 相同点:底层实现 ...
- 关于iOS Category实现添加属性及成员变量
iOS分类: 很多说法是只能添加方法,而不能添加成员变量或属性. 有些人可能知道,这种说法是不严谨的,并不是绝对不能添加变量. 解释如下: 我们知道在一个类中用@property声明属性,编译器会自动 ...
- 【java设计模式】之 代理(Proxy)模式
代理模式的核心作用就是通过代理,控制对对象的访问.这跟实际中是一样的,比如说明星都有经纪人,这就是一个代理,比如有人要找某明星拍戏,那么首先处理这事的是他的经纪人,虽然拍戏需要自己拍,但是拍戏前后的一 ...
- 【Linux】文件种类与扩展名
任何装置在Linux底下都是文件.不仅如此,连数据沟通的接口也有专属的文件在负责-所以,你会了解到,Linux的文件种类真的很多- Linux文件种类 我们在刚刚提到使用『ls -l』观察到第一栏那十 ...