问题标签 [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 投票
0 回答
124 浏览

android - 当应用程序返回上一个活动时如何停止警报

在我的应用程序中,我正在使用 commonsware 库根据警报设置获取地理位置,一切正常,但是当我按下后退按钮时,那时我想停止该警报并且不想获取地理位置。

我怎样才能做到这一点。下面是我用来根据警报获取位置的代码。

0 投票
0 回答
812 浏览

android - 如何使用合并适配器将 Pull To Refreash 功能添加到视图中?

我正在尝试将 Pull To Refresh 功能添加到已经使用 Mark Myrphy aka @commonsware 制作的 Merge Adapter 的 Activity 中。

这是我们的代码:

这里是 lv_merge_fragment.xml。

我正在尝试一起工作https://github.com/chrisbanes/Android-PullToRefreshhttps://github.com/commonsguy/cwac-merge

不幸的是,有一个问题。MergeAdapter 将整个 PullToRefresh 列表视图视为从下到上显示的内容,这使得标题(用作 PTR 指示器)始终可见(不仅在拖动后)。我无法让它工作,重写其中一个库是解决这个问题的困难方法。有没有人成功使用 CommonsWare MergeAdapter 和 Pull to Refresh android 中的库?附上屏幕截图,以便更好地理解我想要实现的目标。基本上 PTR 动作应该重新加载所有视图。

这就是我希望它看起来/工作的样子: 在此处输入图像描述

在此先感谢您的帮助。

0 投票
1 回答
693 浏览

android - CommonsGuy EndlessAdapter 中的 java.lang.IllegalStateException

我正在将commonsguy / cwac-endless EndlessAdapter 集成到我的一个应用程序中,效果非常好!感谢 CommonsWare 先生 :)

但我越来越java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification

注意: 此异常仅在我使用时发生endlessAdapter.setRunInBackground(false);,基本上是当我希望自己的实现AsyncTask来缓存数据时(在EndlessAdapter 类AsyncTask的方法中执行)。cacheInBackground()

重新创建此 IllegalStateException 的步骤:

步骤 1) 运行作为演示提供的EndlessAdapterCustomTaskFragment 示例EndlessAdapter

步骤 2) 向下滚动 ListView,以便看到进度视图。

步骤 3) 单击进度视图。现在,一旦在加载数据时单击进度视图,应用程序将被强制关闭java.lang.IllegalStateException

为了克服这个问题,我重写了以下EndlessAdapter类方法,它确实有效;)

我很想知道以下内容:

1)为什么EndlessAdapter只有当我想要我自己的实现AsyncTask来缓存数据时,实现才会抛出异常,即endlessAdapter.setRunInBackground(false);endlessAdapter.setRunInBackground(true);没有自定义实现的情况下使用AsyncTask

ListView2)点击item和getCount()method有一定的关系,ListView因为它只有在点击ListView的进度条时才会产生Exception。

提前致谢 :)

0 投票
1 回答
225 浏览

java - Android:BroadcastReceiver 或 Wakefulintentservice 应该以 finish() 结尾吗?

在我的应用程序中,我使用警报管理器设置警报,该警报触发广播接收器,该接收器启动 Commonsware 的 Wakefulintent 服务,该服务会下载一些数据。

我的问题是:是否应该以该方法结束或两者BroadcastReceiverWakefulIntentService两者都不以该finish()方法结束?

0 投票
1 回答
1560 浏览

java - Android:AlarmManager 有时不调用 BroadcastReceiver

在我的应用程序中,我有一个BroadcastReceiver,它由一个AlarmManager. 这BroadcastReceiver称为 CommonsWare 的WakefulIntentservice.

我在手机上对此进行了测试,有时似乎BroadcastReceiver根本没有打电话给我。我真的很困惑它可能是什么。我的 BroadcastReceiver 和 WakefulIntentservice 已在清单中注册。

这是我的代码: 在 AlarmActivity 中:

报警接收器:

和警报服务:

有谁知道为什么BroadcastReceiver有时不调用?

编辑:我听说设置 a BroadcastReceiverwhich receive onBootCompleted. 这是必需的吗?

0 投票
2 回答
145 浏览

java - Android:我应该避免 Commonsware 的 WakefulIntentservice 中的自写方法吗?

在我的应用程序中,我有 CommosWare 的WakefulIntentservice. 从doWakefulWork方法上我称之为几个自写的方法。例如:

WakeLock它使我的代码保持清晰,但是当我调用自写方法时是否有可能丢失?

提前致谢!

0 投票
1 回答
908 浏览

android - 从另一个片段访问在一个片段中创建的加载器

我有一个具有相当标准片段布局的应用程序。左侧的可扩展列表视图片段和右侧的面板用于不同的事情,具体取决于用户选择对左侧列表执行的操作(显示数据、添加新数据等)。

我将 LoaderManager(第一次使用加载器)与 CommonWare 的loaderex库一起使用,因为我不需要或不希望为我的数据库创建内容提供程序,这样我就可以使用标准的 CursorLoader。此设置非常适合显示我的列表。

我遇到的问题是当我使用第二个片段将数据添加到数据库时。我无法弄清楚如何在第一个片段中触发重新加载列表。对于我的一生,我无法弄清楚如何从第二个片段的第一个片段中获取加载器,以便它知道需要再次提取数据,我似乎也无法弄清楚如何手动触发重新加载.

由于这是我第一次尝试使用 Loaders,如果我做的不正确,我很乐意(温和地)重新引导到更好的道路上。

片段 1

片段 2

0 投票
2 回答
808 浏览

android - 服务中的唤醒锁实现

我有一项在 2 部手机中执行的服务。它们使用套接字相互通信并执行一些脚本(可能需要大约 1-2 分钟)并在它们之间交换文件(使用 HTTP Post)。

我希望这个执行继续,即使屏幕关闭,即获取唤醒锁。我看到了这个链接,但我不确定将它合并到我的代码中的哪个位置(因为设备可能会在执行过程中休眠)。非常感谢任何指导。谢谢你。

0 投票
1 回答
348 浏览

android - 在具有无限适配器实现的对话框中获取异常列表视图

这是我的演示适配器。

这是我在对话框中使用无限适配器显示列表视图的活动。

当我运行上面的代码时,它会抛出非法状态异常或空指针异常。

以下是我的 logcat 详细信息

可能是什么问题?

0 投票
1 回答
1808 浏览

android - 如何使用 LoaderManager 自动重新查询

我有一个显示来自 SQLite DB 的数据的应用程序,并且数据不断变化,所以很明显,我认为我应该使用 LoaderManager 来显示数据。

我是否阅读了一些关于将 LoaderManager 与 SQLite 结合使用的信息,并看到了Alex Lokwood关于实现 CursorLoader 并使用它的答案,我看到了关于将 CursorLoader 直接用于 SQLite DB 而不是 ContentProvider 的答案,并开始使用 commonsware 的Loaderex

我创建了这个类来在 ListView 中显示数据:

当活动仍在运行时从“BroadcastListener”更改数据库时,问题就开始了。

基本上我正在寻找的是实时观察数据库更改,但它似乎(也来自Android文档restartLoader,当我想重新查询数据库时我需要调用该函数)。

有没有办法在幕后自动重新查询?

更新:

我最初的想法是创建一个重新启动加载程序的函数,如下所示:

但这似乎很粗鲁,并不是最好的方法。