編輯:關於Android編程
Android中,Activity之間的數據傳遞有些復雜,比如通過Intent和Bundle等等,傳遞復雜對象時必須是實現了Serializable接口的類,這在很多時候使得處理頁面間的數據傳遞很不方便。在JavaWeb中,Session對象傳遞數據很實用方便,對此,在Android中可不可以自己實現一個類似JavaWeb中的Session呢?
其實很簡單,在不嚴謹的情況下,具體實現過程如下:
/*/////////////////////////////////////////////////////////////////
_ooOoo_
o8888888o
88" . "88
(| ^_^ |)
O\ = /O
____/`---'\____
.' \\| |// `.
/ \\||| : |||// \
/ _||||| -:- |||||- \
| | \\\ - /// | |
| \_| ''\---/'' | |
\ .-\__ `-` ___/-. /
___`. .' /--.--\ `. . ___
."" '< `.___\_<|>_/___.' >'"".
| | : `- \`.;`\ _ /`;.`/ - ` : | |
\ \ `-. \_ __\ /__ _/ .-` / /
========`-.____`-.___\_____/___.-`____.-'========
`=---='
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
佛祖保佑 永無BUG
Code by duxu0711@163.com
////////////////////////////////////////////////////////////////*/
package cn.geekduxu.android;
import java.util.HashMap;
import java.util.Map;
/**
* 在Android中模擬JavaWeb的Session
* @author 杜旭
*/
public class Session {
private static Session INSTANCE;
private Map map;
private Session(){
map = new HashMap();
}
/**
* 獲取Session對象
* @return Session對象的引用
*/
public static synchronized Session getSession(){
if(null == INSTANCE){
INSTANCE = new Session();
}
return INSTANCE;
}
/**
* 保存值到Session中
* @param key - 與指定值關聯的鍵
* @param value - 與指定鍵關聯的值
*/
public void put(String key, Object value){
map.put(key, value);
}
/**
* 獲取Session中保存的對象
* @param key 要返回其關聯值的鍵
* @return 指定鍵所映射的值;如果不包含該鍵的映射關系,則返回null
*/
public Object get(String key){
return map.get(key);
}
/**
* 從Session中移除一個對象
* @param key 要移除對象的鍵
* @return 刪除的對象
*/
public Object remove(String key){
return map.remove(key);
}
/**
* 清空Session
*/
public void clear(){
map.clear();
}
}
這樣就可以在Android中簡單模擬出JavaWeb中Session的效果,對於傳遞數據會方便很多。(示例中的代碼並不嚴謹,在程序中使用的話需考慮異常等情況)
AndroidStudio應用調試技巧(上)
前言安卓開發的過程中,需要對開發的程序進行調試。谷歌官方和非官方,提供了很多幫助我們調試代碼的工具和方法。有的使用起來很簡單,有的則功能強大,很少有機會接觸。因此,我們打
Android學習筆記(十七)——使用意圖調用內置應用程序
使用意圖調用內置應用程序 1、創建一個新的Android項目並命名為Intents,在main.xml文件中添加兩個Button: 2、
Android編程之簡單計時器實現方法
本文實例講述了Android編程之簡單計時器實現方法。分享給大家供大家參考,具體如下:這裡利用ContextMenu(上下文菜單),Chronometer實現簡單計數器。
vivo X9有幾個版本?vivo X9標准版和高配版區別對比
vivo X9作為此前X7的升級版,外觀變化不大,主要變化在於背面天線變了,采用類似魅族MX6/iPhone7類似的弧線天線設計,背面金屬屏占比更高,外觀顯