PhoneGap - Расширить плагин для iOS - PullRequest
4 голосов
/ 23 февраля 2012

Я читал о том, как создать новый плагин для PhoneGap, и, кажется, получил его, следуя этому руководству.

http://wiki.phonegap.com/w/page/36753496/How%20to%20Create%20a%20PhoneGap%20Plugin%20for%20iOS

Однако у меня возникли трудностивремя понять, как расширить существующий плагин.(не создавая новый)
Читал этот учебник.

http://hiediutley.com/2011/03/28/phonegap-tutorial-series-3-extending-the-phonegap-api/

Я не могу понять, где я могу добавить строку кодов в файл .mнапример.В моем XCode я вижу только файлы .h, но не файл .m.
Или есть лучший способ расширить API?

Спасибо,
Тройник

1 Ответ

2 голосов
/ 23 февраля 2012

РЕДАКТИРОВАТЬ: Этот ответ больше не является полностью правильным.

Последние версии Cordova / PhoneGap не являются скомпилированным фреймворком, и гораздо проще (особенно начиная с 2.2.0) настроить версию cordova, используемую конкретным приложением, поскольку это просто подпроект в XCode.

Чтобы получить доступ к файлам .m, вам необходимо загрузить исходный код iOS PhoneGap (Cordova) и внести в них изменения, чтобы собрать собственную версию платформы PhoneGap.

Это не так сложно, как кажется, но может быть немного сложным, если вам не очень удобны Objective-C и инструменты компиляции командной строки.

Чтобы перефразировать README из источника iOS, например:

$ git clone http://git-wip-us.apache.org/repos/asf/incubator-cordova-ios.git

Внесите изменения, затем ...

  1. Запуск "Terminal.app"
  2. Перейдите в папку, где находится Makefile (./PhoneGapLib?)
  3. Введите make, затем нажмите Enter

Это должно создать "PhoneGapInstaller.dmg" в папке dist . Это то, что вы используете для установки новой версии PhoneGap.

Другой вариант - взять файлы .m и .h API, который вы расширяете (просто получив их из исходного хранилища GitHub), и превратить их в новый плагин с вашим собственным именем. В качестве примера, вместо того, чтобы расширять API-интерфейс камеры и вносить изменения в Camera.m, а также перекомпилировать и т. Д. Я решил создать плагин, изначально называемый MyCamera, который имеет код из API-интерфейса камеры и мои собственные расширения. Большинство API в PhoneGap (по крайней мере, в iOS) в основном уже являются собственными плагинами, поэтому им не нужно много настроек, чтобы превратить их в плагин только для ваших целей.

Этот метод также означает, что вы можете позже обновить PhoneGap и не загромождать все свои расширения.

...