如果我使用ksoap2調用Web服務,我如何在android上存儲所需的首選項?如何在android上存儲wsdl首選項?
我具有由ksoap2所需的以下屬性:
字符串方法名;
String url;
字符串命名空間;
字符串動作;
我想這些屬性的值存儲在Android的一種偏好,所以每當用戶運行應用程序,他們得到加載。
我是很新的這種東西,而且會感激你的幫助
謝謝
如果我使用ksoap2調用Web服務,我如何在android上存儲所需的首選項?如何在android上存儲wsdl首選項?
我具有由ksoap2所需的以下屬性:
字符串方法名;
String url;
字符串命名空間;
字符串動作;
我想這些屬性的值存儲在Android的一種偏好,所以每當用戶運行應用程序,他們得到加載。
我是很新的這種東西,而且會感激你的幫助
謝謝
我假設你想在你的項目文件中定義的屬性,並在啓動時加載。如果是這樣的話:
1)在您的項目根目錄下創建一個asset/
文件夾。
2)定義屬性文件,例如ws.properties,並將其保存到資產文件夾中。格式必須是這樣的:讀取屬性
methodname=yourMethodNameHere
url=http://your.url.here
namespace=your_namespace_here
action=your_action_here
3)文件在你的代碼的某個地方,這樣的事情:
Resources resources = this.getResources();
AssetManager assetManager = resources.getAssets();
try {
InputStream inputStream = assetManager.open("ws.properties");
Properties properties = new Properties();
properties.load(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
4)現在,您可以繼續參考使用您的設置特性可變的,是這樣的:
String methodName = properties.getProperty("methodname");
當然,這可以通過使用ø組合像其他人所建議的那樣,f SharedPreferences
。然後,您可以在第一次啓動應用時執行步驟3和4,並將這些設置插入到SharedPreferences
中。我想這將是最乾淨的方式來做到這一點,如果你要在代碼中的幾個地方使用這些設置。
使用SharedPreferences機制,是堅持鍵值對的簡單方法。
您可以將其存儲在數據庫中 或者創建擁有所有必要的屬性的序列化對象和使用的ObjectOutputStream到SD卡
保存它首先聲明
私人SharedPreferences _pref; private String PREFNAME =「ThumbUpChamp」;
_pref = getSharedPreferences(爲prefname,Context.MODE_PRIVATE);
3.and使用這樣
編輯_edit = _pref.edit(); _edit.putFloat(「Qualify1」,_ wpm); _edit.commit();
thx很多人,這真棒!我可以通過代碼2修改這個ws.properties嗎? – shadesco 2011-03-21 09:37:47
實際上,我認爲使用AssetManager是不可能的。該文檔說:「這個類提供了一個較低級別的API,它允許您打開並讀取已與應用程序捆綁在一起的原始文件作爲簡單的字節流。」 – rogerkk 2011-03-21 09:54:25
如果您想要定義文件中的屬性,並且需要在安裝後對其進行更改,那麼可能將屬性文件加載到'SharedPreference'中,然後使用該文件將是最佳選擇? – rogerkk 2011-03-21 09:55:56