草庐IT

android - 使用 Room 的父类的主键?

我正在使用Android架构组件。因此使用Room'ORM'。我有一个类EQPreset,它有一个成员StringpresetName。此类有一个名为UserDefinedEQPreset的子类,它包含一个int[]arr。我已经使用@Entity注释声明了子类EQPreset和实体,因为我只想将这个子类型存储在db中。现在我想使用父类的(EQPreset)成员StringpresetName作为primarykey。如何在使用Room时将父类的成员声明为primarykey。我知道@Primarykey注解是用来声明主键的。但是如何使用父类的成员作为主键。

android - Maybe<List<T>> 在 Room 中的不正确行为?

我有以下查询方法定义:@Query("SELECT*FROMbox_jobs")fungetAll():Maybe>如果不为空,我想返回此查询的结果,否则返回RESTAPI调用的结果。这是我的逻辑代码:overridefunloadTasks():Maybe>{Log.d(TAG,"Searchingtasksindatabase")returnboxJobDao.getAll().map{boxJobs->boxJobMapper.entityListToTaskList(boxJobs)}.switchIfEmpty(syncTasks())}privatefunsyncTasks

android - Kotlin with Room and Dagger - 编译错误

我正在处理我的第一个AndroidKotlin应用程序。我的第一个Activity是处理模拟数据后,我现在正尝试从数据库中获取数据,但代码无法编译。Kotlin代码:@DaointerfaceTagGroupDao{@Query("select*fromTagGroup")fungetAll():LiveData>}这已生成此java代码:publicclassTagGroupDao_ImplimplementsTagGroupDao{privatefinalRoomDatabase__db;publicTagGroupDao_Impl(RoomDatabase__db){this._

android - 房间持久性库 : Cannot resolve symbol Room

我使用具有以下gradle设置的AndroidStudio3.0Beta2我可以搜索RxRoom但没有创建Room类。按照说明AddComponents后,我不能在我的Fragment中使用Room类。这个类在单独的模块中,应用程序模块不包含任何房间库依赖项。错误在IDE中显示为“无法解析符号房间”。构建.gradleapplyplugin:'com.android.library'android{compileSdkVersion26buildToolsVersion"26.0.1"defaultConfig{minSdkVersion15targetSdkVersion26vers

android - 在 Room 持久性上构建版本时出现错误 [DuplicatePlatformClasses] 类冲突

我已使用本指南在我的Android应用程序中使用Room构建持久性:https://developer.android.com/training/data-storage/room/index.html并添加了如下所示的依赖项:https://developer.android.com/topic/libraries/architecture/adding-components.html当我构建调试版本并部署到手机时,一切正常。当我构建发布签名的APK时,我收到此错误消息:Error:Error:jsondefinesclassesthatconflictwithclassesnowp

android - 从 Flowable Room ORM 发出每个项目

我想在RecyclerView中显示RoomORM中的项目列表。数据正在从网络添加到数据库。问题是每次从Flowable发出整个列表而不是每个项目时我都会得到。我试过.distinctUntilChanged没有任何区别。@Query("SELECT*FROMitems")Flowable>getItems();我也试过只返回一个项目,它只加载第一个是数据库的项目。 最佳答案 是的,Flowable>意味着您将在列表更改时收到一个回调:这就是Room的工作方式。通常,您将该列表传递给DiffUtil,然后生成更新您的Recycler

android - Kotlin + Room : java. lang.IllegalArgumentException:void 无法转换为 Element

我正在尝试在我的Java+Kotlin项目中添加Room,但是当我尝试编译该项目时,它在:app:kaptDebugKotlin上失败并出现以下错误:e:java.lang.IllegalStateException:failedtoanalyze:java.lang.IllegalArgumentException:voidcannotbeconvertedtoanElementatorg.jetbrains.kotlin.analyzer.AnalysisResult.throwIfError(AnalysisResult.kt:57)atorg.jetbrains.kotlin.

android - 为 Android Room 运行测试时出现 java.lang.NoClassDefFoundError

我在为Room运行测试时遇到异常。java.lang.NoClassDefFoundError:android.arch.persistence.db.framework.FrameworkSQLiteOpenHelperFactory我的gradle导入//Roomcompile"android.arch.persistence.room:runtime:1.0.0-alpha3"compile"android.arch.persistence.room:rxjava2:1.0.0-alpha3"annotationProcessor"android.arch.persistence

java - 将 Room 持久性库与 sqlite 一起使用

我有一个使用SqLite存储数据的项目。现在我想创建一些表,并想使用Room持久性库创建这些表。我可以使用room和SqliteApi访问同一个数据库吗?这是我的sqlite代码publicclassDatabaseHelperextendsSQLiteOpenHelper{//TablenamesstaticfinalStringTABLE_FOOD="_food_table";staticfinalStringTABLE_CUISINE="_cuisine_table";staticfinalStringTABLE_UNITS="_units_table";staticfinalS

android - Android Room 数据库中的@Query Update 不更新主键字段

我正在使用RoomDatabase编写Android应用程序。我的数据库包含带有此类代码的GroupVc实体:@EntitypublicclassGroupVc{@ColumnInfo(name="language")privateStringlanguage;@NonNull@PrimaryKey@ColumnInfo(name="name_group")privateStringnameGroup;publicGroupVc(Stringlanguage,StringnameGroup){this.language=language;this.nameGroup=nameGroup