安卓版谷歌地图

原文:https://www.geeksforgeeks.org/google-maps-in-android/

地图非常有用,它提高了应用程序的生产力。谷歌地图应用编程接口允许安卓开发者将谷歌地图集成到他们的应用中。

以下是将谷歌地图集成到安卓应用程序的分步过程:

  1. 转到https://developers . Google . com/maps/documentation/Android-API/registration点击【GET STARTED】按钮如图:
  2. 现在选择地图复选框,点击继续按钮,如下所示:
  3. 选择一个要启用谷歌地图应用编程接口的项目,然后单击下一步。将为所选项目生成一个新密钥。
  4. 跳过计费流程
  5. 为了集成谷歌地图应用编程接口,你的机器的 SHA1 证书是必需的。因此要找到 SHA1 证书,请按照以下步骤操作:

    • 打开命令提示符,进入你的 Java bin 文件夹

      java cd C:\Program Files\Java\jdk1.8.0_91\bin

    • Give the following CMD command for getting Certificate Footprints:

      keytool -list -v 密钥存储“%USERPROFILE%\”。Android \ debug . keystore "-别名 andidbogkey-store pass Android keypass

  6. 前往https://console.developers.google.com/apis/credentials

  7. API 键部分,点击您想要选择的 API 键右侧的铅笔按钮,用于附加您的应用。
  8. 在应用限制中,选择安卓应用
  9. 点击添加包名和指纹
  10. 输入您的应用程序的包名和在上述步骤中找到的指纹,然后单击保存按钮。
  11. 在项目->应用->src ->构建.梯度->依赖项中插入以下内容
compile 'com.google.android.gms:play-services:11.6.0'
  • 在 AndroidManifest.xml

    java <meta-data     android:name="com.google.android.gms.version"     android:value="@integer/google_play_services_version" /> <meta-data     android:name="com.google.android.maps.v2.API_KEY"     android:value="ENTER API_KEY GENERATED BY YOU IN ABOVE STEPS" />

    元素中添加以下声明* 在清单

    java <uses-permission         android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission         android:name="android.permission.INTERNET" /> <uses-permission         android:name="android.permission.ACCESS_NETWORK_STATE" />

    中添加以下权限* 在 Manifest.xml

    java <uses-feature         android:glEsVersion="0x00020000"         android:required="true"/>

    中指定以下规格* 在 ActivityMain.xml 中添加以下片段代码,以便将谷歌地图添加到您的活动中。

    java <fragment     android:id="@+id/map"     class="com.google.android.gms.maps.SupportMapFragment"     android:layout_width="match_parent"     android:layout_height="match_parent"     />

    • 在 MainActivity.java 添加以下代码

    ```java public class MapsMarkerActivity extends AppCompatActivity implements OnMapReadyCallback {     @Override     protected void onCreate(Bundle savedInstanceState)     {         super.onCreate(savedInstanceState);

    // Retrieve the content view that renders the map.         setContentView(R.layout.ActivityMain);

    // Get the SupportMapFragment and request notification         // when the map is ready to be used.         SupportMapFragment mapFragment = (SupportMapFragment)                                              getSupportFragmentManager()                                                  .findFragmentById(R.id.map);         mapFragment.getMapAsync(this);     }     @Override     public void onMapReady(GoogleMap googleMap)     {         // Add a marker in Sydney, Australia,         // and move the map's camera to the same location.         LatLng myPos = new LatLng(Location.getLatitude(), Location.getLongitude());         googleMap.moveCamera(CameraUpdateFactory.newLatLng(myPos));     } } ```

    • 运行代码。