坑:Litepal save方法返回true却没有保存

在开发 Madoka 日记时,做到导出导入的功能时,我想偷个懒导出直接用 Gson 将 Java 对象转换为 json 然后放在 txt 中,导入的时候再将 json 转为 javaBean 就行啦。

而数据库我用的是 Litepal 直接搞,使用这个库的好处就是速度快,方便,适合新手。

但其实 sqlite 的语法和一些其他的语句并不难,所以用这个库就是为了方便…

使用 Litepal 储存数据时,需要调用 save() 方法。

这里我就遇到了一个问题,明明 save() 方法返回的是 true ,但数据库里没有需要保存的数据啊?

1
2
3
Gson gson = new Gson();
Diary diary = gson.fromJson(json, Diary.class);
return diary.save();

这是调用 Gson 将 json 转换为 javabean 对象。

明明 Diary 的内容全是正确的,我开始询问度娘。

结果没找到跟我的问题直接相关的文章,结果我看到了有个人在吐槽啥 setting getting,我就想到了会不会是因为没有调用 Diary 的构造方法?

Diary 作为一个 Litepal 的,它是继承自 LitePalSupport 的,会不会是因为没有调用 LitePalSupport 的构造方法呢?

我将导入代码改了一下:

1
2
3
4
5
6
7
8
Gson gson = new Gson();
Diary diary = gson.fromJson(json, Diary.class);
Diary saveDiary = new Diary();
saveDiary.setId(diary.getId());
saveDiary.setCreatedTime(diary.getCreatedTime());
saveDiary.setLastUpdatedTime(diary.getLastUpdatedTime());
... 省略一万个代码
return saveDiary.save();

果然,最后正常了…

(水文真开心)

咕咕咕

Android Shizuku源码分析 第二篇

又是前言

上一篇的 Shizuku 源码分析,我大概从我们开发的应用到 ShizukuService 再到 SystemService 都通了一遍。在文章的结尾我只提到了 moe.shizuku.service 包下的 Starter 这个 Java 类的 main 方法启动了整个 ShizukuService ,所以我们才能愉快地调用 Shizuku 的 API。

我们接下来要更深入分析,去 Navtive 层看看。我想要知道 Starter 的 main 方法又是谁调用的?怎么调用的?

Android Shizuku源码分析

前言

上一篇文章我使用了 Shizuku 去调用系统API:文章链接

这次就来看看 Shizuku 的源码是怎么写的。

最开始我用 Notepad++ 看,最后还是用 as 看源码好点吧。

官方文档

酷安下载 ShizukuManager

Watch it on GitHub

Shizuku 是什么?

Shizuku app 会引导用户使用 root 或是 adb 方式运行一个进程(Shizuku 服务进程)。

  1. 应用进程启动时 Shizuku 服务进程发送 binder 至应用进程
  2. 应用通过该 binder 与 Shizuku 服务进程交互,Shizuku 服务进程通过 binder 与 system server 交互

Android 监听第三方Activity的一举一动

前言

距离上一次更新也已经是六个月前了。感觉2019年过得真不咋样,什么也没干成吧,没有什么进步。

不知不觉又是新的一年,2019是去年,2018就成了前年了。

这个冬天我们这都没怎么下过雪,积雪的话我知记得有一次,融化得还很快。

国内也出现了传染病,迄今为止有五千多人中枪了吧。现在也不让出去,亲戚也都没有拜完,现在天天在家窝。(不过好处就是不用上学啦)

今年的央视春晚也没有看,bilibili还搞了拜年祭,拜年祭真的是一年比一年棒了,可惜我也没兴趣看。

最近在补魔法少女小圆,看得很慢。1月新番也没啥期待的,只有一部喜欢的:某科学电池炮T,毕竟是我的入坑番。还有一部是异度入侵,我不太喜欢目前的剧情,唯一喜欢的就只有OP了。

哦其实还有Acfun独播的达尔文游戏,也还可以(因为我喜欢女主的性格)

总结:一月新番喜欢的只有一部番和一首歌,没了。

感觉越来越没意思了,也可能是我心态的变化,现在我都一直在看以前的番,新番我已经没啥可期待的了。

Android笔记#1 View的事件分发机制解析

咕咕咕

基本上本文是把《Android艺术开发探索》这本书中的 View 事件分发机制 这一章节总结一下。

很久以前的 Android 开发笔记太鸡儿水了。

简单介绍

众所周知,一个事件序列是由 MotionEvent.ACTION_DOWN(按下) 开始,多个 MotionEvent.MOVE(移动) 和一个 MotionEvent.ACTION_UP(抬起) 结束。

一个事件的传递顺序:Activity - > Window -> DecorView - > RootView (你所设置的 View)

ViewGroup 是继承自 View 的,这点也是基础中的基础了。

知乎日报的坑

没想到吧!本鸽子想起自己的博客啦!

暑假到了,感觉时间跟不要钱一样,没有了时间概念了233

我实在没啥可写的,就随便说说这两天干了啥吧

昨天我开始写一个第三方的知乎日报客户端

因为太无聊了,就随便搞搞吧。用的是这个API

简单说一下之前遇到的问题吧,以及开发的过程

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×