2014-10-30 24 views
0

我能夠使用特定於平臺的工具爲Android創建Cordova 3.0項目(我嘗試了CLI方法但無法使其工作)。我使用plugman工具添加了標準核心插件。我的應用程序的index.html.js插件文件似乎正在加載,因爲我可以看到啓動屏幕並在應用程序中執行一些基本操作。但是,諸如呼叫數據庫等高級功能無法正常工作,因爲這些功能是由我自己的自定義插件實現的。這些插件存在於他們的項目文件夾中,並作爲庫參考添加到主活動中(我在Eclipse中右鍵單擊並選擇Debug as Android application)。因此,對於該特定項目,它們在Java Build PathAndroid Dependencies部分中顯示爲.jar參考。我大約90%確定我的.js插件文件已正確設置,因爲我確實有一個插件是主活動的src樹中的一個包。這是唯一可以工作的插件。當我刪除該軟件包以測試並嘗試使用該插件功能時,該軟件包失敗。如何讓Cordova 3.0在外部項目文件夾中識別我自己的插件?

我的插件已被正確添加到​​3210文件中。至少針對主活動的src目錄中存在的一個自定義插件。下面是一個非工作插件的示例:

<feature name="DBHelper_Plugin"> 
    <param name="android-package" value="com.cordova.plugin.dbhelper.DBHelper_Plugin" /> 
</feature> 

是否可以使用來自外部文件夾的第三方插件?如果是這樣,怎麼樣?如果沒有,除了使用一百萬個插件包(因爲它現在有核心插件),我的主要活動的src樹混淆在一起之外,還有其他選擇嗎?

+0

奇怪你無法使用CLI(我發現CLI比使用插件更容易)。你的個人插件如何? (使用plugin.xml後的plugman結構?) – QuickFix 2014-10-31 10:46:21

+0

但最後我認爲當你使用plugman或cli時,一切都會複製到項目中,如果這是什麼讓你煩惱的話。我認爲jar必須位於Android的可見項目的「libs」文件夾中。 – QuickFix 2014-10-31 10:50:37

+0

@QuickFix感謝您的建議。我沒有爲我的插件使用'plugin.xml'文件,因爲我沒有通過'plugman'安裝它們,所以我不認爲它們是需要的。我確實嘗試了將'DBHelper_Plugin'的'.jar'文件放入主活動的'libs'目錄中,並且它的工作原理('.jar'文件也包含在'Android Private Libraries'中)。我想現在我的問題是這個,是否可以添加這些庫'。jar文件作爲鏈接,而不是複製它們?爲了清楚起見,我能夠使用我的插件而不需要'plugin.xml'文件。 – Fam 2014-10-31 14:19:31

回答

0

對於誰可能也有這個問題的人,這裏是我做過什麼:

  1. 刪除您的外部(主活動的src目錄以外)的插件從Android庫引用(右擊主要活動>屬性> Android>從Library部分刪除)。只爲插件項目自己做這件事。
  2. 在Windows資源管理器的各自項目文件夾中的bin目錄中找到您生成的插件.jar文件。如果他們不在那裏,在Eclipse中構建項目。將這些拖動到主要活動的libs文件夾中。 Eclipse會詢問您是否要複製或鏈接這些文件。選擇將其鏈接。
  3. 就是這樣。插件現在將顯示在Android Private Libraries下,而不是Android Dependencies,並且Cordova能夠查看並使用它們(確保在您的​​3210文件中包含它們作爲feature引用)。由於它們已鏈接,因此可以在Eclipse中對插件進行更改,而不必擔心再次複製它。

乾杯。

相關問題