我有一个功能齐全的Android小部件,它包含服务提供者类,接收者类和其他一些资源。
我有一个单独的应用程序,我已成功导入窗口小部件的类和所需资源。应用程序内部有一个按钮菜单(编码到硬菜单按钮),我想使用其中的按钮来安装小部件。我不关心小部件是否显示在主页上(我知道你不能在应用程序内部做到这一点)我只是希望小部件安装并成为主屏幕上“小部件”菜单上的一个选项。登记/> 我尝试从应用程序内部启动服务,我尝试向小部件发送更新,以便它将调用.OnEnabled,我尝试实例化java类...我显然遗漏了一些东西而无法弄清楚安卓文档。
我知道这是一个非常愚蠢的问题......
如何让serviceProvider运行并安装小部件? (使用WidgetServiceProvider.java和WidgetReceiver.java作为示例)
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId())
{
...
case R.id.installWidget:
????????
break;
}
答案 0 :(得分:1)
应用程序内部有一个按钮菜单(编码到硬菜单按钮),我想使用其中的按钮来安装小部件。我不关心小部件是否显示在主页上(我知道你不能在应用程序内部这样做)
这些句子对我来说真的没有意义。你说你想使用一个应用程序在主页上放置一个小部件..然后说你知道你不能在一个应用程序内做到这一点..
如果您询问如何让窗口小部件自动安装到通过清单xml文件实现的窗口小部件菜单中。
有关完整教程,您可以查看here,但针对您的问题,您只需要将这些标记的变体添加到清单xml文件中的Application标记。
<receiver android:name="[Package name]" android:label="[Your Label]">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data android:name="android.appwidget.provider" android:resource="@xml/widget" />
</receiver>
标签链接: