当前位置: 首页 > 知识库问答 >
问题:

Andoridx房间接收问题

向子安
2023-03-14

我开始使用最新的androidx。支持io的文件室版本。reactivex返回类型。

dependencies {
    def room_version = "2.1.0-alpha02"
    implementation "androidx.room:room-rxjava2:$room_version"
    kapt "androidx.room:room-compiler:$room_version"
    testImplementation "androidx.room:room-testing:$room_version"
}

简单dao类

@Dao
interface UserDao : BaseDao<UserTable> {

    @Insert(onConflict = OnConflictStrategy.IGNORE)
    fun insertUser(user: UserTable):Maybe<Long>

    @Update
    fun updateUser(user:UserTable):Completable

    @Query("DELETE FROM $USER_TABLE")
    fun clear()
}

生成用户dao\u Impl。java出现错误

错误:从内部类访问局部变量用户;需要宣布为最终

突出显示的字段在此方法中

  @Override
  public Maybe<Long> insertUser(UserTable user) {
    return Maybe.fromCallable(new Callable<Long>() {
     @Override
     public Long call() throws Exception {
       __db.beginTransaction();
        try {
          long _result = 
           __insertionAdapterOfUserTable.insertAndReturnId(user);//error line
           __db.setTransactionSuccessful();
         return _result;
        } finally {
         __db.endTransaction();
        }
      }
    });
  }

的确,在java中应该将(UserTable user)声明为final,但它是由类生成的。有人遇到过这个吗?

共有2个答案

邢勇
2023-03-14

我正在使用Linux机器并结合user3021656和tynn的答案成功构建

compileOptions {
  sourceCompatibility JavaVersion.VERSION_1_8
  targetCompatibility JavaVersion.VERSION_1_8
}

并将Android Studio的Java版本设置为

java版本“1.8.0\u 191”

Java(TM)SE运行时环境(build 1.8.0_191-b12)

羿易安
2023-03-14

我也有同样的问题。通过添加

compileOptions {
  sourceCompatibility JavaVersion.VERSION_1_8
  targetCompatibility JavaVersion.VERSION_1_8
}

内置。格拉德尔

 类似资料:
  • 我想实现Android房间持久性。这是我的DAO接口。 出于某种原因,我有以下编译错误: 错误:可观察的查询返回类型(LiveData、Flowable、DataSource、DataSourceFactory等)只能与直接或间接(例如通过@关系)访问至少一个表的SELECT查询一起使用。对于@RawQuery,您应该通过observedEntities字段指定要观察的表的列表。公开摘要andro

  • 下面的奇怪问题是代码示例,无法创建复合主键 破例 不确定哪里的问题是一切看起来都很好,但当我删除主键注释,这个例外不会出现,对于语法,我遵循官方Android留档。也没有给出有关问题位置的任何详细信息。

  • 在许多应用中,有必要将用户划分为可以一并处理的几个子集。最好的例子是,一个包含多个房间的聊天应用,当用户收到他所在的房间的消息,而不会收到其他人所在房间的消息。Flask-SocketIO支持通过join_room()和leave_room()函数来支持房间的概念: from flask_socketio import join_room, leave_room @socketio.on('j

  • 4. 房间截图 4.1. 功能 获取房间的播放截图的URL 4.2. 地址 http://api.bokecs.com/liveService/{domain}/{appname}/{streamname}/{time}/{sign}/screenshot 请求方式:GET 4.3. 请求参数 domain 客户加速域名 appname App名称,必填,在URL中体现 streamname St

  • 我有一个DAO接口,其中有多个实现,我希望其中一个是Room实现(Kotlin):

  • 我有这个问题关于空数据库返回与房间和RxJava单一。我知道我的数据库是空的,所以我希望在触发时得到一个空的返回 问题是当我调用这个函数如下所示时 但仍然返回异常和崩溃 w/system.err:io.reactivex.exceptions.onerrornotimplementedexception:查询返回空结果集:SELECT*FROM Times WHERE timestamp=? 我在