在好例子网,分享、交流、成长!
您当前所在位置:首页Java 开发实例Android平台开发 → androidgps基站与WIFI定位源码

androidgps基站与WIFI定位源码

Android平台开发

下载此实例
  • 开发语言:Java
  • 实例大小:0.08M
  • 下载次数:33
  • 浏览次数:332
  • 发布时间:2019-11-23
  • 实例类别:Android平台开发
  • 发 布 人:robot666
  • 文件格式:.rar
  • 所需积分:2
 相关标签:

实例介绍

【实例简介】android GPS和基站定位程序及源码.rar 实现基站定位,以及WIFI定位,以及GPS定位

【实例截图】

from clipboard


from clipboard

【核心代码】


package com.cking;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.List;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.location.LocationProvider;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class ReadGpsDataActivity extends Activity {
    /** Called when the activity is first created. */
	int count=0;

	private TextView tv;
	private Button bu;
	private Button bu01;
	private Button bu02;
	private Button bu03;
	double wei;
	double jing;
	String name;
	GpsData gpsData;
	Location c=null;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        bu=(Button)findViewById(R.id.bu);
        bu01=(Button)findViewById(R.id.bu01);
        bu02=(Button)findViewById(R.id.bu02);
        bu03=(Button)findViewById(R.id.bu03);
        tv=(TextView)findViewById(R.id.tv);
        Intent in=getIntent();
        if(in.hasExtra("weidu"))
        {
        	wei=in.getDoubleExtra("weidu", 0.0);
        	jing=in.getDoubleExtra("jingdu", 0.0);
        	name=in.getStringExtra("name");
        	 String weis= String.valueOf(wei);
		        String jins= String.valueOf(jing);//
		        String con=weis "\n" jins "\n" name;
            tv.setText(con);
        }
       
        bu.setOnClickListener(new OnClickListener(){

			public void onClick(View v) {
				// TODO Auto-generated method stub
				Intent in=new Intent();
				in.setClass(ReadGpsDataActivity.this, ReadGpsDataService.class);
				startService(in);
				
			}
        	
        });
        bu01.setOnClickListener(new OnClickListener(){

			public void onClick(View v) throws IllegalArgumentException, SecurityException {
			
				Criteria criteria=new Criteria();
			    criteria.setAccuracy(Criteria.ACCURACY_FINE);	//精确速度
			    criteria.setAltitudeRequired(false);			//海拔
			    criteria.setBearingRequired(false);				//方向
			    criteria.setCostAllowed(false);					//是否计费
			    criteria.setPowerRequirement(Criteria.POWER_LOW);
			    
			    long ben = System.currentTimeMillis(); 
			    System.out.println("ben time  " ben);
			    final LocationManager locationManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
			    

			    LocationListener llistener=new LocationListener(){

			    	public void onLocationChanged(Location location) {
			    		
			    					
			    		double lat;
		    			double lng;
		    			
		    			 if (location != null)
		    					
		    							 {
		    				 
		    				
		    				 lat=location.getLatitude();
		    				 lng=location.getLongitude();
		    				 long time=location.getTime();
		    				 double altitude=location.getAltitude();//海拔
		    					
		    					double accuracy=location.getAccuracy();//精确度
		    			
		    					float bearing=location.getBearing();//航向
		    					float speed=location.getSpeed()   ;  //速度
		    					
		    				 Calendar c = Calendar.getInstance();
		    				 c.setTimeInMillis(time-8*60*60*1000);		 
		    				 SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmmss");
		    				 String bf=df.format(c.getTime());
		    				
		    				
		    				 float Lat=(float)lat;
				    		float Lng=(float)lng;
				    		float alt=(float)altitude;
				    		float acc=(float)accuracy;
				    		
				    			Intent in=new Intent();
				    			in.putExtra("flag", "china activity: ");
				    			in.putExtra("time", bf);
								in.putExtra("jingdu", Lng);
								in.putExtra("weidu",Lat);
								in.putExtra("gao", alt);
								in.putExtra("acc", acc);
								in.putExtra("spear", bearing);
								in.putExtra("speed", speed);
								in.setClass(ReadGpsDataActivity.this,ShowLocat.class);
								startActivity(in);
								locationManager.removeUpdates(this);
		    				 

		    					
		    				}
		    			 else
		    			 {
		    				 count  ;
		    				 System.out.println("count is " count);
		    			 }
									
			    				 

			    					
			    				}
			    	
			    	
			    	
			    	

			    				public void onProviderDisabled(String provider) {
			    					// TODO Auto-generated method stub
			    					System.out.println("GPS can not be readed!");
			    					
			    				}

			    				public void onProviderEnabled(String provider) {
			    					// TODO Auto-generated method stub
			    					System.out.println("GPS can  be readed!");
			    					
			    				}

			    				public void onStatusChanged(String provider, int status,
			    						Bundle extras) {
			    					// TODO Auto-generated method stub
			    					System.out.println("status changed!");
			    					
			    				}
			    		    	
			    		    };			    	
			    			try{
				    		    
		    		    		 locationManager.requestLocationUpdates("gps", 3000, 1, llistener);
		    		    		 long end = System.currentTimeMillis();
		    		    		 System.out.println("end time  " end);
		    		    		 System.out.println("delay time "  (ben-end));
		    		    	}catch(IllegalArgumentException e){
		    		    		Intent in=new Intent();
								in.putExtra("jingdu", 1.0);
								in.putExtra("weidu",1.0);
								in.setClass(ReadGpsDataActivity.this,ShowLocat.class);
								startActivity(in);
							
		    		    		
		    		    	}
		    		    	catch(RuntimeException  e){
		    		    		Intent in=new Intent();
								in.putExtra("jingdu", 3.0);
								in.putExtra("weidu",3.0);
								in.setClass(ReadGpsDataActivity.this,ShowLocat.class);
								startActivity(in);
		    		    		
		    		    		
		    		    	}
		    		    	for(int i=1;i<10;i  )
		    				{
		    		    		System.out.println(i);
		    		    		Location location = locationManager.getLastKnownLocation("gps");
		    									try {
		    											Thread.sleep(3000);		//读GPS数据缓冲时间
		    										} catch (InterruptedException e) {
		    											// TODO Auto-generated catch block
		    											e.printStackTrace();
		    										}
		    							     
		    																						
		    				}//end while 
		    		    	locationManager.removeUpdates(llistener);
		    		    	 
				
				
			}
        	
        }); 
		
        

        bu02.setOnClickListener(new OnClickListener(){

    		public void onClick(View v) {
     			
    			LocationManager mgr = (LocationManager) getSystemService(Context.LOCATION_SERVICE);   
    			Location location = mgr.getLastKnownLocation(LocationManager.GPS_PROVIDER); 
    			double lat;
    			double lng;
    			
    			 if (location != null)
    					
    							 {
    				 //alt=location.getAltitude();
    				 lat=location.getLatitude();
    				 lng=location.getLongitude();
    				 long time=location.getTime();
    				 System.out.println(time);
    				 double altitude=location.getAltitude();//海拔
    					
    					double accuracy=location.getAccuracy();//精确度
    			
    					float bearing=location.getBearing();//航向
    					float speed=location.getSpeed(); //速度
    					
    				 Calendar c = Calendar.getInstance();
    				 c.setTimeInMillis(time);		 
    				 SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmmss");
    				 String bf=df.format(c.getTime());
    				
    				
    				 float Lat=(float)lat;
		    		float Lng=(float)lng;
		    		float alt=(float)altitude;
		    		float acc=(float)accuracy;
		    		
		    			Intent in=new Intent();
		    			in.putExtra("flag", "china lastLoc: ");
		    			in.putExtra("time", bf);
						in.putExtra("jingdu", Lng);
						in.putExtra("weidu",Lat);
						in.putExtra("gao", alt);
						in.putExtra("acc", acc);
						in.putExtra("spear", bearing);
						in.putExtra("speed", speed);
						in.setClass(ReadGpsDataActivity.this,ShowLocat.class);
						startActivity(in);
					
    				 

    					
    				}
    			


    	
    		}
        });
        
        
        
        
        bu03.setOnClickListener(new OnClickListener(){

    		public void onClick(View v) {
    			// TODO Auto-generated method stub
    			

    	
    		}
        });
    }

    
   
	 	
}


标签:

实例下载地址

androidgps基站与WIFI定位源码

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警