Android软件中嵌入地图之一:Sogou地图
Android 软件中嵌入地图之一:Sogou 地图
在 App 中加入地图功能真是让人揪结,Google 地图功能强大,但是有些国内的手机厂商去掉了手机系统中 Google 地图的相关库,所以这类机型将无法安装调用了 Google 地图的软件(比如:联想 s899t)。如果用百度,搜狗,这些国内地图,又没法满足其他国家用户的需求。现在看来只好出两个版本。
从技术上来说,搜狗地图实现起来最容易,只需:加库,改 AndroidManifest.xml,修改界面即可。百度,需要用应用名生成 Key。而 Google
Map,还需要使用发布密钥生成一个 Key,在 Key 和密钥正确对应时,才能正常显示地图,编译时还需要配置 Google Play
Service,并且对手机系统的版本也有一定要求,虽然复杂,但功能也多。
搜狗地图
一、当前版本:v1.1,支持 Android1.6 及以上版本
二、使用方法:
1 加入库
下库开发包,将其中的 jar 和 so 导入工程
2 修改 AndroidManifest.xml
** <uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION" />
**
** <uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION" />
**
** <uses-permissionandroid:name="android.permission.READ_PHONE_STATE" /> **
** <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE" /> **
** <uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE" /> **
** <uses-permissionandroid:name="android.permission.WAKE_LOCK" /> **
3 修改 layout 中的 xml
** **
** <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" **
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
** <com.go2map.mapapi.MapView **
android:id="@+id/sogouMap"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="2.17"
android:visibility="visible" / >
** **
4 修改 Activity.java
import android.app.Activity;
import android.os.Bundle;
import com.go2map.mapapi.MapView;
import com.go2map.mapapi.Point;
public class SogouMapActivity extendsActivity {
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sogou);
MapViewmapView = (MapView) findViewById(R.id.sogouMap);
mapView.getController().setCenter(newPoint(12956000, 4824875), 10);
}
}
三、相关链接: [http://map.sogou.com/api/documentation/mobile/api1.0/android/examples/
](http://map.sogou.com/api/documentation/mobile/api1.0/android/examples/)