Passing benutzerdefinierte Argumente aapt in Eclipse
-
20-09-2019 - |
Frage
Ist es möglich, Eclipse zu sagen einige zusätzliche Argumente für aapt zu verwenden (-0 in spezifischen)?
Ich habe in den letzten paar Stunden suchen und die beste Hack kam ich mit war ein Wrapper für das aapt-Tool zu erstellen, das Argument zu der Befehlszeile zu injizieren. Das Problem bei diesem Ansatz ist, dass, wenn ich diesen Wrapper verlieren sollte, dann werde ich ruhig einen Fehler in meiner Anwendung Einführung sein.
Lösung
Ich glaube nicht, es ohne irgendeine Art von Wrapper-Skript möglich ist, wie Sie erwähnen.
Alternativ können Sie ein Android-Ant-Skript verwenden, um die Release-Version Ihrer Anwendung zu erstellen, wie können Sie ganz einfach die Befehlszeilenparameter verwendet außer Kraft setzen. Es hilft Ihnen auch Dinge unabhängig von der Eclipse-Plugin bauen, die nützlich ist, sollten Sie in die kontinuierliche Integration erhalten.
Hoffentlich würden Sie nicht ruhig einen Fehler sowieso mindestens Rauch Testen Ihre App vor der Veröffentlichung aufgrund einführen.
Andere Tipps
Danke Christopher für deine Antwort. Hier ist die aapt Wrapper-Skript ich in Python für meine Zwecke in Fall gebaut jemand braucht es:
#!/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)