问题标签 [commonsware-cwac]

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 投票
2 回答
171 浏览

commonsware-cwac - 西瓦克。locpoll 如何停止正在运行的位置更新?

我将 OMGStop() 方法修改为更像这样的方法:

我将 pi (PendingIntent) 存储为我的活动类中的成员。这可以很好地从 AlarmManager 中删除 PendingIntent。

然而...

如果正在进行一项,我希望能够停止当前的位置调查。您当前的设计是否可行?我以为我可以停止服务,但 GPS 继续运行。

基本上,我要做的是在用户(我在旅途中)更改偏好(例如超时、使用 GPS 或更新周期)时停止一切。然后使用新值重新创建所有内容。

谢谢,

很棒的代码顺便说一句 - 正是我想要跟踪我的越野旅程:)

0 投票
1 回答
784 浏览

android - CWAC android 无限列表适配器,适用于非常大的列表

我想知道如何使用 CWAC 的无限适配器来处理非常大的列表。

我主要关心的是内存管理。如果我缓存数千个项目,我最终会出现内存不足的异常。那么我该如何处理那个缓存呢?我可以清除之前的条目吗?

据我了解,当我们向下滚动列表时,无限适配器只会触发其 cacheInBackground() 方法和 appendCachedData() 。如果我想清除不再可见的早期条目(列表顶部)的缓存怎么办?

当我向上滚动时,无尽的适配器将如何表现?换句话说,无限适配器是双向的吗?如果没有,我可以解决这个限制吗?

提前致谢。

0 投票
1 回答
329 浏览

android - SherlockListFrgament 与 CommonsWare Loaderex,无法更新数据

我正在使用 ActionBarSherlock 库中的 SherlockListFragment 来显示使用 CommonsWare Loaderex sqlite 光标加载程序的列表,并且一切似乎工作正常,姓名、生日和个人资料图片都显示得很好,但我似乎无法使用 loader.update(...) 更新表中的任何数据,当我调用它时没有任何反应。怎么了?

0 投票
1 回答
295 浏览

android - WakefulIntentService 在我的用户迁移到 ICS 时报告新的崩溃?

我的用户正在慢慢迁移到 ICS(Android 4.0 及更高版本),从那时起,我可以看到出现新的崩溃报告......看起来我的 WakefulIntentService 实现触发了以下错误:

java.lang.NullPointerException at com.cousinHub.meteo.AppService.doWakefulWork(AppService.java:104) at com.cousinHub.meteo.WakefulIntentService.onHandleIntent(WakefulIntentService.java:70) at android.app.IntentService$ServiceHandler.handleMessage( IntentService.java:59) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper.loop(Looper.java:123) 在 android.os.HandlerThread.run(HandlerThread.java:60 )

第 70 行在 onHandleIntent 中查找问题:

知道为什么这段代码可以在 Gingerbread (Android < 4.0) 上正常工作并且现在中断了吗?

=> 由于某种原因,意图看起来为空?

或者可能是触发 NullPointer Exception 的下一个代码块:

  • 你会怎么解决这个问题?

这种方式可能吗?

0 投票
1 回答
1714 浏览

android - Android CWAC-Adapter:为什么在构造函数中注册DataSetObserver?

正如标题所说,我很难理解registerDataSetObserverin the Constructorofcwac-adapter

这不会创建对 的递归调用notifyDataSetChanged()吗?

我的理解是,notifyDataSetChanged()将调用onChanged所有注册的观察者Adapter。因此,调用notifyDataSetChanged()onChanged()创建递归调用。

我的理解错了吗?如果是的话,这里到底发生了什么?如果不是,那么进行这种递归调用有什么用?

0 投票
1 回答
378 浏览

android - 从 commonsware 无限适配器中检索数据

最初,我有自己的Adapter extended the BaseAdapter,它工作正常。然后,我尝试通过以下代码采用commonsware EndlessAdapter:

现在我想在主 Activity 中单击特定项目时从 mData 检索数据。

0 投票
1 回答
1350 浏览

android - 加载器框架与普通 AsyncTask

在我的应用程序中,我需要很多 CRUD 内容:从本地 SQLite 数据库读取记录、插入对象和更新内容。大多数查询都非常简单,即使在 UI 线程上运行它们也不会阻塞,但是在这个应用程序中,我想采用 Windows Phone 模式:输出动画立即开始,当结果传递时开始动画。

我计划使用一个AsyncTask来完成这项工作,但是我注意到 Honeycomb(和 compat 包)引入了这个新的Loader 框架。主要优势似乎是Loader生存配置更改加载的数据。Commonsware的LoaderEx项目在 SQLite 和框架之间架起了桥梁,但出现了一些问题。

  1. 资源清理:我使用单个活动,在其中创建 SQLiteOpenHelperonCreate()并关闭它onDestroy()。由于加载器管理器可能仍在运行,我检查它并pendingClose在我的回调对象上设置一个标志,因此它会在加载完成时关闭游标和助手。我认为不关闭数据库是无害的,但如果你不这样做,SQLite 会抱怨,而且我不喜欢错误消息 :) 这里的重点是数据无法在配置更改后继续存在,因此 Loader 的优势消失了

  2. 我应该创建多少个加载器?假设我有心爱的Customer人和Order桌子。加载程序由ID'likeCUST_L或标识ORD_L,但每次用户单击一些摘要时,我都想带入一个包含详细信息的屏幕。我应该restart使用不同参数的加载器,还是应该init使用随机 ID 的新加载器?这可能会发生数十次。Loader 框架是为大量运行中的小型作业设计的,还是只为一些长时间运行的任务而设计的?

  3. 在界面中使用ID's的目的是什么?LoaderCallbacks为什么不简单initLoader(params, callback)?我不认为可以在回调中重用某些逻辑:最终他将分支(带有if-elseswitch在 ID 上)所以我不明白为回调对象提供标识符的意义,而不是一种天真的方法-每次操作的回调

我问这个是因为整个框架对我来说似乎过度设计并且没有真正的实用性。我不明白用 a 集中代码的意义LoaderManager,而且我看不到任何AsyncTask没有提供的新机会。

唯一的胜利点是配置更改生存,但由于资源清理,我无法利用它,而且我无法找到关闭它的替代方法,SQLiteOpenHelper因为(很明显)SQLiteCursorLoader需要它但清理它取决于用户。所以AsyncTask这里似乎是获胜者的选择,但也许我错过了一些东西。

0 投票
2 回答
2444 浏览

android - 在多活动应用程序中实现 WakefulIntentService

我有一个需要频繁轮询数据的应用程序。我有一个带有TimerTask实现的应用服务逻辑,但后来我被@Commonsware 转移到了WakefulIntentService

现在我的问题是我有多个活动屏幕来响应服务发出的广播意图。我如何确保对 scheduleAlarms 的调用只会被调用一次(或者我不必为此烦恼?)。实际的问题是 scheduleAlarms 的代码放置在一个超类的 onCreate 上,如果不是所有的活动都从该超类扩展,因此会导致安排多个警报。

0 投票
1 回答
765 浏览

java - Android:如何知道 Commonsware 的 WakefulIntentService 是否正在运行?

我有一个简单的问题:我在我的应用程序中使用了 commonsware 的 wakefulintentservice 并且我得到了它的工作,但是我怎么知道 WakefulIntentService 是否仍在运行?例如,我可以在 WakefulIntentService 类中放置一个 onDestroy 并让它记录一些东西,还是有另一种方法可以查看 WakefulIntentService 是否正在运行?

提前致谢!

0 投票
1 回答
281 浏览

android - 如何为 commonsware EndlessAdapter 提供自己的布局

我正在使用这里提供的很棒的无尽适配器:https ://github.com/commonsguy/cwac-endless

这些示例似乎一切正常,我想使用自己的布局,所以像往常一样,我覆盖了我的适配器的 getview:

这很好,但我失去了加载下一批数据的能力。

有人可以解释我应该如何使用适配器的 getView 吗?