自动存取Android Bundle中数据,onSaveInstanceState和onRestoreInstanceState存取数据的便捷方案
2016-09-13 15:04
549 查看
DataAutoAccess
自动存取Android Bundle中数据——给需要自动存取的变量添加注解,编译时会通过注解处理自动生成存取的代码用处
Activity或Service启动时自动取出Intent中的数据,并赋值给相应的fieldActivity或Fragment由于系统内存不足将要被杀死时,在onSaveInstanceState方法里存储数据,重启时在onCreate中取出数据并赋值给相应的field
使用
activity 中的使用:public class ExampleActivity extends Activity{ @AutoAccess String name; @AutoAccess String description; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); //get data DataAutoAccess.getData(this, savedInstanceState); //TODO use fields... } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); //save data DataAutoAccess.saveData(this, outState); } }
Intent传参形式:
Intent intent = new Intent(this, TestActivity.class); intent.putExtra("name", "DataAutoAccess"); intent.putExtra("description", "Android bundle data auto access."); startActivity(intent);
经过以上配置之后,DataAutoAccess会自动从intent中取出数据,给name和description变量赋值,而且当activity由于系统内存不足被杀死时,也会自动保存变量值,在onCreate时取出进行自动赋值。是不是感觉到挺Cool!
当然,实际使用过程中不会在每个activity都写一遍存取代码,所以可以把存取代码放在自己activity基类中,子activity只管数据的使用就可以,不需要关心数据存取。另外,DataAutoAccess的使用不局限于activity中,service和fragment中也可以使用,详细的使用和代码请前往Github DataAutoAccess。
项目代码
Github DataAutoAccess欢迎大家提议,我会继续优化,喜欢的就去github上star吧 O(∩_∩)O!
注:引用请注明作者
相关文章推荐
- [Android] 数据实体的自动存取--SQLite篇
- Android——Bundle数据暂存之实现记忆输入内容 自动填充、补全
- [Android] 数据实体的自动存取--SharedPreferences篇
- Android——Bundle数据暂存之实现记忆输入内容 自动填充、补全
- Android开源: 快用Parceler来优雅的进行Bundle数据存取!
- Android数据存取之Databases
- Android数据存取之Databases
- Android中级教程(三)之不同Activity之间的数据传递---Bundle对象的使用!
- Android中级教程(三)之不同Activity之间的数据传递---Bundle对象的使用!
- Android 数据存取
- Asp.Net(C#)+Sql Server三层架构下数据存取方案
- Android数据存取之Databases
- Asp.Net(C#)+Sql Server三层架构下数据存取方案(一)
- Android 数据存取之Files
- 【android】使用SharedPreferences存取复杂数据
- Android中数据存取
- Android判断网络状态是否断开+Android完全关闭应用程序+ 本文讲述了Android中不同Activity之间的数据传递 — Bundle对象的实现(-)+Android中Bundle的使用示例
- Android数据存取 与SQLiter 之二
- Asp.Net(C#)+Sql Server三层架构下数据存取方案(三)
- Android 数据存取试验 (二)