E企盈营销工具技术服务商 热线:4006-838-530

微信模拟定位,微信模拟位置想在哪就在哪GPS欺骗

E企盈直播平台营销卖货系统

微信模拟位置是通过位置欺骗,让微信误以为我们就在当前的位置进行周边好友的搜索与添加。这是一个很老的功能,为什么说很老呢?因为这是在android4.1的时候流行的一个功能,android在4.4推出后这个功能基本不能使用了!即使很老但是最近也碰到了这样的需求,不过针对特殊的群体,手机定制而来,就没有限制了!首先我们要知道怎么用:首先:我们从设置里找到开发者选项(开发者都知道):在这里就是,开发人员工具然后:打开允许模拟位置:进入代码阶段:一、判断是否开启了地理位置模拟if(Settings.Secure.getInt(getContentResolver(),Settings.Secure.ALLOW_MOCK_LOCATION,0)!=0){//开启了地理位置模拟LocProvider();}else{UIUtils.showToast(getString(R.string.open_mock_location));}privateStringmMockProviderName=LocationManager.GPS_PROVIDER;privatevoidLocProvider(){formatter=newSimpleDateFormat(“yyyy-MM-ddHH:mm:ss”);time=newDate().getTime();formatTime=formatter.format(time);initLocation();runFacke();}二、然后就需要进行初始化,位置模拟了/初始化位置模拟/publicvoidinitLocation(){//开启服务locationManager=(LocationManager)this.getSystemService(Context.LOCATION_SERVICE);LocationProviderprovider=locationManager.getProvider(mMockProviderName);if(provider!=null){locationManager.addTestProvider(provider.getName(),provider.requiresNetwork(),provider.requiresSatellite(),provider.requiresCell(),provider.hasMonetaryCost(),provider.supportsAltitude(),provider.supportsSpeed(),provider.supportsBearing(),provider.getPowerRequirement(),provider.getAccuracy());}else{locationManager.addTestProvider(mMockProviderName,false,true,false,false,true,true,true,0,5);}locationManager.setTestProviderEnabled(mMockProviderName,true);//新locationManager.setTestProviderStatus(mMockProviderName,LocationProvider.AVAILABLE,null,System.currentTimeMillis());if(ActivityCompat.checkSelfPermission(this,Manifest.permission.ACCESS_FINE_LOCATION)!=PackageManager.PERMISSION_GRANTED&&ActivityCompat.checkSelfPermission(this,Manifest.permission.ACCESS_COARSE_LOCATION)!=PackageManager.PERMISSION_GRANTED){return;}locationManager.requestLocationUpdates(mMockProviderName,0,0,newLocationListener(){@OverridepublicvoidonLocationChanged(Locationlocation){doublelatitude=location.getLatitude();doublelongitude=location.getLongitude();LogUtils.e(“latitude==”+latitude+”——longitude===”+longitude);}@OverridepublicvoidonStatusChanged(Strings,inti,Bundlebundle){}@OverridepublicvoidonProviderEnabled(Strings){}@OverridepublicvoidonProviderDisabled(Strings){}});}三、这儿需要开启一个线程机制来实现我自己设置的GPS位置,一直改变你手机的物理位置。publicvoidrunFacke(){isSimulateStart=true;//开启线程,一直修改GPS坐标thread=newThread(newRunnable(){@Overridepublicvoidrun(){while(isSimulateStart){try{Thread.sleep(100);}catch(InterruptedExceptione){e.printStackTrace();}setLocation(Double.valueOf(latitude),Double.valueOf(longitude));}}});thread.start();}四、设置GPS的位置/setLocation设置GPS的位置/@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1)privatevoidsetLocation(doublelatitude,doublelongitude){try{Locationlocation=newLocation(mMockProviderName);location.setLatitude(latitude);location.setLongitude(longitude);location.setAltitude(2.0f);//高程(米)location.setBearing(180);//方向(度)location.setSpeed(10);//速度(米/秒)location.setAccuracy(0.1f);//精度(米)location.setTime(System.currentTimeMillis());if(Build.VERSION.SDK_INT=Build.VERSION_CODES.JELLY_BEAN_MR1){location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());}locationManager.setTestProviderLocation(mMockProviderName,location);}catch(Exceptione){e.printStackTrace();}}一定要加权限uses-permissionandroid:name=”android.permission.ACCESS_MOCK_LOCATION”/好了这个时候模拟位置完成了,我模拟的位置是“上海”我们来看看效果这样就完成了,注意:不要打包安装正式版的,这个权限是debug权限好了如果需要关闭模拟位置:publicvoidstopMockLocation(){if(isSimulateStart){try{locationManager.removeTestProvider(LocationManager.GPS_PROVIDER);}catch(Exceptionex){//若未成功addTestProvider,或者系统模拟位置已关闭则必然会出错}isSimulateStart=false;}}如果有什么好的方法,或者确定支持4.4以上,亲们要给个链接啊!不要忽悠我呀…………..

赞(0) 打赏
未经允许不得转载:E企盈小程序开发-热线:4006-838-530 » 微信模拟定位,微信模拟位置想在哪就在哪GPS欺骗
分享到: 更多 (0)
E企盈小程序直播营销卖货系统
E企盈直播平台营销卖货系统

评论 抢沙发

E企盈小程序开发

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏