Cordova - 與iOS原生代碼交互1(通過JS調用Swift方法)

在前面的文章中介紹的了如何使用Cordova進行跨平臺應用的開發,使用Cordova的話基本上就不需要在寫系統原生代碼了,只要通過編寫html頁面和js方法即可。
但在有些特殊情況下,還是是需要html頁面能和系統原生代碼(ios native code)進行交互。下面介紹如何實現 JS 與 Swift 代碼間的相互通信。

假設我們已經建立了一個名叫 HelloWorld 的Cordova工程項目(不太清楚如何使用Cordova的可以參考我前面寫的幾篇文章:使用Cordova開發iOS應用實戰1(配置、開發第一個應用)

1,樣例說明

(1)雖然使用Cordova創建的工程是一個 OC 工程,但由于蘋果可以很方便的支持混合編程,所以我們用 Swift 來實現與 JS 的交互也是可以的。
(2)這里我們使用Swift來做個口令驗證的功能,由于只是演示,所以代碼很簡單。Swift這邊接收傳輸過來的口令字符串,判斷正確與否并反饋回頁面。如果驗證失敗還會返回具體的失敗原因信息。

2,樣例效果圖
Paste_Image.png
Paste_Image.png
Paste_Image.png
Paste_Image.png
3,實現步驟

(1)我們在 Plugins 文件夾中新建一個Swift文件(HanggeSwiftPlugin.swift)。創建的時候系統會提示是否同時創建橋接頭文件,這里選擇確定。

(2)在新生成的橋接頭文件 HelloWorld-Bridging-Header.h 中把 Cordova/CDV.h 給 import 進來

#import <Cordova/CDV.h>

**(3)新建的 HanggeSwiftPlugin.swift 中添加如下代碼 **

Paste_Image.png

(4)在 config.xml 中添加如下配置,將我們創建的功能類給配置上

Paste_Image.png

(5)首頁 index.html 代碼如下,修改運行后即可看到效果。

Paste_Image.png

原文出自:
www.hangge.com
轉載請保留原文鏈接:
http://www.hangge.com/blog/cache/detail_1150.html

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容