📜  Android 中的谷歌地图

📅  最后修改于: 2022-05-13 01:55:30.004000             🧑  作者: Mango

Android 中的谷歌地图

地图非常有用,它可以提高应用程序的生产力。 Google Maps API 允许 Android 开发人员将 Google Maps 集成到他们的应用程序中。

以下是将 Google 地图集成到 Android 应用程序的分步过程:

  1. 转到 https://developers.google.com/maps/documentation/android-api/signup 并点击“GET STARTED”按钮,如图:
  2. 现在选择 Map 复选框并单击 Continue 按钮,如下所示:
  3. 选择要在其中启用 Google Map API 的项目,然后单击 Next。将为所选项目生成一个新密钥。
  4. 跳过计费流程
  5. 要集成 Google Map API,需要您机器的 SHA1 证书。因此,要查找 SHA1 证书,请按照以下步骤操作:
    • 打开命令提示符并转到您的Java bin 文件夹
      cd C:\Program Files\Java\jdk1.8.0_91\bin
    • 给出以下 CMD 命令以获取证书足迹:

  6. 转到 https://console.developers.google.com/apis/credentials
  7. API 密钥部分,单击您要选择的 API 密钥右侧的铅笔按钮,用于附加您的应用程序。
  8. 在应用程序限制中,选择 Android 应用程序
  9. 点击添加包名和指纹
  10. 输入您的应用程序包名称和在上述步骤中找到的指纹,然后单击保存按钮。
  11. 在 Project ->app ->src ->build.gradle ->dependencies 中插入以下内容
    compile 'com.google.android.gms:play-services:11.6.0'
  12. 在 AndroidManifest.xml 的元素中添加以下声明
    
    
    
  13. 在 Manifest.xml 中添加以下权限
    
    
    
    
  14. 在 Manifest.xml 中指定以下规范
    
    
  15. 在 ActivityMain.xml 中添加以下片段代码,以将 Google 地图添加到您的活动中。
    
    
  16. 在 MainActivity 中添加以下代码。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));
        }
    }
    
  17. 运行代码。