android 开发谷歌地图的步骤
16lz
2022-04-11
前期准备
安上环境
打开eclispe 打开window-preferences-android-bulid. 有一个default deug keystore 开始运行cmd cd刚才那个keystore里的东西
后面输入 keytool -list -keystore debug.keystore 会提示你输入密码
密码是android ,输入的时候没有显示
然后进入这个网址
http://code.google.com/intl/zh-CN/android/maps-api-signup.html
开发谷歌地图的api网站
http://code.google.com/intl/ja/android/add-ons/google-apis/reference/
-----------------------------------------------------------------------------------------------------------------------
//1.创建地址的管理类 android.location LocationMnager lm=getSystemService(Context.LOCATION_SERVICE)
//2.得到location
2.1 创建 Criteria 条件类,描述你所在的地址。 criteria=lm.getBestProvider(mCriteria01, true)
2.2 得到提供向导着的名字 strLocationPrivider =locationManager.getBestPrivider(Criteria,boolean sign);
2.3得到Location location=localManager.getLasKnowLocaiton(strLocationProvider);
//3 得到地球上的点也就是 经度 GeoPoint geopoint =new GeoPoint((int)location.getLatitude()*1E6,(int)location.getLongitude()*1E6);
//4 显示所在地址 地图的
4.1 MapController mc = mv.getController();mv.getController();
4.2 激活地图在点上 mc.animateTo(gp);
4.3 设置地图模式 mv.setTraffic(true);
4.4 设置有放大缩小模式的 mv.displayZoomControls(true);
4.5 计算出当前位置的名字
首先建立一个 Geocoder gc = new Geocoder(GPS.this, Locale.getDefault());
4.5.1 取出经度纬度 double geoLatitude = (int)gp.getLatitudeE6()/1E6;
double geoLongitude = (int)gp.getLongitudeE6()/1E6;
//通过经纬度找名字。
List<Address> lstAddress = gc.getFromLocation(geoLatitude, geoLongitude, 1);
创建 address
/* 判断地址是否为多行 */
if (lstAddress.size() > 0)
{
Address adsLocation = lstAddress.get(0);
for (int i = 0; i < adsLocation.getMaxAddressLineIndex(); i++)
{
sb.append(adsLocation.getAddressLine(i)).append("\n");
}
sb.append(adsLocation.getLocality()).append("\n");
sb.append(adsLocation.getPostalCode()).append("\n");
sb.append(adsLocation.getCountryName());
}
/* 将撷取到的地址,组合后放在StringBuilder对象中输出用 */
strReturn = sb.toString();
//通过名字找经纬度
Geocoder gc = new Geocoder(TourGuideActivity.this,Locale.getDefault());
try {//通过Geocoder查找指定名称景点的经纬度列表
List<Address> addressList =gc.getFromLocationName(jdmcStr, 1);//获取景点的经纬度列表
if(addressList.size()>0) {
//如果成功获取了经纬度取列表中的第一条记录
Address tempa = addressList.get(0);
int latE6 =(int)(tempa.getLatitude()*1000000);//获取纬度
int longE6 = (int)(tempa.getLongitude()*1000000);//获取经度
GeoPoint gp = new GeoPoint(latE6,longE6);
//5 /* 建立LocationManager对象,监听Location变更时事件,更新MapView */
mLocationManager01.requestLocationUpdates(strLocationPrivider, 2000, 10, mLocationListener01);
public final LocationListener mLocationListener01 = new LocationListener()
{
@Override
public void onLocationChanged(Location location)
{
// TODO Auto-generated method stub
/* 当手机收到位置变更时,将location传入取得地理坐标 */
processLocationUpdated(location);
}
@Override
public void onProviderDisabled(String provider)
{
// TODO Auto-generated method stub
/* 当Provider已离开服务范围时 */
}
安上环境
打开eclispe 打开window-preferences-android-bulid. 有一个default deug keystore 开始运行cmd cd刚才那个keystore里的东西
后面输入 keytool -list -keystore debug.keystore 会提示你输入密码
密码是android ,输入的时候没有显示
然后进入这个网址
http://code.google.com/intl/zh-CN/android/maps-api-signup.html
开发谷歌地图的api网站
http://code.google.com/intl/ja/android/add-ons/google-apis/reference/
-----------------------------------------------------------------------------------------------------------------------
//1.创建地址的管理类 android.location LocationMnager lm=getSystemService(Context.LOCATION_SERVICE)
//2.得到location
2.1 创建 Criteria 条件类,描述你所在的地址。 criteria=lm.getBestProvider(mCriteria01, true)
2.2 得到提供向导着的名字 strLocationPrivider =locationManager.getBestPrivider(Criteria,boolean sign);
2.3得到Location location=localManager.getLasKnowLocaiton(strLocationProvider);
//3 得到地球上的点也就是 经度 GeoPoint geopoint =new GeoPoint((int)location.getLatitude()*1E6,(int)location.getLongitude()*1E6);
//4 显示所在地址 地图的
4.1 MapController mc = mv.getController();mv.getController();
4.2 激活地图在点上 mc.animateTo(gp);
4.3 设置地图模式 mv.setTraffic(true);
4.4 设置有放大缩小模式的 mv.displayZoomControls(true);
4.5 计算出当前位置的名字
首先建立一个 Geocoder gc = new Geocoder(GPS.this, Locale.getDefault());
4.5.1 取出经度纬度 double geoLatitude = (int)gp.getLatitudeE6()/1E6;
double geoLongitude = (int)gp.getLongitudeE6()/1E6;
//通过经纬度找名字。
List<Address> lstAddress = gc.getFromLocation(geoLatitude, geoLongitude, 1);
创建 address
/* 判断地址是否为多行 */
if (lstAddress.size() > 0)
{
Address adsLocation = lstAddress.get(0);
for (int i = 0; i < adsLocation.getMaxAddressLineIndex(); i++)
{
sb.append(adsLocation.getAddressLine(i)).append("\n");
}
sb.append(adsLocation.getLocality()).append("\n");
sb.append(adsLocation.getPostalCode()).append("\n");
sb.append(adsLocation.getCountryName());
}
/* 将撷取到的地址,组合后放在StringBuilder对象中输出用 */
strReturn = sb.toString();
//通过名字找经纬度
Geocoder gc = new Geocoder(TourGuideActivity.this,Locale.getDefault());
try {//通过Geocoder查找指定名称景点的经纬度列表
List<Address> addressList =gc.getFromLocationName(jdmcStr, 1);//获取景点的经纬度列表
if(addressList.size()>0) {
//如果成功获取了经纬度取列表中的第一条记录
Address tempa = addressList.get(0);
int latE6 =(int)(tempa.getLatitude()*1000000);//获取纬度
int longE6 = (int)(tempa.getLongitude()*1000000);//获取经度
GeoPoint gp = new GeoPoint(latE6,longE6);
//5 /* 建立LocationManager对象,监听Location变更时事件,更新MapView */
mLocationManager01.requestLocationUpdates(strLocationPrivider, 2000, 10, mLocationListener01);
public final LocationListener mLocationListener01 = new LocationListener()
{
@Override
public void onLocationChanged(Location location)
{
// TODO Auto-generated method stub
/* 当手机收到位置变更时,将location传入取得地理坐标 */
processLocationUpdated(location);
}
@Override
public void onProviderDisabled(String provider)
{
// TODO Auto-generated method stub
/* 当Provider已离开服务范围时 */
}
更多相关文章
- Android中获取当前位置的使用步骤
- android 实现高德2D地图,定位和定位蓝点
- Android之用户定位(三)
- Android中Intent与Bundle 在传值时有什么不同
- Android第三方登录-----微信登录接入方法
- android系统信息(内存、cpu、sd卡、电量、版本)获取
- Android(安卓)HLS协议相关记录及部分解析
- Android系统信息(内存、cpu、sd卡、电量、版本)获取
- Android(安卓)主动获取电量的方法