2012-04-19 66 views
1

我正在使用屬性文件來獲取我從我的android調用的各種web服務的url。我想提供一個配置選項,以便可以修改Web服務的IP地址。 如何繼續?如何修改我的自定義屬性文件android

我在src文件夾中的資源文件夾,其中有下列值 更新= HTTP://10.52.165.226:50000 /安卓/ REST/GET/updateSfc ShopOrder = HTTP://10.52.165.226:50000/android/rest/getShopOrder/bySite?site =

我正在使用資源包在Android中使用此值。

我想讀取文件並替換所有重複的IP地址。如何RAD的屬性文件,並在形成apk文件的一部分的Android

+0

此外,它幫助誰面臨着同樣的問題其他人。通過查看接受的答案。您可以通過點擊答案右側的支票圖片來接受答案。 – Javanator 2012-04-21 05:15:52

+0

如果您對所有給定的答案不滿意。即使那樣,你一定是找到了你自己的解決方案。張貼並接受你的答案。但要儘量讓問題與接受的答案結合起來。我知道這一切都很明顯。但有些時候它更好的是詳細:) – Javanator 2012-04-21 05:19:38

回答

2

資源,資產和其他文件/文件夾編輯它不能modified.You可以使用database爲根據行號,您將使用

8

這裏是您可以使用屬性文件在您的項目的完整解決方案。

1創建Android專案

2編輯該文件夾的資產名爲app.properties文件,並在要使用例如,作爲

test=success 

和保存文件的屬性寫

3寫這個方法在你的活動課

private Properties loadPropties() throws IOException { 
    String[] fileList = { "app.properties" }; 
    Properties prop = new Properties(); 
    for (int i = fileList.length - 1; i >= 0; i--) { 
    String file = fileList[i]; 
    try { 
     InputStream fileStream = getAssets().open(file); 
     prop.load(fileStream); 
     fileStream.close(); 
    } catch (FileNotFoundException e) { 
     Log.d(TAG, "Ignoring missing property file " + file); 
    } 
    } 
    return prop; 
    } 

4隨着onCreate方法寫一些這樣的事

 Properties prop = null; 
    try { 
     prop = loadPropties(); 
    } catch (IOException e) { 
     Log.e(TAG, "Exception", e); 
    } 
    Toast.makeText(getApplicationContext(), "Result " + prop.getProperty("test"), 
        Toast.LENGTH_LONG).show(); 

5中添加必要的進口

希望這有助於:)

+0

如果你在你的項目中定義你自己的應用程序類並從那裏加載屬性,會更好。 – Javanator 2012-04-19 06:49:08

+0

我在src文件夾中有屬性文件。可以在那裏應用這種方法嗎? – May13ank 2012-04-20 09:34:07

+0

不,將屬性文件保存在src文件夾中也不明智。資產文件夾僅用於此目的 – Javanator 2012-04-21 05:09:44