2012-04-19 63 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