LitePal使用踩坑指南

随着LitePal更新到3.0,第一次使用感觉很慌,碰到了很多问题不过所幸都解决了。以下是各问题解决的方法:

一、关于创建的问题

       首先我们在GitHub找到他的官网LitePal官网  中找到最后的使用文档,在app包下的build.gradle中的dependencies依赖添加implementation 'org.litepal.android:java:3.0.0'。这是java所添加的如果是kotlin自行看说明文档。

       然后需要在app/src/main包下创建assets文件,在assets文件下创建new-->file,将文件命名为litepal.xml,不然会出现

Caused by: org.litepal.exceptions.InvalidAttributesException: dbname is empty or not defined in litepal.xml file, or your litepal.xml file is missing.

这很尴尬的错误,提示找不到该文件。

然后需要在该文件下创建相应的配置文件

<?xml version="1.0" encoding="utf-8"?>
<litepal>
    //数据库名
    <dbname value="demo" />

    //数据库版本
    <version value="1" />

    //相应的Java文件这个下文会提到,Litepal会根据内容创建相应的对象
    <list>
         <mapping class= "com.xxxx.xxxx.xxxx"/>
    </list>

   //这个只有两个属性可选,external和internal,其中external是在外部内存中创建相应的文件,地址如下/storage/emulated/0/xiaoxiao/database。这个需要在manifest申明权限WRITE_EXTERNAL_STORAGE,而internal则会在默认包下创建相应的包com.xxxx.xxxx.database.
    <storage value="xiaoxiao/database" />
   
</litepal>

然后就是在manifest 的 <application 标签下添加 android:name = "org.litepal.LitePalApplication"或者oncreat()方法中写入LitePal.initialize(this); 然后就可以创建类了。添加私有属性并创建getter,setter方法方便日后的赋值。

二、其他问题

这个还没有遇到,遇到了再加吧。

猜你喜欢

转载自blog.csdn.net/qq_37952125/article/details/83276531