问题标签 [activeandroid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2213 浏览

android - ActiveAndroid 库和外键

我正在使用活动的 android在 Android 上使用 SQLite。

例如,我有以下Pets具有这种结构的表:

如何在名为 的第二个表中显示它具有表的Achievements外键。primary_keyPets

这是我正在做的事情

0 投票
2 回答
2101 浏览

android - 错误:没有这样的表用户 - 活动 Android

我正在制作一个 Twitter 客户端作为学习 Android 的练习,并且登录和时间线活动工作正常,但是当我单击操作栏图标时,它会将我带到一个ComposeTweetActivity.java,然后在我输入文本(我的推文)并按Tweet 按钮来撰写推文,它不做任何事情(它应该实际将其上传到我的 Twitter 帐户,然后将我返回到我的TimelineActivity.java)。在控制台中,它给了我错误:

加上许多其他错误。我的猜测是它必须与 Active Android 相关,这是我用来保存的数据库。我在这个项目中有很多很多文件,但我会发布,ComposeTweetActivity.java因为它有撰写推文按钮(这会导致所有错误),User.java并且Tweet.java是 Active Android 的模型(我认为?)以及所有表数据,以及带有所有错误的控制台。如果您需要我发布更多文件,很乐意提供帮助。非常感谢您的帮助,提前。

ComposeTweetActivity.java

用户.java

推文.java

充满错误的控制台:

.. 不断地不断地......

ComposeTweetActivity 的布局:

activity_compose_tweet.xml

0 投票
3 回答
3875 浏览

android - 如何将列添加到活动的 android 数据库表?

我正在使用Active Android以在我的 android 应用程序中执行 sqllite 操作。以下是一个模型类。

我想为此添加一个新列。所以我按照Active Android's Schema Migration Doc上的说明进行操作。

一个。更新了AA_DB_VERSION

湾。在中添加了一个新的 sql 文件assets/migrations

然后当我运行我的应用程序时,我得到以下异常

这是失败的 MyApplication 的 Create 方法。

迁移脚本是:(2.sql)

请建议我为什么会收到此错误。

0 投票
1 回答
624 浏览

android - ActiveAndroid架构迁移数据库版本,版本可以部分递增吗?

大家可能已经看到 ActiveAndroid 有模式迁移,这些迁移被指定为<db_version>.sql文件assets/migrations夹中的文件。

我有一个 db version 2,带有一个迁移文件2.sql

我的下一个版本是否必须是3和 migration 3.sql,或者我可以执行以下操作:

数据库版本 - 2.1

迁移文件:2.1.sql?

0 投票
2 回答
4870 浏览

android - 如何在 Activeandroid 中禁用模型扫描

我想使用 AA_MODEL 标签在 AndroidManifest.xml 文件中定义我的模型类并禁用自动搜索。因为目前我在应用程序启动时遇到错误,类似于:

如何正确地做到这一点?你能告诉我定义良好的 AA_MODEL 标签的例子吗?

0 投票
1 回答
1716 浏览

android - 在 Gingerbread 上运行时,ActiveAndroid 应用程序会自动关闭

我有一个使用 Android Studio 和 Gradle 开发的应用程序。该应用程序使用 ActiveAndroid。该应用程序在 3.0 及更高版本上完美运行。在 Gingerbread 设备上运行时,它只会打开、白屏,然后自动关闭。运行应用程序时 logcat 中给出的唯一线索如下:

我的 gradle 文件如下所示:

我尝试过运行 Gingerbread 的低端三星手机以及运行 2.3.7 的 Gennymotion 模拟器。调试后,我发现应用程序在 ActiveAndroid.initialize 方法中执行 scanForModel 方法时挂起。

提前致谢

0 投票
0 回答
520 浏览

android - 正确使用 Column.ForeignKeyAction.CASCADE

如果我有这样的关系,并且我想要的是每当我调用delete()anUser时,该vehicle字段也会被删除。

我认为这可以通过使用来完成,onDelete = Column.ForeignKeyAction.CASCADEVehicle.name我不太确定,所以我会继续问。

0 投票
1 回答
1012 浏览

android - 如何从 ActiveAndroid 获取数据以支持 ListView 虚拟化

据我所知,Android listview 显示虚拟化的数据(意味着它只加载可见的数据),所以它的速度尽可能快。

我有很多数据要从数据库中获取(大约 2000 年,但字段中有很多数据),我在 AsyncTask 中使用 ActiveAndroid 来获取它们。

不幸的是,带有 AA 的 AsyncTask 需要大约 10-15 秒才能获取数据,所以我在那段时间看到了一个进度条。

我通过这段代码得到他的:

通过以某种方式虚拟化数据检索来加速加载会很好。

我还在列表视图中使用搜索,它搜索整个列表。所以考虑到也会很好。

你有什么建议?我应该如何进行?

0 投票
1 回答
1578 浏览

android - ActiveAndroid:子查询?

我在应用程序中使用 ActiveAndroid 进行数据库交互。我需要加入几个表,然后过滤结果,我通常会使用带有子查询的 SQL 查询来完成。

如何使用 ActiveAndroid 完成子查询?

如果无法完成子查询,有没有办法只返回唯一的模型对象?我的查询中的连接具有在连接表中创建重复行的效果,但我只希望返回每个模型的一个实例。

编辑:提供更多信息

我要检索的模型称为 Profile。

关于查询,有 3 个表:Profiles、Roles 和 ProfileRoleJoins

Profiles 和 Roles 之间存在多对多关系,该关系由名为 ProfileRoleJoins 的连接表维护。

我的目标是获取所有具有特定“event_id”并连接到由角色类型列表指定的一个或多个角色的配置文件。

此查询感兴趣的是以下字段:

简介

  • ID
  • event_id(不是外键,只是一个数据字段)

角色

  • ID
  • 类型(文本)

简介角色加入

  • 配置文件(外键)
  • 角色(外键)

我试过的

上述查询存在返回重复配置文件的问题,因为单个配置文件可以与多个角色相关联,这会在连接过程中创建重复项。

我需要检索唯一配置文件列表。

我尝试使用Distinct(),但该限定符适用于每组列 - 我需要返回整个配置文件。

我通常实现唯一性的方法是在子查询中执行上述查询并仅返回 DISTINCT Profiles.Id 值。然后我会在主查询中针对原始 Profiles 表运行过滤器。

0 投票
1 回答
421 浏览

android - ActiveAndroid迁移不是错误(代码0),语法错误

ActiveAndroid 不支持迁移中的“not in”语法吗?ActiveAndroid 不支持迁移中的子查询吗?

我在运行迁移时遇到了这样的异常:

java.lang.RuntimeException:无法创建应用程序 com.example.app.YourApp:android.database.sqlite.SQLiteException:不是错误(代码 0)

或者

java.lang.RuntimeException: Unable to create application com.example.app.YourApp: android.database.sqlite.SQLiteException: near "in": syntax error (code 1): , while compile: delete from Collections where _id not in