android realm jar包,android-Realm支持maven或拥有jar的最新资源

我这里有个奇怪的用例,我的项目分为2个模块,一个是服务器项目,另一个是android-app,现在它们都共享相同的模型类.在Eclipse中使用Maven构建工具进行服务器项目,在Android Studio中使用gradle进行android-app应用.

看起来像是没有maven工件的领域,也没有找到最新版本的jar文件.

请帮助我找出奇怪的情况.

解决方法:

您需要在模型中加入某种技巧才能在android和共享服务器项目之间共享.

您可以为服务器创建虚拟领域类,该类可以通过gradle排除,并且需要在相同的完全相同的程序包中创建相同的完全相同的类.

服务器类:

package io.realm;

import java.util.ArrayList;

public class RealmObject extends ArrayList

{

}

package io.realm;

import java.util.ArrayList;

public class RealmList extends ArrayList

{

}

共享项目gradle应该忽略虚拟类,并且可以使用领域类:

buildscript {

repositories {

mavenCentral()

jcenter()

}

dependencies {

classpath 'com.android.tools.build:gradle:2.2.0'

classpath "io.realm:realm-gradle-plugin:2.0.2"

}

}

repositories {

mavenCentral()

jcenter()

}

apply plugin: 'com.android.library'

apply plugin: 'realm-android'

android {

compileSdkVersion 24

buildToolsVersion "24.0.0"

publishNonDefault true

defaultConfig {

minSdkVersion 19

targetSdkVersion 24

}

sourceSets {

main {

manifest.srcFile 'AndroidManifest.xml'

java {

srcDirs 'src'

//Exclude server (fake) Realm dependent files to avoid conflicts with Realm framework

exclude '**/Ignore.java'

exclude '**/RealmObject.java'

exclude '**/RealmList.java'

exclude '**/PrimaryKey.java'

}

res.srcDirs = ['res']

aidl.srcDirs = ['aidl']

}

}

lintOptions {

abortOnError false

}

packagingOptions {

exclude 'META-INF/DEPENDENCIES'

exclude 'META-INF/LICENSE'

exclude 'META-INF/LICENSE.txt'

exclude 'META-INF/license.txt'

exclude 'META-INF/NOTICE'

exclude 'META-INF/NOTICE.txt'

exclude 'META-INF/notice.txt'

exclude 'META-INF/ASL2.0'

}

}

注意:服务器仍然不支持领域.我们只是调整以支持android和服务器工作.

最终模型:

import io.realm.RealmList;

import io.realm.RealmObject;

public class MyModel extends RealmObject

标签:realm,maven,realm-migration,android

来源: https://codeday.me/bug/20191118/2025233.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值