【问题标题】:Android: Is it possible to download the class (which is an extend of LinearLayout) of an android custom View and instantiate it in runtime?Android:是否可以下载 android 自定义 View 的类(LinearLayout 的扩展)并在运行时实例化它?
【发布时间】:2017-06-30 18:50:40
【问题描述】:

我正在开发一个应用程序,它有一个叫做小部件的东西(不要与你可以保留在桌面上的 android 小部件混淆)

Widget 是一个扩展 LinearLayout 的抽象类。

现在我们可以扩展 Widget 并创建各种小部件来执行各种任务,例如,

AlarmWidget - 一个在您设置的时间闪烁的小部件
ClockWidget - 一个显示时间的小部件。

当我分发应用程序时,它会附带一些我在项目中编码的内置小部件,包括上述 2。

但我希望开发者社区能够创建类似于上述 2 的自定义小部件,这些小部件将托管在服务器中并可供用户下载。

由于所有小部件的组合尺寸很大,因此无法让用户通过更新下载服务器上所有可用的小部件

所以应用程序会在必要时从服务器下载所需的类(Widget 类的扩展)并实例化视图。

Widget 的每个扩展都是一个复杂的对象,其中包含许多附加到它的子视图以及它自己独特的方法和代码。 (因此无法通过仅传输颜色、文本、背景图像等信息来实例化类)

我该怎么做?

【问题讨论】:

    标签: java android reflection


    【解决方案1】:

    Dexmaker - 一种 Java 语言 API,用于针对 Dalvik VM 进行编译时或运行时代码生成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-02
      • 2015-10-30
      • 2016-06-19
      • 2011-05-23
      • 1970-01-01
      相关资源
      最近更新 更多