关于地图的一切

时间:2013-11-28 11:41:16

标签: android google-maps offline-caching

我是android编程的新手。我想了解GPS。我搜索了一下,我对此有所了解。无论如何,我想在我的项目中使用com.google.android.maps.MapView之前使用Map,但现在我想了解Map的所有内容。除了以上方式,在项目中使用map的方法是什么?我可以在我的项目中使用com.google.android.maps.MapView但我不能连接到互联网吗?我的意思是用离线方式显示地图和在地图上搜索的方法是什么?

我搜索但我无法得到满满的问题的回答:( 谢谢你的建议。

2 个答案:

答案 0 :(得分:3)

要开始使用Google地图,您可以参考此链接https://developers.google.com/maps/documentation/android/start现在也不推荐使用MapView,因此您必须使用Google地图第2版。

示例代码:http://www.androidhive.info/2013/08/android-working-with-google-maps-v2/ 所有最好的..

答案 1 :(得分:0)

你应该使用Fragment。它就像布局一样;

<fragment
   android:name="com.google.android.gms.maps.SupportMapFragment"
   android:id="@+id/myMapView"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:clickable="true" />

要使用它,您应该将 google-play-services_lib 项目添加到项目构建路径中。 然后在你的课上你应该像那样实现FragmentActivity;

public class Main extends FragmentActivity{

private GoogleMap mMap;

UiSettings settings;
MapController mapController;
GeoPoint geopoint;
RectF oval;
Canvas canvas;
int mRadius = 5;

@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    setUpMap();
}

@Override
protected void onResume(){
    super.onResume();
    setUpMap();
}

private void setUpMap(){
    if (mMap != null) {
        return;
    }
    mMap=((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.myMapView)).getMap();
    if (mMap == null) {
        return;
    }
    mMap.setMyLocationEnabled(true);
    mMap.getUiSettings().setCompassEnabled(true);
    mMap.getUiSettings().setMyLocationButtonEnabled(true);

    mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(place1, 15));
    mMap.setTrafficEnabled(true);
    mMap.setMapType(GoogleMap.MAP_TYPE_HYBRID);           

}

您应该从此link获取Google地图的API,或者您可以从此link

逐步继续

将这样的apikey和权限添加到Manifest文件中;

<uses-permission android:name="your_package.permission.MAPS_RECEIVE"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

<meta-data
       android:name="com.google.android.maps.v2.API_KEY"
       android:value="your_api_key"/> 

注意:元数据必须位于清单中应用程序内。