live and dev environment on android studio
Cách thiết lập môi trường Live (Production) và Dev (Development) trên Android Studio
Khi phát triển ứng dụng Android, bạn cần tách biệt môi trường Dev (phát triển) và Live (sản phẩm chính thức) để tránh nhầm lẫn dữ liệu, API và cài đặt. Dưới đây là các cách phổ biến để làm điều này trong Android Studio.
1. Sử dụng Build Variants (Product Flavors)
Android Studio cho phép bạn định nghĩa các biến thể (build variants) để có các cấu hình riêng cho môi trường Dev và Live.
Bước 1: Cấu hình Product Flavors trong build.gradle (Module: app)
build.gradle (Module: app)
Mở build.gradle
, thêm đoạn mã sau vào khối android
:
Bước 2: Sử dụng Product Flavors trong mã nguồn
Bạn có thể truy xuất URL API dựa vào BuildConfig
:
Khi chạy ứng dụng:
Nếu chọn dev, API sẽ là
"https://dev.api.example.com/"
Nếu chọn live, API sẽ là
"https://api.example.com/"
2. Tạo các file cấu hình riêng cho từng môi trường
Thay vì hardcode API vào build.gradle
, bạn có thể sử dụng file XML riêng biệt.
Bước 1: Tạo thư mục resource riêng
Trong res/values/, tạo hai thư mục:
res/values-dev/strings.xml
res/values-live/strings.xml
Bước 2: Định nghĩa API URL cho từng môi trường
res/values-dev/strings.xml
res/values-live/strings.xml
Bước 3: Truy xuất giá trị trong code
3. Tuỳ chỉnh icon và tên ứng dụng theo môi trường
Bạn có thể đặt tên ứng dụng khác nhau cho bản Dev và Live.
Bước 1: Cấu hình AndroidManifest.xml
AndroidManifest.xml
Bước 2: Chỉnh sửa strings.xml
cho từng môi trường
strings.xml
cho từng môi trườngres/values-dev/strings.xml
res/values-live/strings.xml
Ứng dụng Dev sẽ có tên khác với Live trên thiết bị.
4. Chuyển đổi giữa các môi trường trong Android Studio
Bạn có thể chọn môi trường trong Build Variants:
Mở Build Variants: Vào
View
→Tool Windows
→Build Variants
Chọn biến thể cần build
devDebug
để chạy môi trường DevliveRelease
để build môi trường Live
5. Sử dụng các file google-services.json
riêng biệt cho Firebase
google-services.json
riêng biệt cho FirebaseNếu ứng dụng dùng Firebase, bạn cần có 2 file google-services.json
riêng cho Dev và Live:
app/src/dev/google-services.json
app/src/live/google-services.json
Cấu hình tự động chọn file Firebase trong build.gradle
:
6. Tích hợp CI/CD để build theo môi trường
Nếu bạn sử dụng GitHub Actions, GitLab CI/CD hoặc Jenkins, có thể tự động build APK theo môi trường:
Kết luận
Bằng cách sử dụng Build Variants, Product Flavors, resource files riêng biệt, và Firebase cấu hình động, bạn có thể dễ dàng quản lý môi trường Dev và Live trên Android Studio.
Last updated