问题标签 [remoteview]

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 回答
596 浏览

android - RemoteViews 未使用 getDrawingCache 正确保存到位图

我想将作为 RemoteViews 的 Notification contentview 绘制到位图中。

我正在使用这段代码:

视图被构建到位图中,但不是整个视图,缺少正确的部分。

应该是:http: //imgur.com/vyFdy

原样:http: //imgur.com/DnTsC

通过手动设置布局,如:

仅添加背景颜色,但不添加 2 个文本视图(此处:“1:12”和“信息”)

有人知道如何解决这个问题吗?

0 投票
5 回答
2941 浏览

android - 将额外的或在 ArrayList 中的自定义 Parcelable 对象传递给 RemoteViewsService 会破坏 appwidget

基本上我想要做的是通过一个意图将一个自定义的可打包对象传递给 RemoteViewsService,从而传递给我的 RemoteViewsFactory。出于某种原因,这根本不起作用:S 每当我尝试这样做时,小部件最终都会显示“问题加载小部件”文本。

当我尝试相同的事情时,我没有将其传递给 RemoteViewsService,而是将其传递给常规 Activity,它完全按预期工作。

我试图在网上找到我的答案,但我没有成功,因此我现在在这里发帖希望得到帮助。

我一直试图让它在我的主程序中工作一段时间。但我就是想不通。所以我试着把它归结起来,看看我是否在某个时候做错了什么。我成功地重现了问题,我重现问题的基础来自 CommonsGuy 的 LoremWidget ( https://github.com/commonsguy/cw-advandroid/tree/master/AppWidget/LoremWidget ) 和一个随机的可打包示例 ( http ://prasanta-paul.blogspot.dk/2010/06/android-parcelable-example.htm l) 我已经修改以显示我的问题。(希望我不会遇到麻烦,在这两个链接上使用了代码)

这是上传到随机文件主机上的完整代码,以防有人想测试我在说什么: http ://www.filedropper.com/remoteviewserviceparcelerrorexample

所以总结一下我的问题:

为什么我不能将我的可打包对象(单独或包装在 ArrayList 中)传递给我的 RemoteViewsService?(当相同的代码适用于 Activity 时)

我真的希望有人能够帮助我。现在在我的主程序中我序列化到内部存储,然后几乎立即从 RemoteViewsService 再次反序列化它,从我读过的所有内容来看,这不是很有效!

编辑:刚刚记住,由于某种原因,在我的主程序中,如果我传递了一个自定义对象,其中 ArrayList 和 Strings 设置为 null,并且布尔值全部为 false(基本上正是对象在创建时的样子),则小部件看起来正常(即没有“问题加载小部件”消息)。

编辑:在查看了外观(未过滤到我正在运行的应用程序)之后,我现在看到了一些错误(我想我最好学会在没有任何文件的情况下查看所有未过滤的内容:)):

0 投票
1 回答
1987 浏览

android - Android 远程查看通知

我有一个使用远程视图的 android 通知栏。我有 2 个按钮可以播放和暂停音频,还有一个图标可以返回应用程序。我希望能够单击图标(或除 2 个按钮之外的任何位置)并返回应用程序。这是我的代码

这一切都可以在 Android 4.1 上的模拟器中正常工作。按下通知中的图标时,它会成功返回到应用程序。然而,在三星 S3 上的 Android 4.0.3 上,活动在后台启动,但通知屏幕并未隐藏。我希望在选择图标后清除通知屏幕。我曾尝试在通知中使用 Notification.FLAG_AUTO_CANCEL,但这并没有解决问题。任何帮助将不胜感激。

0 投票
3 回答
3108 浏览

android - 在 Widget (RemoteViews) 中更改 GridView 中的 numColumns 无效

我有一个带有 GridView 的小部件(可以工作),它在 1 个或多个列/行中显示信息。我想以编程方式设置列数,因为用户应该选择。如果我将 Layout-XML 中的 numColumns 设置为“1”,它可以正常工作。如果我尝试按以下方式设置 numColumns ,则无效:

布局如下所示:

我的小部件 onUpdate() 方法,使用 RemoteAdapter:

不仅 setNumColumns 无效,其他方法调用也无效。我做错了什么?

0 投票
0 回答
180 浏览

android - 直到 RemoteView 更新后,Android 小部件才会响应点击

我有一个 android 应用程序小部件,它在首次启动时从 Internet 获取一些信息。

更准确地说,它启动了一个异步执行网络调用的服务。在该网络调用结束时,在 UI 线程中,它使用新信息更新小部件的远程视图。

触摸小部件的特定部分会加载一个活动,该活动会检查网络调用是否存储了任何内容,但这是基于网络调用响应大小的条件语句,如果该对象不包含正确的内容,那么它将不要加载那个。

我的问题是触摸小部件似乎不会加载活动,直到异步网络调用完成。这对我来说并不重要,因为那是一个单独的线程。

似乎从来没有这样的情况,我的活动甚至可以检查空对象的条件。相反,我触摸了小部件,它似乎被放入队列中,因此当网络调用完成时,它会加载我的活动并显示有关该网络调用的信息。

为什么会这样?这与我如何更新我的 remoteView 有关吗?onUpdate我的视图在小部件的方法中首次放置在启动器屏幕上时就有监听器。谢谢

0 投票
1 回答
588 浏览

android - 远程视图中的旋转图像

我正在制作一个电池小部件,为了避免不同级别有 20 个单独的 PNG 文件,我有一个 PNG,我将其旋转到 20 个位置。在 Android 3.x+ 上,这很容易,因为 ImageView 元素作为旋转属性。为了向后兼容,我使用矩阵生成其他图像,如下所示:

然而,这不起作用,因为虽然图像本身相当小,但这样做 20 次超过了活页夹限制,我得到了!Binder 交易失败!!!我生成的一个位图可以很好地发送,我觉得我需要一种方法以某种方式将我的一个大交易分成 20 个单独的交易。必须有办法绕过这个限制,这样我才能在 Android 2.x 上支持我的用户。有什么想法吗?

我必须补充一点,我正在修改的原始 PNG 文件在磁​​盘上是 903 字节。我的超出绑定限制的交易是 1,271,808 字节。我假设这是因为生成 Bitmap 对象实际上是创建了一个 BMP 文件,它的大小当然比 PNG 大得多。有没有办法完全避免使用位图?

0 投票
1 回答
1040 浏览

android - android更新小部件外观

我想在用户单击它时更改 android 小部件的视觉元素之一。这是在小部件的 xml 中

我想根据 ID 更改 src,所以我计划从小部件中发送 remoteView 一个点击listener

在一个透明的活动中(或在小部件本身)我想以某种方式改变imageview' 的来源。

我不想只是翻转一堆imageviews.

这将如何实现?

0 投票
1 回答
730 浏览

android - resolveUri 在应用程序私有数据文件上失败

当我的应用程序首次运行时,我会生成一堆图像文件,然后稍后尝试使用 remoteViews.setImageViewUri() 将这些图像放入我的 ImageViews 中。但是,当我运行我看到的应用程序时

01-03 15:05:11.252:W/ImageView(137):无法打开内容:file:///data/data/com.nickavv.cleanwidgets/files/batt_s_19.png 01-03 15:05:11.252: W/ImageView(137):java.io.FileNotFoundException:/data/data/com.nickavv.cleanwidgets/files/batt_s_19.png(权限被拒绝)

由于文件是由这个应用程序创建的,我应该有权从这个应用程序中访问它,对吧?这是我用来检索它的代码:

有什么想法吗?

0 投票
4 回答
3343 浏览

android - 如何在 Android 的 Notification 的 RemoteView 中设置 ImageView 的背景?

我移植了Android的Notification,如何在Notification的RemoteView中设置ImageView的背景,并设置为透明?

我试过了

但它没有奏效。

我认为问题是我无法在另一个应用程序进程中从 Android 框架获取 R.id.yourFrame。所以上面的代码只适用于当前的小部件进程。

那么如何将编译后的 R.id.icon 作为 int 获取呢?我想以这种方式尝试。

0 投票
2 回答
7856 浏览

java - 将字符串转换为颜色 int

为什么会崩溃?在我得到的logcat中java.lang.numberformatexception: Invalid int "Color.BLUE"

我有点认为它在从字符串到 int 的转换时是错误的,因为如果我只是这样设置 int:

它有效..但我不知道它有什么问题。

非常感谢