1. PHP / Говнокод #28919

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    $tempname = '__temp__.apk';
    copy($origname, $tempname);
    exec('C:\Android\android-sdk\build-tools\34.0.0\aapt.exe dump badging ' . '"'.$tempname.'"', $output);
    unlink($tempname);

    Понадобилось по-быстрому наговнякать переименоватор apk-файлов. Решил метушню из манифеста вытянуть с помощью «aapt» из официальных «Android build tools». Оказалось, что «aapt» не может открыть файл, если его имя содержит символы за пределами базового ASCII. CHCP не помогает вообще никак.

    При передаче в aapt имени в 866 выводится «asset... Asset path... is neither a directory nor file (type=1)», при передаче имени в других кодировках (1251, UTF-8) выводится сообщение «ziparchive... Invalid byte sequence». Так и не смог подобрать кодировку, в которой заработает.

    Шёл 2024-й год.

    Запостил: nemyx, 04 Марта 2024

    Комментарии (3) RSS

    • SEO-пост: бамп отсосу прыщеблядей.
      Ответить
      • Именно поэтому я за "PHP".
        Ответить
        • Я тоже. PHP с версий 7.x теперь умеет открывать файлы, содержащие в имени символы за пределами ASCII, а вот некоторые гугловские утилиты из Android Studio — нет, как оказалось.

          Т. е. «Гугл» оказался хуже, чем «PHP».
          Ответить

    Добавить комментарий