【问题标题】:Manually generate R.java手动生成 R.java
【发布时间】:2012-10-02 02:52:27
【问题描述】:

我目前正在从事一个项目,以从 UML 模型自动生成非常简单的 Android 应用程序。 Java 部分和 XML 部分都工作正常,但我遇到了一个问题:R.java 文件。

如我所见,我必须选择生成 R.java 文件的选项。

  1. 首选方法是让 Android SDK 根据 XML 文件为我生成它。但我怎么能这样做呢?我无法像通常那样打开 Eclipse 并选择“清理项目”,因为这应该是一个自动化过程。有没有我可以运行的命令行命令?像 apk -generateR -/path/R.java 这样的东西会很完美。
  2. 我看到的另一种可能性是自己生成它,只需枚举所有资源并输出 R.java 格式的文件。

如果备选方案 2 是唯一方法,那么我遇到的主要问题是如何生成数字。 R.java中一个典型的项目序列如下:

    public static final int button_buy=0x7f020000;
    public static final int button_search=0x7f020001;
    public static final int cover=0x7f020002;
    ...
    public static final int Artist_name=0x7f05000e;
    public static final int Artist2_name=0x7f05001c;
    public static final int Artist2NameLabel=0x7f05001d;

它是如何生成的?数字重要吗?如果我简单地从零开始,然后数数通过它们,现在(以及未来的版本?)一切正常吗?

    public static final int button_buy=0x00000000;
    public static final int button_search=0x00000001;
    public static final int cover=0x00000002;
    ...
    public static final int Artist_name=0x00000003;
    public static final int Artist2_name=0x00000004;
    public static final int Artist2NameLabel=0x00000005;

【问题讨论】:

  • 不能手动生成R.java。
  • 不确定是否可行,但可以查看插件的源代码,根据需要修改。

标签: android r.java-file


【解决方案1】:

您可以使用 ant 脚本来构建您的项目。 R.java 将自动生成,就像您在 Eclipse 中使用“清理项目”选项一样。

在此处阅读更多信息:http://developer.android.com/tools/projects/projects-cmdline.html

我不建议直接使用 R.java 文件。

【讨论】:

  • 谢谢,这正是我想要的。
  • 这仍然适用于 Gradle 系统吗?在给定的链接中没有生成 R 文件的选项。
猜你喜欢
  • 1970-01-01
  • 2020-05-24
  • 1970-01-01
  • 2011-11-17
  • 1970-01-01
  • 2011-05-29
  • 2011-08-01
  • 1970-01-01
  • 2011-06-04
相关资源
最近更新 更多