2017-07-29 60 views
1

所以,我不是Java的主人,但我想用應用程序幫助我的一個朋友。 的情況是,我有一個社會網絡的應用程序,在Constants.java超過100個公共靜態最後的字符串是這樣的:Android應用程序 - 可以修改Constants.java中的字符串嗎?

public static final String METHOD_FRIENDS_REQUEST = API_DOMAIN + "api/" + API_VERSION + "/method/friends.sendRequest" + API_FILE_EXTENSION; 
public static final String METHOD_FRIENDS_ACCEPT = API_DOMAIN + "api/" + API_VERSION + "/method/friends.acceptRequest" + API_FILE_EXTENSION; 
public static final String METHOD_FRIENDS_REJECT = API_DOMAIN + "api/" + API_VERSION + "/method/friends.rejectRequest" + API_FILE_EXTENSION; 
public static final String METHOD_FRIENDS_REMOVE = API_DOMAIN + "api/" + API_VERSION + "/method/friends.remove" + API_FILE_EXTENSION; 
public static final String METHOD_FRIENDS_GET = API_DOMAIN + "api/" + API_VERSION + "/method/friends.get" + API_FILE_EXTENSION; 

的API_VERSION聲明如下:

public static final String API_VERSION = "v2"; 

而且我必須能夠在使用應用程序時修改API_VERSION的值。 (例如:LoginActivity.java中的切換按鈕,將API_VERSION的值從「v2」修改爲「v3」。

我知道如何將按鈕與點擊偵聽器相關聯,以使用set和get方法等。但是,如果你有什麼可以做的最好的方法什麼想法?我看到,在Constants.java,我不能使用的功能?

感謝的提前, 問候

回答

1

的解決方案是「簡單「:您必須設計應用程序的設計點。常量並不意味着在運行時發生更改。

這意味着:您需要一種方法來動態計算這些朋友字符串的值!像:有一個getter方法的類,每個方法都返回這樣一個字符串。你給的版本字符串到類的構造函數 - 這樣

public String getRequest() { 

可以返回根據版本字符串傳遞早前的結果。

+0

是的,這正是我在想的,謝謝你的回覆! – Lio

相關問題