Zrobiłem to, dodając dodatkowy cel kompilacji - więc kod wersji jest zwiększany podczas budowania projektu, a nie po zatwierdzeniu na SVN. Są to instrukcje, aby uruchomić to w IntelliJ IDEA.
pierwsze, dodać nowy plik w katalogu głównym projektu o nazwie svn-revision.build.xml
o następującej treści:
<project default="svn-revision">
<target name="svn-revision">
<exec executable="sh" outputproperty="revision">
<arg value="-c" />
<arg value="svnversion | sed -e 's/^[^:]*://;s/[A-Za-z]//'" />
</exec>
<echo>Revision (app): ${revision}</echo>
<replaceregexp file="AndroidManifest.xml" match='android:versionCode="([^".]+)(\.[^"]*)?"' replace='android:versionCode="${revision}"' />
</target>
</project>
Następnie w menu przejść do View > Tools > Ant Build
, a następnie naciśnij trochę +
przycisk w oknie i dodaj nowo utworzony plik. Kliknięcie zielonego przycisku "Uruchom" w oknie Ant Build spowoduje natychmiastowe uruchomienie skryptu. Aby skrypt działał przy każdej kompilacji, musisz ustawić cel "svn-rewizji" jako domyślny cel.
Wszelkie pomysły, jak można by to zrobić, jeśli były przy użyciu Eclipse? – Felix
Chciałbym również wiedzieć, jak to zrobić, używając Intellij IDEA – barmaley
@barmaley: IDEA ma podobne wsparcie dla wykonywania skryptów ant, zobacz [Intellij And and Maven Integration] (http: //www.jetbrains.com/idea/features/ant_maven.html) –