我正在开发两个android应用程序,一个是baseApp,另一个是pluginApp。其目的是在安装相应的插件时扩展baseApp的功能。 pluginApp将包含XML布局文件,这些文件将包含我需要在baseApp中显示的'new_layouts'。有没有办法通过Inter Process Communication或类似的方式将new_layout从pluginApp传递给baseApp?是否有可能在其他应用程序中充气RemoteViews?
我尝试以下方法,没有运气 我包从pluginApp布局文件作为“RemoteViews”对象,并将其传递给baseApp,但是当我膨胀成baseApp我得到一个错误说
android.view.InflateException: Binary XML file line #9: Class not allowed to be inflated android.widget.EditText
注意:'new_layout'包含EditText和其他元素,其中EditText是第一个子元素。
我从来没有使用过RemoteViews,也不明白它们的用途。
请指导我 1.是否可以从一个应用程序使用视图到其他应用程序? 2. RemoteViews可以用于此目的吗?如果是,那么如何? 3.为什么我得到这个错误,这是什么意思?
Thankyou洙很多为这样一个快速和精心的回应。我可能会限制自己的可用视图。关于构建我自己的Parcelable数据结构有一个示例项目,我可以用它作为指导,因为我之前从未做过任何类似的工作 –
@SukumarGaonkar:就构建包含构建UI的命令的Parcelable数据结构而言,不知道这个星球上的任何人是否尝试过它,除了RemoteViews本身。如果你的意思是'一般的可Parcelable',我相信这里有教程,尽管我没有任何帮助。 FWIW,我在我的书中有一章“Parcelable” - 这里是[章节预览](https://commonsware.com/Android/previews/writing-and-using-parcelables)。 – CommonsWare
我已将我的布局限制为允许的视图,并且按预期布置,但我无法更新它们。例如。我有pendingIntents附加到每个按钮触发我的插件代码,在那里我更新我的布局的内容。但是这些更新在屏幕上不可见。我怀疑我需要调用像'updateAppWidget(thisWidget,rView);'。有关更新布局远程视图的任何指导?谢谢:) –