не может запустить zipalign.exe в mac [duplicate]

Ссылка NullReferenceException или Object, не установленная на экземпляр объекта, возникает, когда объект класса, который вы пытаетесь использовать, не создается. Например:

Предположим, что у вас есть класс с именем Student.

public class Student
{
    private string FirstName;
    private string LastName;
    public string GetFullName()
    {
        return FirstName + LastName;
    }
}

Теперь рассмотрим другой класс, в котором вы пытаетесь получить полное имя учащегося.

public class StudentInfo
{      
    public string GetStudentName()
    {
        Student s;
        string fullname = s.GetFullName();
        return fullname;
    }        
}

Как видно из вышеприведенного кода, оператор Student s - объявляет только переменную типа Student, обратите внимание, что класс Student не создается в этой точке. Следовательно, когда выполняется выполнение инструкции s.GetFullName (), она выкинет исключение NullReferenceException.

52
задан Yury 8 March 2012 в 11:01
поделиться

17 ответов

Решение для Mac

Эта ошибка в основном означает, что терминал не смог найти zipalign-файл. Таким образом, вы можете либо ввести полный путь для вашего zipalign файла с помощью команды (расположенной в папке с вашими инструментами Android)

/Users/username/Library/Android/sdk/build-tools/26.0.1/zipalign -v 4 android-armv7-release-unsigned.apk helloWorld.apk;

Если вы не знаете местоположение zipalign-файла, тогда просто используйте эту команду

find ~/Library/Android/sdk/build-tools -name "zipalign"
1
ответ дан Abhay Amin 27 August 2018 в 02:23
поделиться

Найти его и ссылаться на него ... У меня есть он здесь и ссылаюсь на него следующим образом:

/ Пользователи / lioncio / Desktop / adt-bundle-mac-x86_64-20140702 / sdk / build-tools /android.4.4W/zipalign bla bla bla (все опции команды!) [/ ​​g1]

И работал

8
ответ дан AriWais 27 August 2018 в 02:23
поделиться

Перейдите к пути выравнивания по zip и включите это с помощью команды

/Users/ignatiusandrew/Library/Android/sdk/build-tools/25.0.2/zipalign 4 android-release-unsigned.apk igi.apk

1
ответ дан Ignatius Andrew 27 August 2018 в 02:23
поделиться

Простой однострочный:

  • Это добавляет строку в ваш профиль, чтобы добавить каталог, который содержит zipalign исполняемый файл к вашему пути
  • Затем перезагружает профиль

echo "export PATH=\$PATH:~/Library/Android/sdk/build-tools/23.0.1/" >> ~/.bash_profile && . ~/.bash_profile

Обязательно замените 23.0.1 вашей установленной версией

$ ls -l ~/Library/Android/sdk/build-tools/
total 0
drwxr-xr-x  23.0.1 <---

Теперь вы сможете использовать zipalign независимо от текущей рабочей директории

$ zipalign

13
ответ дан Luddig 27 August 2018 в 02:23
поделиться

добавить его к пути

на терминале

найти путь для zip align

find ~/Library/Android/sdk/build-tools -name "zipalign"

путь: / Пользователи / имя пользователя / Библиотека / Android / sdk / build-tools / 26.0.1 / zipalign

введите найденный там путь

sudo nano /etc/paths

Теперь на новом терминале вы можете увидеть zipalign reco

1
ответ дан manish kumar 27 August 2018 в 02:23
поделиться

Вы можете найти правильный путь с помощью этой команды:

find ~/Library/Android/sdk/build-tools -name "zipalign"
23
ответ дан mentatxx 27 August 2018 в 02:23
поделиться

Zipalign - это команда, расположенная в $ANDROID_HOME/build-tools/{android-version}/.

Надеюсь, что это помогло.

20
ответ дан NgaNguyenDuy 27 August 2018 в 02:23
поделиться

Во-первых, если ваш дом Android настроен, вы можете просто cd $ANDROID_HOME и open . (это должно быть - / Users / username / Library / Android /, вы можете просто cd к этому пути)

Затем перейдите к «sdk / build-tools / 25.0.3 /» (версия 25.0.3 в этом случае ваша может быть другой версией).

На вашем терминале (apk prompt), перетащите zipalign на терминал и ...../zipalign -v -p 4 my-app-unsigned.apk my-app-unsigned-aligned.apk. Должен работать нормально.

Надеюсь, что это поможет.

0
ответ дан Olusola Omosola 27 August 2018 в 02:23
поделиться

Возможно, текущий каталог не находится на вашем пути?

Попробуйте добавить «./» перед вашей командой, чтобы

./zipalign -v 4 Project1.apk Project1-aligned.apk
64
ответ дан pjulien 27 August 2018 в 02:23
поделиться

для меня это сработало отлично, я скопировал zipalign файл с пути android в папку, где я хотел запустить команду, а затем набрал ./zipalign -v 4 android-release-unsigned.sdk nameofapp.apk

Примечание: на Mac

0
ответ дан Raul Rivero 27 August 2018 в 02:23
поделиться

cd android-sdk/build-tools/22.0.0/ - смените каталог на папку android sdk, создайте инструменты и выберите версию (я использовал 22.0.0).

Затем в приглашении введите:

./zipalign -v 4 /MyApp/android-x86-release-signed.apk ~/MyApp/android-x86-release-signedandzipped.apk

Это сработало для меня. Я пробовал другие решения выше, не добившись успеха. Мне просто нужно было запустить команду с правильной папкой, но это не было ясно объяснено в других ресурсах, которые я проверил.

1
ответ дан RichTea 27 August 2018 в 02:23
поделиться

Я использую Windows с git bash / command promt

. zipalign.exe необходимо настроить в переменных среды.

поэтому включить sdk folder 'build-tool' с версией для Android которую вы используете для сборки.

e.g. E:\android-sdk\build-tools\22.0.1

он должен содержать «zipalign.exe». теперь вы можете использовать

zipalign -v 4 Project1.apk Project1-aligned.apk

из любого места с помощью инструментов командной строки.

thumb для меня, поэтому я могу помочь другим разработчикам.

0
ответ дан Seetpal singh 27 August 2018 в 02:23
поделиться

Если вы работаете в Windows, измените командную строку, чтобы указать на папку, содержащую zipalign.exe, а затем запустите команду. Кроме того, я обнаружил, что вы не используете полную команду:

zipalign [-f] [-v] 4 Input.apk Output.apk
0
ответ дан Supriya Tenany 27 August 2018 в 02:23
поделиться
~/Library/Android/sdk/build-tools/xxxx/zipalign

Перетащите его на терминал или сохраните на своем пути. xxxx -> Версия

29
ответ дан Tanuj 27 August 2018 в 02:23
поделиться

Вы найдете инструмент zipalign в /path/to/sdk/build-tools/zipalign NOT в папке с инструментами больше.

31
ответ дан Tash Pemhiwa 27 August 2018 в 02:23
поделиться

Relax! , Just Use Locate Команда в терминале WHEREVER, она выйдет

tom-MacBook-Air:kavform_app tom$ locate zipalign

/Users/tom/Software/android-sdk-macosx/build-tools/24.0.1/zipalign

/Users/tom/Software/android-sdk-macosx/docs/tools/help/zipalign.html  

. В моем случае это было зажато здесь

/Users/tom/Software/android-sdk-macosx/build-tools/24.0.1/zipalign -v 4 /Users/tom/kavwork/kavform/kavform_app/platforms/android/build/outputs/apk/android-release-unsigned.apk BrideToBe.apk
5
ответ дан vijay 27 August 2018 в 02:23
поделиться
%ANDROID_HOME%\\build-tools\\25.0.2\\zipalign -v 4 .\\platforms\\android\\build\\outputs\\apk\\input.apk .\\path\\ output.apk
0
ответ дан whrrgarbl 27 August 2018 в 02:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: