Ionic Capacitor 是 Ionic 團隊推出的一個跨平台原生應用開發框架。與 Cordova 類似,Capacitor 允許開發者使用網頁技術(如 HTML, CSS 和 JavaScript)來開發原生應用程式,Capacitor 提供豐富的原生 API,使網頁技術開發者可以更容易的使用行動裝置所提供的 API 與功能。且不同於 Cordova,Capacitor 提供了更現代化的工具集,更深入的原生整合,以及更多現代瀏覽器 API 的支持。
相較於 Cordova,Capacitor 是較新的開源專案,且由 Ionic 團隊維護,雖然 Capacitor 和 Cordova 在精神上非常相似,但 Capacitor 在原生專案管理、插件管理以及 CLI 版本管理方面都有所不同。
原生專案管理: Capacitor 認為每個平台專案都是源資源而非構建時資源。
插件管理: Capacitor 的插件管理方式與 Cordova 有所不同,不再需要 deviceready 事件。
CLI/版本管理: Capacitor 不使用全局 CLI,而是將其安裝在每個專案中。
啟用 Capacitor
因為之前在開 Ionic 專案時就自動安裝 Capacitor 相關套件,所以只要執行下列指令,來啟用 Capacitor
ionic integrations enable capacitor
Ionic Framework 需要使用下列 Capacitor 外掛程式中的 API
npm i @capacitor/app @capacitor/haptics @capacitor/keyboard @capacitor/status-bar
建立 android 跟 iOS 專案
ionic capacitor add android
ionic capacitor add ios
專案根目錄下的 android 和 iOS 專案已建立。但他是完全獨立在本地端的項目,所以每次執行 ionic build 時都需要將這些變更複製到您的本地端的專案中
ionic cap copy
若是更新本地端的程式碼(例如新增外掛或套件)後,要使用 sync
ionic cap sync