ToB企服应用市场:ToB评测及商务社交产业平台

标题: Android最全Realm数据库利用教程(一):Realm配置和Stetho配置(1),腾讯+ [打印本页]

作者: 立山    时间: 2024-6-23 19:18
标题: Android最全Realm数据库利用教程(一):Realm配置和Stetho配置(1),腾讯+
总结

可以看出,笔者的工作学习模式便是由以下 「六个要点」 构成:
   ❝ 多层次的工作/学习计划 + 番茄工作法 + 定额工作法 + 批处置处罚 + 多任务并行 + 图层工作法❞
  希望大家能将这些要点融入本身的工作学习当中,我相信肯定会工作与学习地更富有成效。
下面是我学习用到的一些书籍学习导图,以及体系的学习资料。每一个知识点,都有对应的导图,学习的资料,视频,面试标题。
**如:我必要学习 **Flutter的知识。(大家可以参考我的学习方法)






大概就上面这几个步骤,这样学习不但高效,而且能体系的学习新的知识。
网上学习资料一大堆,但如果学到的知识不成体系,遇到标题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提拔。
必要这份体系化学习资料的朋友,可以戳这里获取
一个人可以走的很快,但一群人才能走的更远!岂论你是正从事IT行业的老鸟或是对IT行业感爱好的新人,都欢迎加入我们的的圈子(技术交换、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
/**

*/
private static MyApplication instance;
private static RealmConfiguration config;
private static String key = “huangxiaoguo1234”;
@Override
public void onCreate() {
super.onCreate();
/**

*/
Stetho.initialize(
Stetho.newInitializerBuilder(this)
.enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
.enableWebKitInspector(RealmInspectorModulesProvider.builder(this).build())
.build());
Realm.init(this);
instance = this;
new SecureRandom().nextBytes(UIUtils.getRealmKey(key));
config = new RealmConfiguration.Builder()
.name(“huangxiaoguo.realm”)//指定数据库的名称。如不指定默认名为default。
.schemaVersion(0)
.deleteRealmIfMigrationNeeded()//声明版本冲突时自动删除原数据库,开发时候打开
// .inMemory()// 声明数据库只在内存中持久化
.build();
}
public static Context getInstance() {
return instance;
}
public static RealmConfiguration getRealmConfiguration() {
return config;
}
}
RealmConfiguration支持的方法:


package tsou.com.simple.realmtest.utils;
import android.content.Context;
import android.content.res.AssetManager;
import android.widget.Toast;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import io.realm.Realm;
import tsou.com.simple.realmtest.MyApplication;
public class UIUtils {
private static Toast toast;
/**

*/
public static void showToast(Context context, String text) {
if (toast == null) {
toast = Toast.makeText(context, text, Toast.LENGTH_SHORT);
}
toast.setText(text);
toast.show();
}
/**

*/
public static void showToast(String text) {
showToast(getContext(), text);
}
/**

*/
public static Context getContext() {
return MyApplication.getInstance();
}
/**

*/
public static Realm getRealmInstance() {
return Realm.getInstance(MyApplication.getRealmConfiguration());
}
/**

*/
public static byte[] getRealmKey(String key) {
String newKey = “”;
for (int i = 0; i < 4; i++) {
newKey = newKey + key;
}
return newKey.getBytes();
}
/**

*/
public static String getJson(String fileName) {
StringBuilder sb = new StringBuilder();
AssetManager am = getContext().getAssets();
BufferedReader br = null;
try {
br = new BufferedReader(new InputStreamReader(
am.open(fileName)));
String next = “”;
while (null != (next = br.readLine())) {
sb.append(next);
}
} catch (IOException e) {
e.printStackTrace();
sb.delete(0, sb.length());
} finally {
try {
if (br != null) {
br.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return sb.toString().trim();
}
}
在UIUtils工具类中getRealmInstance方法就是得到Realm实例的,其他的方法后期会用到。

方式一:继承RealmObject
package tsou.com.simple.realmtest.bean;
import java.io.Serializable;
import io.realm.RealmObject;
import io.realm.annotations.Ignore;
import io.realm.annotations.PrimaryKey;
import io.realm.annotations.Required;
/**

*/
public class User extends RealmObject {
/**

*/
@PrimaryKey
private int id;
/**

*/
@Required
private String name;
private int age;
/**

*/
@Ignore
private String sex;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
最后

对于很多初中级Android工程师而言,想要提拔技能,每每是本身探索成长,不成体系的学习效果低效漫长且无助。整理的这些架构技术希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,别的的都不重要,希望读者们能谨记这一点。
同时我颠末多年的收藏目前也算收集到了一套完备的学习资料以及高清具体的Android架构进阶学习导图及笔记分享给大家,希望对想成为架构师的朋友有肯定的参考和帮助。
下面是部分资料截图,诚意满满:特殊适合有开发经验的Android程序员们学习。

   岂论遇到什么困难,都不应该成为我们放弃的来由!
  如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言,肯定会认真查询,修正不敷,谢谢。
网上学习资料一大堆,但如果学到的知识不成体系,遇到标题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提拔。
必要这份体系化学习资料的朋友,可以戳这里获取
一个人可以走的很快,但一群人才能走的更远!岂论你是正从事IT行业的老鸟或是对IT行业感爱好的新人,都欢迎加入我们的的圈子(技术交换、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
ndroid开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,别的的都不重要,希望读者们能谨记这一点。
同时我颠末多年的收藏目前也算收集到了一套完备的学习资料以及高清具体的Android架构进阶学习导图及笔记分享给大家,希望对想成为架构师的朋友有肯定的参考和帮助。
下面是部分资料截图,诚意满满:特殊适合有开发经验的Android程序员们学习。
[外链图片转存中…(img-K2eAW77H-1715233702979)]
   岂论遇到什么困难,都不应该成为我们放弃的来由!
  如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言,肯定会认真查询,修正不敷,谢谢。
网上学习资料一大堆,但如果学到的知识不成体系,遇到标题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提拔。
必要这份体系化学习资料的朋友,可以戳这里获取
一个人可以走的很快,但一群人才能走的更远!岂论你是正从事IT行业的老鸟或是对IT行业感爱好的新人,都欢迎加入我们的的圈子(技术交换、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4