Để tạo và cấu hình Google Maps API cho ứng dụng Android, bạn cần thực hiện các bước sau:
1. Tạo tài khoản Google Cloud
- Truy cập Google Cloud Console.
- Đăng nhập vào tài khoản Google của bạn hoặc tạo tài khoản mới nếu bạn chưa có.
2. Tạo một dự án mới
- Trên Google Cloud Console, chọn hoặc tạo một dự án mới từ menu thả xuống ở góc trên cùng bên trái.
- Nhấn vào “New Project” và nhập tên dự án của bạn, sau đó nhấn “Create”.
3. Kích hoạt Google Maps Android API
- Chọn dự án mà bạn vừa tạo.
- Trong thanh điều hướng bên trái, chọn “APIs & Services” -> “Library”.
- Tìm kiếm “Maps” và chọn “Maps SDK for Android”.
- Nhấn nút “Enable” để kích hoạt API này cho dự án của bạn.
4. Tạo API Key
- Quay lại “APIs & Services” -> “Credentials”.
- Nhấn vào “Create Credentials” và chọn “API key”.
- Một API key sẽ được tạo và hiển thị trên màn hình. Sao chép API key này để sử dụng trong ứng dụng Android của bạn.
5. Cấu hình API Key
- Nhấn vào API key mà bạn vừa tạo để cấu hình.
- Trong phần “Application restrictions”, chọn “Android apps”.
- Nhấn vào “Add an item” và nhập SHA-1 fingerprint cùng với tên gói (package name) của ứng dụng Android của bạn.
6. Lấy SHA-1 fingerprint
- Để lấy SHA-1 fingerprint, mở Android Studio.
- Mở cửa sổ “Gradle” (thường nằm ở phía bên phải màn hình).
- Chọn dự án của bạn -> Tasks -> android -> signingReport.
- Chạy signingReport và tìm SHA-1 trong kết quả đầu ra. Sao chép SHA-1 fingerprint này để sử dụng trong cấu hình API key.
7. Cấu hình ứng dụng Android
dependencies {
implementation 'com.google.android.gms:play-services-maps:18.0.0'
}
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.yourapp">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<!-- Khóa API cho Google Maps -->
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="YOUR_API_KEY"/>
</application>
</manifest>
8. Sử dụng Google Maps trong ứng dụng
<fragment
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
import androidx.fragment.app.FragmentActivity;
import android.os.Bundle;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
public class MapsActivity extends FragmentActivity implements OnMapReadyCallback {
private GoogleMap mMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
// Lấy SupportMapFragment và thông báo khi sẵn sàng để sử dụng
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
// Thêm một marker ở một địa điểm cụ thể và di chuyển camera
LatLng sydney = new LatLng(-34, 151);
mMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Sydney"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
}
}
9. Chạy ứng dụng
- Chạy ứng dụng trên thiết bị Android hoặc trình giả lập của bạn để xem bản đồ Google Maps được hiển thị.
Bây giờ bạn đã hoàn tất việc tạo và cấu hình Google Maps API cho ứng dụng Android của mình. Nếu bạn gặp bất kỳ vấn đề nào, hãy đảm bảo kiểm tra lại các bước và xác minh rằng tất cả các cấu hình và khóa API đều đúng.
Để phóng to (zoom) bản đồ trong ứng dụng Android sử dụng Google Maps API, bạn có thể thực hiện điều này trong phương thức onMapReady
. Dưới đây là các bước chi tiết để thực hiện việc này:
import androidx.fragment.app.FragmentActivity;
import android.os.Bundle;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
public class MapsActivity extends FragmentActivity implements OnMapReadyCallback {
private GoogleMap mMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
// Lấy SupportMapFragment và thông báo khi sẵn sàng để sử dụng
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
}
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
// Thêm một marker ở một địa điểm cụ thể và di chuyển camera
LatLng sydney = new LatLng(-34, 151);
mMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Sydney"));
// Phóng to bản đồ đến Sydney với mức zoom là 10
float zoomLevel = 10.0f; // Thay đổi mức zoom tại đây
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(sydney, zoomLevel));
}
}
Điều chỉnh mức zoom
- Bạn có thể điều chỉnh mức zoom bằng cách thay đổi giá trị của
zoomLevel
. Giá trị zoom càng cao thì bản đồ càng được phóng to, ví dụ:1.0f
là mức zoom toàn cầu.5.0f
là mức zoom khu vực.10.0f
là mức zoom thành phố.15.0f
là mức zoom đường phố.20.0f
là mức zoom chi tiết tối đa.