Tag: 领域

不能@Required或@NotNull

在使用REALM版本4.3.3进行Android开发时,出现以下错误: Error: Field “groupName” with type “pizware.evaluapp.Models.Group” can not be @Required or @NotNull. 但是我没有在任何领域使用这些标签。 有谁知道发生了什么事?

Android的测试在领域的kotlin

如何才能做一个简单的测试在Android的领域数据库在Kotlin实施测试? 我试图从github上的java realm test中将一个片段调整为kotlin,并得到下一个代码: import io.realm.Realm import io.realm.log.RealmLog import org.hamcrest.CoreMatchers import org.junit.Assert import org.junit.Test import org.junit.Before import org.junit.Rule import org.mockito.Mockito.`when` import org.powermock.api.mockito.PowerMockito import org.powermock.modules.junit4.rule.PowerMockRule class DBTest { @Rule var rule = PowerMockRule() lateinit internal var mockRealm: Realm @Before fun setup() { PowerMockito.mockStatic(RealmLog::class.java) PowerMockito.mockStatic(Realm::class.java) val mockRealm = PowerMockito.mock(Realm::class.java) `when`(Realm.getDefaultInstance()).thenReturn(mockRealm) this.mockRealm = mockRealm } @Test fun shouldBeAbleToGetDefaultInstance() […]

错误:包含非法的最终字段-Kotlin

我正在使用带有Realm的Kotlin数据类,Gson注释用于从服务器获取数据。 问题:当我在android studio中运行项目时,会出现以下错误 Error:Class “VenderConfig” contains illegal final field “name”. 我正在学习Kotlin,所以对此没有太多的想法。 我的VenderConfig类是: @RealmClass class VenderConfig( @SerializedName(“name”) val name: String? = null, @SerializedName(“website”) val wb_url: String? = null, @SerializedName(“icon”) val icon: String? = null, @SerializedName(“logo”) val logo: String? = null, @SerializedName(“description”) val description: String? = null, @PrimaryKey @SerializedName(“id”) val id: Int? = null ) : RealmObject() […]

Android中的Realm 0.87.5

我已经更新Realm 0.87.5,现在我得到构建这个错误。 你能帮我一下吗? Error:Execution failed for task ‘:app:transformNativeLibsWithMergeJniLibsForDebug’. > com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK lib/x86/librealm-jni.so File1: /Users/[USER_NAME]/.gradle/caches/modules-2/files-2.1/io.realm/realm-android/0.87.5/ab4e1fead1380252dad0e95658e53ea0c113e89c/realm-android-0.87.5.jar File2: /Users/[USER_NAME]/.android/build-cache/97d752c34cee76117e22adcee3a9c2d132f80273/output/jni 根源依赖: 应用模块相关性:

Android,领域,Gradle:错误:注释处理器:找不到RealmProcessor

Android Studio 2.3.3 我的项目bulid.gradle: // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { ext.kotlin_version = ‘1.1.3’ repositories { jcenter() } dependencies { classpath ‘com.android.tools.build:gradle:2.3.3’ classpath ‘com.google.gms:google-services:2.0.0-alpha6’ classpath “io.realm:realm-gradle-plugin:3.5.0” classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version” // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files […]

RealmResults大小正在返回零

我有一个小问题,我找不到任何结果。 是的,我也做了一些研究。 我有一个variablesmResults = RealmResults ; 这有数据,你可以看到下面的图片 但是当我键入>> mResults.size <<返回0.问题是什么? 顺便说一句。 我在Android使用kotlin工作。 pröblem在RecyclerviewgetItemCöunt中 ActivityMain :::: Realm.init(this) val configuration = RealmConfiguration.Builder().build() Realm.setDefaultConfiguration(configuration) mRealm = Realm.getDefaultInstance() val results:RealmResults = mRealm.where(Drop::class.java).findAll() mToolbar = findViewById(R.id.toolbar) mRecycler = findViewById(R.id.rv_drops) val manager = LinearLayoutManager(this) mRecycler.layoutManager = manager mRecycler.adapter = AdapterDrops(this, results) open class Drop : RealmObject { private var what: String? […]

“对象”不是这个域的模式的一部分

当我调用realm.where(MessageEventModel::class.java).findAll() 它抛出excepiton:这是错误的 java.lang.IllegalArgumentException: MessageEventModel is not part of the schema for this Realm at io.realm.internal.modules.CompositeMediator.getMediator(CompositeMediator.java:172) at io.realm.internal.modules.CompositeMediator.getTableName(CompositeMediator.java:90) 这是我的应用程序类 class MyApp : Application() { override fun onCreate() { super.onCreate() Realm.init(this) val realmConfiguration = RealmConfiguration.Builder() .deleteRealmIfMigrationNeeded() .name(“my_db”) .build() Realm.setDefaultConfiguration(realmConfiguration) } } 这是我的领域模型 class MessageEventModel : RealmObject{ constructor() var message = “” constructor(message: String) : this(){ this.message = […]

领域调用setter

我使用领域作为数据库和kotlin作为语言。 我为属性实现了我的自定义setter方法。 Realm能以某种方式称呼这个设定者吗? 例如: open class Human(): RealmObject() { open var Name: String = “” set(value) { setName(value) } } 现在我也有一个属性changeDate ,这将是很好,如果我可以在setName自动设置changeDate新的实际日子。 但是如果Realm也调用这个方法,我不能这样做。 谢谢

用于Java兼容性的公共字段

最近我发现Kotlin是一种语言,因为我们开发的平台是基于Java 6的,因此近年来没有任何语法糖给Java。 只有一件事使得在开发中不可能使用Kotlin而不是Java,也就是说,我们开发的平台在内部使用了一些反思,并要求成员公开。 否则将无法正常工作。 所以,从Kotlin文件生成的字节码实际上产生了公共的getter和setter,这些字段本身仍然是私有的。 有办法克服这个,所以我得到真正的公共领域? 我意识到需要公共领域的设计失败,但是这个系统对我们来说是一个黑盒子,我们不能改变它必须这样的事实。

将RealmObject类转换为Kotlin时编译时错误

这是我的原始RealmObject Parceler注释。 @Parcel(implementations = {AlbumRealmProxy.class}, value = Parcel.Serialization.BEAN, analyze = {Album.class}) public class Album extends RealmObject { @PrimaryKey @SerializedName(“id”) private String id; @SerializedName(“artist_id”) private String artistId; @SerializedName(“title”) private String title; @SerializedName(“artist_name”) private String artist; @SerializedName(“images”) private RealmList artwork; @SerializedName(“tracks”) private RealmList tracks; @SerializedName(“artist_bio”) private String artistBio; @ParcelPropertyConverter(RealmListParcelConverter.class) public void setArtwork(RealmList artwork) { this.artwork = artwork; […]