2013-10-09 4 views
1

Я пишу плагин-совместимый плагин Cordova. Установка его через Plugman, я подтвердил, что он устанавливает правильно и работает нормально:Cordova CLI перезаписывает плагин Plugman на Android?

plugman --platform android --project /platforms/android --plugin my/plugin.path 

Но если я использую:

cordova build/cordova run android 

он не работает даже с плагином установлен. Это связано с тем, что Plugman устанавливает мой файл js-плагина в папку/platform/android/assets/www, а не в папку base/www, поэтому, когда я создаю, папка/www без плагина копируется в/platform/android/assets/WWW.

Есть ли какой-либо вариант в plugin.xml Я должен указать, чтобы установить плагин в корневую папку WWW проекта?

ответ

2

при использовании Кордова CLI, вы не должны установить плагин с помощью plugman. Cordova CLI использует плагин под обложками, но то, что вы хотите использовать, - cordova plugins add http://... или cordova plugins add /path/to/plugin.xml.

Вы не указали, какую версию Кордовы вы используете, но вот некоторые примеры добавления плагин, которые являются базовыми функциями: http://cordova.apache.org/docs/en/3.0.0/guide_cli_index.md.html#The%20Command-line%20Interface

+0

Использования Cordova плагин добавить, остальную часть моего плагина добавляются (AndroidManifest.xml дополнение , libs), но файл js не копируется в папку assets/www, как при использовании плагина? – nicobatu

+0

Справа. Я не уверен, как выглядит ваш файл plugin.xml, но если вы используете js-module (а не актив) для ваших js-файлов, cordova позаботится о введении js-файла и сохранит его в другом каталоге. См. Здесь больше: http://cordova.apache.org/docs/en/3.0.0/plugin_ref_spec.md.html#Plugin%20Specification – mooreds

0

Это нужно поместить Js файлы платформ/Android/активов// плагинов/com.plugin имя-WWW/WWW и Java-файлы в плагине имя-платформы/андроид/SRC/COM//

You можно указать в файле plugin.xml, как это (это пример из плагина, который я повышен до https://github.com/aharris88/phonegap-sms-plugin3.0()):

<js-module src="www/sms.js" name="Sms"> 
    <clobbers target="window.sms" /> 
</js-module> 

<!-- android --> 
<platform name="android"> 
    <config-file target="res/xml/config.xml" parent="/*"> 
     <feature name="Sms"> 
      <param name="android-package" value="com.adamwadeharris.sms.Sms"/> 
     </feature> 
    </config-file> 

    <config-file target="AndroidManifest.xml" parent="/manifest"> 
     <uses-permission android:name="android.permission.SEND_SMS" /> 
    </config-file> 

    <source-file src="src/android/Sms.java" target-dir="src/com/adamwadeharris/sms" /> 
</platform> 
Смежные вопросы