Всем доброго времени суток,
я думаю поднять apk репозиторий для внутреннего пользования.
на http://aptoide.com/server.html выложен php скрипт для создания info.xml
может будет у кого желание изобразить функционал на python?
держать php ради одного скрипта не хочется.
Неплохо бы сказать, что это
Неплохо бы сказать, что это вообще такое.
Не грусти, товарищ! Всё хорошо, beautiful good!
насколько я понимаю это
насколько я понимаю это оверлей для андроидофона.
альтернативый репозиторий для андроидных програм
Как Вадим правильно ответил - это оверлей для андроидных програм.
в деталях - приложения в андроиде мне хотелось бы ставить подряд из своей коллекции, вместо того что бы лазить по гугломаркету в поисках.
сам скрипт обходит поддиректории, вытаскивает инфу из apk файлов и складывает ее в xml файл.
Это скрипт потом отдается aptoid/apktor клиенту при подключении.
а учитывая то что перешиваю rom довольно часто - то хочется централизованного решения для себя.
про бэкап в гугле знаю, но не хочу, подумываю о полной отвязке телефона от гугла.
изначальный php скрипт generate.ph
bash скрипт может быть даже и удобнее чем питон...
/
Давно известно, что настоящие джедаи пишут cgi-скрипты на баше :)))
:wq
--
Live free or die
нагрузки не несет
ну скажем это далеко не cgi-script, определение на wikipedia (на русский перевод там тоже линк есть).
скрипт нужен для создания статичного xml файла, и будет от силы запускатся один - два раза в неделю,
и обходить десяток - другой поддиректорий, в смысле участвовать в формировании html он не будет.
так что разницы от языка, на котором скрипт сделан - я не прочувствую.
просто у самого навыков программирования практически нету, и поэтому прошу помочь.
пошаговое написание скрипта
1. сделать лист apk файлов
find . -type f -name '*.apk' -print2.попользовать aapt для вытаскивания инфы из apk файла
find . -type f -name '*.apk' -exec ./aapt d badging {} +уже не работает.
Как сделать рекурсию для программы которая не понимает список файлов?
.
Склонен подозревать особенность реализации опции
-exec(ты ничего не напутал в синтаксисе?).Я бы написал скрипт для обработки одного файла и указывал его в качестве аргумента.
Т.е.
process.sh:Ну и далее:
find . -type f -name '*.apk' -exec /path/to/process.sh {}\;:wq
--
Live free or die
синтаксис
ага, напутал.
выводим инфу из всех найденных пакетов и записываем в
list.rawfind . -type f -name '*.apk' -exec ./aapt d badging {} \; > list.rawтеперь вытаскиваем то что нам надо
name
grep application list.raw| cut -d\' -f2icon
grep application list.raw| cut -d\' -f4pkg
grep package list.raw| cut -d\' -f2ver
grep package list.raw| cut -d\' -f6vercode
grep package list.raw| cut -d\' -f4считаем md5sum - здесь снова надо обращаться с файлу
find . -type f -name '*.apk' -exec md5sum {} \;Смотрим дату модификации файла
find . -type f -name '*.apk' -exec stat -c %z {} \; | cut -d\ -f1а вот как теперь эту информацию собрать в xml файл я не представляю
у них на сайте pdf со спецификациями выложен
Должно получится что то вроде
<?xml version="1.0" encoding="UTF-8"?> <apklst> <package> <apkid>ex.app1.com</apkid> <path>App1.apk</path> </package> <package> <apkid>ex.app2.com</apkid> <path>App2.apk</path> <name>App 2</name> <ver>2.1.1</ver> <icon>/icons/app2.ico</icon> <catg>Game</catg> <date>21-01-10</date> </package> </apklst>TODO: выковырять иконки