2014-10-23 16 views
5

Trong ứng dụng android của tôi, tôi cần phải giữ các thiết lập cho url api, mà thay đổi dựa trên loại xây dựng (tôi sẽ có một để gỡ lỗi/dàn dựng và phát hành). Việc lưu giữ tệp này vào tệp strings không cảm thấy đúng vì thư mục này có các chuỗi được bản địa hóa và không có gì để bản địa hóa về url api.Trên Android nơi tốt nhất để giữ các cài đặt như api url

Nơi tốt nhất để giữ url này ở đâu?

+0

bạn đang sử dụng công cụ xây dựng nào? kiến ? gradle? – Zakaria

+0

có thể trùng lặp của [Gradle check constant value to show error if true] (http://stackoverflow.com/questions/26489564/gradle-check-constant-value-to-show-error-if-true) – Zakaria

Trả lời

10

Bạn có thể sử dụng lớp BuildConfig, ví dụ:

android { 
    buildTypes { 
     debug { 
      buildConfigField 'String', 'API_URL', 'http://...' 
     } 

     release { 
      buildConfigField 'String', 'API_URL', 'http://...' 
     } 
    } 
} 

Hoặc, nếu bạn không muốn để lưu trữ các URL trong build.gradle, bạn có thể sử dụng debugrelease thư mục để tạo ra một lớp học đặc biệt mà các cửa hàng URL:

  • debug\src\java\com\myapp\ApiParam.java
  • release\src\java\com\myapp\ApiParam.java

Bây giờ, trong dự án main của bạn, bạn có thể tham khảo lớp ApiParam.

1

Tệp tài nguyên là tốt cho điều đó, bạn không phải đặt trong tất cả các thư mục dịch và những gì là tốt đẹp về chúng là bạn có thể ghi đè chúng từ một dự án thư viện cho dự án chính.

Nếu bạn không muốn sử dụng chúng, thì một lớp mẫu có chuỗi không đổi.

Các vấn đề liên quan