将自定义参数传递给Eclipse中的aapt

时间:2010-02-12 00:01:11

标签: android eclipse eclipse-adt aapt

是否有可能告诉Eclipse为aapt使用一些额外的参数(特定于-0)?

我一直在寻找过去的几个小时,我想出的最好的黑客是为aapt工具创建一个包装器,将参数注入命令行。这种方法的问题在于,每当我丢失该包装器时,我就会悄悄地在我的应用程序中引入一个错误。

2 个答案:

答案 0 :(得分:1)

如果没有你提到的某种包装脚本,我认为不可能。

或者,您可以使用Android ant脚本来构建应用程序的发行版,因为这样可以轻松覆盖使用的命令行参数。它还可以帮助您独立于Eclipse插件构建内容,如果您进入持续集成,这将非常有用。

希望你不会悄悄地介绍一个bug,因为在发布之前至少会对你的应用程序进行冒烟测试。

答案 1 :(得分:1)

谢谢克里斯托弗的回答。这是我在python中构建的aapt包装脚本,用于我的目的,以防任何人需要它:

#!/usr/bin/env python
KEY=r'name-of-your-directory'
DIR='/../../path/to/your/include/res/'

import os
import re
import sys

mydir = os.path.dirname(os.path.realpath(__file__))
real_aapt = "%s/%s" % (mydir,"aapt-real")
#args = sys.argv[1:]
args = sys.argv

found=False
nextisdir=False
newargs=[]
for arg in args:
    if re.search(KEY,arg):
        found=True
    if nextisdir:
        nextisdir=False
        newargs.append("--auto-add-overlay")
        newargs.append("-S")
        newargs.append(arg+DIR)
    if found and arg == '-S':
        nextisdir=True

os.execv(real_aapt,args+newargs)