标签: activeandroid

Green DAO vs ORM lite vs Active Android

哪个是适用于Android的最佳ORM工具?

我看到ORMlite和ActiveAndroid是最受讨论的,我的一个朋友建议我使用GreenDAO.那么寻找一些可以帮助我做决策的知识资源?

我希望判断的功能是免费提供(开源),良好的文档,活动论坛,稳定版本等,这是开发人员所需要的.

android ormlite activeandroid greendao droidparts

60
推荐指数
3
解决办法
3万
查看次数

SecurityException:无法为用户0找到提供程序null; 在Android 8.0上的ActiveAndroid上

我有一个使用ActiveAndroid的应用程序,它一直工作正常.然而; 现在当我尝试将模型保存到数据库时,我得到了一个SecurityException.

堆栈是:

Error saving model java.lang.SecurityException: Failed to find provider null for user 0; expected to find a valid ContentProvider for this authority 
at android.os.Parcel.readException(Parcel.java:1942) 
at android.os.Parcel.readException(Parcel.java:1888) 
at android.content.IContentService$Stub$Proxy.notifyChange(IContentService.java:801) 
at android.content.ContentResolver.notifyChange(ContentResolver.java:2046) 
at android.content.ContentResolver.notifyChange(ContentResolver.java:1997) 
at android.content.ContentResolver.notifyChange(ContentResolver.java:1967) 
at com.activeandroid.Model.save(Model.java:162)
[.... local stack removed]
Run Code Online (Sandbox Code Playgroud)

还有其他人经历过这个吗?我们是否需要在AndroidManifest.xml中指定Content Provider

对不起,但我还没有一个孤立的例子.我会努力把东西放在一起.

提前致谢

android securityexception activeandroid android-8.0-oreo

30
推荐指数
3
解决办法
1万
查看次数

Android - 哪一个使用Active Android或Realm

我已经使用ActiveAndroid一段时间了,我最近听说Realm是另一个不错的选择.我正在考虑更改我的应用程序以使用Realm,但在此之前,我在寻找是否有人已经完成了这两者之间的性能比较.我在realm的网站上找到了一些比较,但那些是在ORMLite和SQLite上.

任何建议表示赞赏.

android realm activeandroid

19
推荐指数
2
解决办法
6232
查看次数

ActiveAndroid抽象类表

有谁知道是否可以在ActiveAndroid中为抽象类创建表.例如,我可以有一个抽象类Animal,它有两个具体的类Dog和Cat.我希望能够做到这样的事情:

List<Animal> animals = new Select().from(Animals.class).execute();
Run Code Online (Sandbox Code Playgroud)

这会导致'动物'包含所有已保存的猫和狗.要么:

Animal animal = new Select().from(Animals.class).where("name = ?", name).executeSingle();
Run Code Online (Sandbox Code Playgroud)

"动物"可以是猫还是狗.不幸的是,当我这样做时,我得到一个异常,因为没有为抽象类Animal创建表.有谁知道如何使用ActiveAndroid进行此操作?

java sqlite orm android activeandroid

17
推荐指数
1
解决办法
492
查看次数

Android - ORMlite与ActiveAndroid的区别?

在Android SQLite的两个ORM解决方案 - ORMlite与ActiveAndroid之间,在速度,可扩展性等方面是否有任何显着差异?第一个是免费的,第二个是商业的,因此付费.什么是更好的使用,为什么?

谢谢

Hmyzak

orm android ormlite activeandroid

16
推荐指数
2
解决办法
4968
查看次数

Gson和Active Android:尝试序列化java.lang.Class.忘了注册一个类型适配器?

我正在使用Gson序列化Active Android模型.模型类只包含基元,Gson应该没有问题使用默认设置序列化它.但是,当我尝试时,我收到错误:

java.lang.UnsupportedOperationException: Attempted to serialize java.lang.Class: <MyClass>. Forgot to register a type adapter?

我真的不想为我的每个模型类编写一个类型适配器,我该如何解决这个问题呢?

android gson activeandroid

16
推荐指数
2
解决办法
9154
查看次数

为什么Active Android无法使用gradle 2.0?

我在我的应用中使用Active Android.它工作正常,直到我将Android Studio从1.3升级到2.0.通过此升级,我的gradle也升级到2.0,这导致Active Android出现问题.

使用gradle 2.0构建时出现此错误.

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.activeandroid.TableInfo.getTableName()' on a null object reference
                                                                       at com.activeandroid.Cache.getTableName(Cache.java:156)
                                                                       at com.activeandroid.query.From.addFrom(From.java:169)
                                                                       at com.activeandroid.query.From.toSql(From.java:250)
                                                                       at com.activeandroid.query.From.execute(From.java:298)
Run Code Online (Sandbox Code Playgroud)

我尝试使用gradle 1.3构建我的旧工作室它仍然正常工作.有什么帮助吗?

当app发出上述错误时,build.gradle文件

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.0.0'
        classpath 'com.google.gms:google-services:2.0.0-beta2'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}
Run Code Online (Sandbox Code Playgroud)

当app正常工作时build.gradle

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0'
        classpath 'com.google.gms:google-services:2.0.0-beta2'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}
Run Code Online (Sandbox Code Playgroud)

gradle包装器属性

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists …
Run Code Online (Sandbox Code Playgroud)

android activeandroid android-studio android-gradle-plugin

16
推荐指数
3
解决办法
5044
查看次数

在现有数据库内容上使用ActiveAndroid

我开发了一个Android-App,我使用SQLiteOpenHelper将数据保存在SQLite数据库中.

我想知道我是否可以使用ActiveAndroid更新我的应用程序,但是以某种方式保存以前存储在数据库中的用户数据.

那可能吗?

database android activeandroid android-sqlite

12
推荐指数
1
解决办法
823
查看次数

ActiveAndroid Update()查询

我正在尝试使用ActiveAndroid对列进行批量更新.这是我的代码:

new Update(SomeModel.class).set("Enabled = 0").execute();
Run Code Online (Sandbox Code Playgroud)

但是我得到了一个StackOverflowError.(编辑:我的不好,错误是在其他地方).有谁知道如何执行Update()查询?它在ActiveAndroid的wiki中没有说什么.

编辑:

这个语法是正确的:

new Update(SomeModel.class)
  .set("Enabled = 0")
  .where("Account = ?", account.getId())
  .execute();
Run Code Online (Sandbox Code Playgroud)

where如果不需要,您可以跳过.

android activeandroid android-sqlite

11
推荐指数
2
解决办法
1万
查看次数

ActiveAndroid SQLite异常'没有这样的表'

我遇到了active-android的问题.我试图获取用户位置,乘客数量和总体方向.我想使用activeAndroid将这些保存到名为"Splits"的表中的手机存储中.但每当我调用该save()方法时,我都会得到一长串错误.我试图重新安装应用程序,并在清单中更改我的数据库名称,但这些解决方案都不起作用.请记住我对编程很新,所以如果可能的话,就像我是5.谢谢你:)

这是LogCat输出

11-03 23:27:51.094    2905-2905/dk.specialisering.splitcab E/SQLiteLog? (1) no such table: Splits
11-03 23:27:51.115    2905-2905/dk.specialisering.splitcab E/SQLiteDatabase? Error inserting passengers=1 Id=null startLong=9.92773733 direction=North startLat=57.0487396
    android.database.sqlite.SQLiteException: no such table: Splits (code 1): , while compiling: INSERT INTO Splits(passengers,Id,startLong,direction,startLat) VALUES (?,?,?,?,?)
            at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
            at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:1118)
            at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:691)
            at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
            at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
            at android.database.sqlite.SQLiteStatement.<init>(SQLiteStatement.java:31)
            at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1589)
            at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1461)
            at com.activeandroid.Model.save(Model.java:153)
            at dk.specialisering.splitcab.MainActivity.save(MainActivity.java:127)
            at dk.specialisering.splitcab.MainActivity$1.onClick(MainActivity.java:37)
            at android.view.View.performClick(View.java:4475)
            at android.view.View$PerformClick.run(View.java:18786)
            at android.os.Handler.handleCallback(Handler.java:730)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:5419)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:525)
            at …
Run Code Online (Sandbox Code Playgroud)

java database sqlite android activeandroid

9
推荐指数
2
解决办法
7406
查看次数