widget开发安卓开发:activity向widget传递2个文本,widget收到文本更新widget?

widget开发  时间:2021-07-03  阅读:()

Android开发如何获得第三方应用Widget的包名和类名

最近在做Android的平板的开发,想在桌面上预置一些第三方应用的Widget,在桌面预置Widget的方法就是要获得应用的包名和类名。

桌面预置widget的方法 在Launcher的配置文件 res/xml/default_workspace.xml中添加如下的代码:<appwidget launcher:packageName=&.google.android.apps.genie.geniewidget" //预置应用的包名 launcher:className=&.google.android.apps.genie.geniewidget.miniwidget.MiniWidgetProvider" //预置应用的Provider的类名,不是Activity的类名 launcher:screen="1"//在第几屏0为第一屏,launcher:x="0"//x坐标launcher:y="0"//y坐标 launcher:spanX="4"//x方向占几个单元格 launcher:spanY="1"///y方向占几个单元格 通过logcat有时可以找到应用的包名和Provider类名,此方法不可取,容易出错。

系统的widget可以通过查找相关的源码找到对应的包名和Provider的类名,但是第三方应用看不到源码,但是也可以通过反编译第三方应用,获得相应的Maifest.xml文件,找到对应的包名和Provider类名,但是此方法比较繁琐。

可以通过在Launcher中添加如下代码,可以将系统中所安装的所有 的widget的信息打印出来: 在Launcher.java中的onCreate方法中添加下面的代码: List<AppWidgetProviderInfoproviders=mAppWidgetManager.getInstalledProviders();finalintproviderCount=providers.size();for(inti=0;i<providerCount;i++){ ComponentNameprovider=providers.get(i).provider;Log.i("xxx", "packagename:" +provider.getPackageName()+ "classname:" +provider.getClassName());}新编译Launcher,把Launcher push进去之后,执行 adb logcat -s xxx,就可以看到打印出来的Log信息,包名和Provider了类名。

桌面预置shortcut的方法: 在Launcher的配置文件 res/xml/default_workspace.xml中添加如下的代码:<favorites

Qt Widget Based Application与 Qt Quick Application的区别?

qt Quick是用qml语言写的。

qml是qt自带的类似一种javascript一样的脚本语言,不是C++。

qml的运行需要qt库。

qt widget based application就是带有界面的qt应用程序,是用C++写的,使用qt库来运行。

安卓开发:activity向widget传递2个文本,widget收到文本更新widget?

(1)创建一个类,让其继承类 AppWidgetProvider,在 AppWidgetProvider 类 中有许多的方法,例如 onDelete(Context, int[]),onEnable(Context)等等, 一般情况下我们纸需要重写 onUpdate(Context, AppWidgetManager, int[])这 个方法就可以了,这个方法是当触发器更新?widget?时候执行的操作。

(2)在项目的 AndroidMenifest.xml 文件中添加一个 receiver 标签,让其指向 前面创建的 AppWidgetProvider 子类,内容如下: 1. ?4.?5.?6.?7.?9. intent-filter 中过滤了 APPWIDGET_UPDATE 事件,这个事件是由系统触发的更 新事件,每个?widget?必须包含这个事件;meta-data 标签描述的是?widget?的配 置文件指向,该文件描述了?widget?的一些基本信息。

(3)编写?widget?的 provider 文件信息,本例中该文件名叫做?widget_setting.xml,开发者可以随便取名,只要在 AndroidMenifest.xml 中写 正确就行。

1.?2. 8. minWidth 和 minHeight 是?widget?的最小宽度和高度,这个值是一个参考值,系 统会根据实际情况进行改 变,initialLayout 属性指明了?widget?的视图布局文 件,updatePeriodMillis 属性是?widget?每隔多久更新一次的时 间, 单位为毫秒。

(4)接下来就是界面布局,在这个示例中只需要一个 TextView 控件就可以,代 码如下: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 如果没能解释明白 可以 ,到我群里讨论 look at my n a m e

快快云:香港沙田CN2/美国Cera大宽带/日本CN2,三网直连CN2 GIA云服务器和独立服务器

快快云怎么样?快快云是一家成立于2021年的主机服务商,致力于为用户提供高性价比稳定快速的主机托管服务,快快云目前提供有香港云服务器、美国云服务器、日本云服务器、香港独立服务器、美国独立服务器,日本独立服务器。快快云专注为个人开发者用户,中小型,大型企业用户提供一站式核心网络云端服务部署,促使用户云端部署化简为零,轻松快捷运用云计算!多年云计算领域服务经验,遍布亚太地区的海量节点为业务推进提供强大...

Tudcloud(月付7.2美元),香港VPS,可选大带宽或不限流量

Tudcloud是一家新开的主机商,提供VPS和独立服务器租用,数据中心在中国香港(VPS和独立服务器)和美国洛杉矶(独立服务器),商家VPS基于KVM架构,开设在香港机房,可以选择限制流量大带宽或者限制带宽不限流量套餐。目前提供8折优惠码,优惠后最低每月7.2美元起。虽然主机商网站为英文界面,但是支付方式仅支付宝和Stripe,可能是国人商家。下面列出部分VPS主机套餐配置信息。CPU:1cor...

数脉科技香港自营,10Mbps CN2物理机420元/月

数脉科技怎么样?数脉科技品牌创办于2019,由一家从2012年开始从事idc行业的商家创办,目前主营产品是香港服务器,线路有阿里云线路和自营CN2线路,均为中国大陆直连带宽,适合建站及运行各种负载较高的项目,同时支持人民币、台币、美元等结算,提供支付宝、微信、PayPal付款方式。本次数脉科技给发来了新的7月促销活动,CN2+BGP线路的香港服务器,带宽10m起,配置E3-16G-30M-3IP,...

widget开发为你推荐
微信收款语音播报怎么设置微信收款码声音怎么设置wmiprvsewmiprvse.exe是什么进程linux修改文件名Linux中,怎样修改文件名?知识库管理系统急求一款电子文档管理系统,有好用的推荐下~?网关和路由器的区别网关和路由器有什么区别李昊天铠甲勇士刑天中人物资料拓扑关系什么是矢量数据、栅格数据、拓扑关系?问卷星登陆你好,如果之前用微信登录了问卷星小程序,以后每次回答都不需要微信登录了吗?回答了会被知道个人信息吗相似图片搜索怎么找手机上的一张相似图片?数据分析报告范文如何写数据分析报告?
韩国虚拟主机 广州服务器租用 免费域名申请 希网动态域名 阿云浏览器 wavecom rak机房 shopex空间 unsplash 服务器怎么绑定域名 轻量 mysql主机 铁通流量查询 建立邮箱 老左正传 百度云1t hkt 国外ip加速器 Updog 沈阳主机托管 更多