是否可以通过编程方式更新Android Manifest?

时间:2017-04-04 05:47:37

标签: android android-manifest

我想要实现的目标:

我正在创建一个以编程方式更改应用图标和应用名称的应用。

我取得的成就:

 我已经实现了这一点,因为在android清单中声明了activity-alias,只有5个名字和图标。

我面临的问题:

如果您只有5个名称,那么很容易在清单中声明它。但是,如果你不知道没有,那该怎么办?名称,您必须以编程方式更新清单。

以下是我的代码:

的AndroidManifest.xml

semantic_fields_for

MainActivity.java

form :html => { :enctype => "multipart/form-data"} do |f|
  f.inputs "Details" do
    ...
  end
  f.inputs "General Customisation" do
    ...
    if f.object.standalone_background.present?
      f.semantic_fields_for :standalone_background_attributes do |fields|
        fields.input :_destroy, as: :boolean, label: 'Delete?'
      end
    end
  end
end

1 个答案:

答案 0 :(得分:3)

假设您的问题是标题中的问题:

  

是否可以通过编程方式更新Android Manifest?

答案是,无法以编程方式执行此操作。

您可以启用/禁用清单中声明的​​组件,但不能在其中添加或删除某些内容,因为正如名称所示,它是一个清单文件,系统在安装您的应用程序时“读取”。因此,您要在该清单中声明您的应用程序界面,以后您无法更改,除非您使用其他清单重新安装该应用程序。

假设系统为您提供了执行此操作的能力。然后,您会动态地为您的清单添加一些权限,而用户在从Play商店下载您的应用时尚未批准。