Я достиг этого.И вот как я это сделал для следующего парня (используя Eclipse):
1) Создайте исполняемый файл внешней консоли, который собирается записать код новой версии в AndroidManifest.xml: (мой находится в C #)
using System.IO;
using System.Text.RegularExpressions;
namespace AndroidAutoIncrementVersionCode
{
class Program
{
static void Main(string[] args)
{
try
{
string FILE = @"AndroidManifest.xml";
string text = File.ReadAllText(FILE);
Regex regex = new Regex(@"(?<A>android:versionCode="")(?<VER>\d+)(?<B>"")", RegexOptions.IgnoreCase);
Match match = regex.Match(text);
int verCode = int.Parse(match.Groups["VER"].Value) + 1;
string newText = regex.Replace(text, "${A}" + verCode + "${B}", 1);
File.WriteAllText(FILE, newText);
}
catch { }
}
}
}
в сторону: любой компилятор c-sharp может создать это приложение, вам не нужна Visual Studio или даже Windows
- если у вас его еще нет, установите .NET runtime ( Mono будет работать, ссылка ) ( ссылка на MS .NET Framework 2.0, 2.0 - это самая маленькая загрузка, любая версия> = 2.0все в порядке )
- скопируйте этот код в файл
*.cs
(я назвал мой: AndroidAutoIncrementVersionCode.cs
) - откройте командную строку и перейдите туда, где вы сделали
*.cs
file - создайте файл с помощью этой команды (в Windows аналогично Mono, но измените путь к компилятору):
c:\Windows\Microsoft.NET\Framework\v2.0.50727\csc AndroidAutoIncrementVersionCode.cs
(см .: .NET или Mono для получения дополнительной информации) поздравляю, вы только что создали приложение C # без каких-либо инструментов, оно должно было сгенерировать AndroidAutoIncrementVersionCode.exe
в том же прямомory автоматически
** пробег может отличаться, пути могут быть разными, покупка не требуется, void там, где это запрещено, я добавил это, потому что C # потрясающий, и люди по ошибке думают, что он имеет блокировку MS, вы можете простолегко перевести это на другой язык (но я не собираюсь делать это для вас;).кстати, любая версия любого .NET-компилятора будет работать, я адаптировал код для наименее общего знаменателя ... *
end aside
2) Запустите исполняемый файл во время процесса сборки: a) Перейдите в свойства проекта
b) В свойствах перейдите к «Строителям» -> «Новый ...»
в) Выберите «Программа»
г) В «Основном»На вкладке выберите местоположение программы (я также установил рабочий каталог как безопасный) и дайте ему имя, если хотите.
e) На вкладке «Обновить» выберите«Обновить ресурсы после завершения» и «Выбранный ресурс» - это обновит манифест после того, как мы его напишем.
f) На вкладке «Параметры сборки» вы можетеотключите «Allocate Console», так как у вас нет ввода и вывода, а затем выберите только «Во время ручной сборки» и «Во время автоматической сборки», снимите флажок «После очистки», если установлен этот флажок.Затем выберите «Указать рабочий набор соответствующих ресурсов» и нажмите кнопку «Указать ресурсы ...».В диалоговом окне «Изменить рабочий набор» найдите файл «AndroidManifest.xml» и проверьте его, затем нажмите «Готово»
f) Теперьнажмите «ОК» внутри «Редактировать конфигурационный диалог» и в свойствах своего приложения выберите вновь созданного компоновщика и продолжайте нажимать «Вверх», пока он не окажется вверху списка, таким образом, сначала выполняется автоматическое увеличение, ине вызывает случайные несинхронизированные состояния или перестройки.Когда созданный вами новый конструктор окажется в верхней части списка, нажмите «ОК», и все готово.