亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Swift > 正文

iPhone與iWatch連接、控制、數(shù)據(jù)傳遞(Swift)的方法

2020-03-09 17:45:32
字體:
供稿:網(wǎng)友

最近在做一個項(xiàng)目,涉及到iPhone設(shè)備和手表傳輸數(shù)據(jù)、控制彼此界面跳轉(zhuǎn),在網(wǎng)上找了很多資料,發(fā)現(xiàn)國內(nèi)的網(wǎng)站這方面介紹的不多,而國外的網(wǎng)站寫的也不是很全,所以在這寫這篇文章,給大家參考一下,望大神指點(diǎn)一二。

      iPhone和iWatch配對這個不需要多說,百度搜索答案一大堆,這個是前提。

      iPhone與iWatch交互的代碼有兩種情況,取決于iWatch的系統(tǒng)。iWatch OS1與OS2、3的方法不同,在OS1的系統(tǒng)中,iWatch發(fā)送數(shù)據(jù)的代碼如下

let userInfo:[String:String] = ["key":"value"]WKInterfaceController.openParentApplication(userInfo) { (replyInfo, error) -> Void in}

      這個函數(shù)是發(fā)送消息,同時也是接收消息,接收到iPhone的回復(fù)是replyInfo。在iPhone端的AppDelegate中,接收消息的代碼:

func application(application: UIApplication, handleWatchKitExtensionRequest userInfo: [NSObject : AnyObject]?, reply: (([NSObject : AnyObject]!) -> Void)!) {}

      接收到的消息是userInfo,回復(fù)給iWatch的數(shù)據(jù)是reply。

      以上的代碼僅適用于watchOS1,之后的系統(tǒng)就沒有這個API了,對于OS2或OS3,使用的框架是WatchConnectivity,在這里,我將直接提供我寫的類,并給出介紹和使用方法,大家可以直接復(fù)制代碼,在我注釋的地方寫自己的功能便可。

以下是iPhone端的代碼:

import UIKitimport WatchConnectivityclass IwatchSessionUtil: NSObject, WCSessionDelegate {  //靜態(tài)單例  static let shareManager = IwatchSessionUtil()  //初始化  private override init()  {    super.init()  }  // 連接機(jī)制  private let session:WCSession? = WCSession.isSupported() ? WCSession.default() : nil  // 激活機(jī)制對象  func startSession(){    session?.delegate = self    session?.activate()  }  // 檢測到watch端app  func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error: Error?) {    print("AppleWatch匹配完成")  }  // 開始向Watch傳遞數(shù)據(jù)  func sessionDidBecomeInactive(_ session: WCSession) {  }  // 數(shù)據(jù)傳遞完了  func sessionDidDeactivate(_ session: WCSession) {  }  // watch側(cè)發(fā)送數(shù)據(jù)過來,iPhone接收到數(shù)據(jù)并回復(fù)數(shù)據(jù)過去  // message: watch側(cè)發(fā)送過來的信息  // replyHandler: iPhone回復(fù)過去的信息  func session(_ session: WCSession, didReceiveMessage message: [String : Any], replyHandler: @escaping ([String : Any]) -> Void) {    // 在這里,我們接收到watch發(fā)送過來的數(shù)據(jù),可以用代理、代碼塊或者通知中心傳值到ViewController,做出一系列操作。    // 注!?。簑atch側(cè)發(fā)送過來信息,iPhone回復(fù)直接在這個函數(shù)里回復(fù)replyHandler([String : Any])(replyHandler(數(shù)據(jù))),這樣watch側(cè)發(fā)送數(shù)據(jù)的函數(shù)對應(yīng)的reply才能接收到數(shù)據(jù),別跟sendMessage這個函數(shù)混淆了。如果用sendMessage回復(fù),那watch側(cè)接收到信息就是didReceiveMessage的函數(shù)。  }  // iPhone向watch發(fā)送數(shù)據(jù)  // key: 數(shù)據(jù)的key值  // value: 數(shù)據(jù)內(nèi)容  func sendMessageToWatch(key:String,value:Any) {    session?.sendMessage([key : value], replyHandler: { (dict:Dictionary) in    // 這里是發(fā)送數(shù)據(jù)后的操作,比如寫個alert提示發(fā)送成功   // replyHandler是watch側(cè)didReceiveMessage函數(shù)接收到信息后reply回復(fù)過來的內(nèi)容,這里可以編輯自己需要的功能    }, errorHandler: { (Error) in      // 發(fā)送失敗,一般是藍(lán)牙沒開,或手機(jī)開了飛行模式    })  }}

調(diào)用方法:

1、首先在iPhone的AppDelegate的didFinishLaunchingWithOptions函數(shù)中添加代碼

IwatchSessionUtil.shareManager.startSession(),確保WCSession能匹配到watch側(cè)的App

              2、發(fā)送消息:調(diào)用方法IwatchSessionUtil.shareManager.sendMessageToWatch(key: , value: )即可,發(fā)送后接收到watch側(cè)的回復(fù)后的操作,直接在類sendMessage函數(shù)中編輯就行

              3、watch側(cè)sendMessage發(fā)送信息給iPhone,iPhone側(cè)didReceiveMessage接收到信息,一系列操作上面已經(jīng)注釋寫到。

iPhone端的介紹完畢,下面寫watch端的代碼,其實(shí)跟iPhone的沒什么區(qū)別,這里只是為了把這部分內(nèi)容寫完全。

import WatchKitimport WatchConnectivityclass WatchSessionUtil: NSObject,WCSessionDelegate {  // 靜態(tài)單例  static let sharedManager = WatchSessionUtil()  // 初始化  private override init()  {    super.init()  }  // 連接機(jī)制  private let session:WCSession? = WCSession.isSupported() ? WCSession.default() : nil  // 激活機(jī)制  func startSession(){    session?.delegate=self    session?.activate()  }  // 檢測到iPhone的父應(yīng)用  func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error: Error?) {  }  // 接收到iPhone端發(fā)送過來的信息  // message: iPhone端發(fā)送過來的信息  // replyHandler: watch端回復(fù)給iPhone的內(nèi)容  func session(_ session: WCSession, didReceiveMessage message: [String : Any], replyHandler: @escaping ([String : Any]) -> Void) {    // 這里也可以通過通知中心發(fā)送通知給InterfaceController,進(jìn)行頁面操作,至于用什么方法大家隨意。注意事項(xiàng)iPhone的代碼里提到了,一樣的性質(zhì),這里就不寫了。  }  // 向iPhone側(cè)發(fā)送信息  func sendMessage(key:String, value:Any){    session?.sendMessage([key : value], replyHandler: { (reply: [String : Any]) in      // 信息發(fā)送之后,收到iPhone端回復(fù)的操作    }, errorHandler: { (Error) in      // 發(fā)送失敗    })  }}

watch的類添加在Extension的文件夾中,調(diào)用方法:

1、ExtensionDelegate文件的applicationDidFinishLaunching函數(shù)里寫上WatchSessionUtil.sharedManager.startSession()

2、發(fā)送消息:調(diào)用方法IwatchSessionUtil.shareManager.sendMessageToWatch(key: , value: )即可,發(fā)送后接收到iPhone側(cè)的回復(fù)后的操作,直接在類sendMessage函數(shù)中編輯就行

3、iPhone側(cè)sendMessage發(fā)送信息給watch,watch側(cè)didReceiveMessage接收到信息,一系列操作上面已經(jīng)注釋寫到。

以上所述是小編給大家介紹的iPhone與iWatch連接、控制、數(shù)據(jù)傳遞(Swift)的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對VEVB武林網(wǎng)網(wǎng)站的支持!

 

注:相關(guān)教程知識閱讀請移步到swift教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
91精品国产乱码久久久竹菊| 欧美成熟毛茸茸| japan高清日本乱xxxx| 亚洲区小说区图片区qvod| 视频在线观看入口黄最新永久免费国产| 国产一区二区三区四区hd| 一区二区三区久久精品| 91sp网站在线观看入口| 亚洲电影免费观看| 羞羞电影在线观看www| 国产视频青青| 丁香花高清在线观看完整版| 国产情侣在线播放| 亚洲第一黄色网址| 国产精品高潮呻吟久久久| 国产污视频在线观看| 开心婷婷激情| 欧美二区三区的天堂| 放荡的美妇在线播放| a√天堂在线观看| 少妇无码一区二区三区| 在线观看色视频| 可以在线看黄的网站| 亚洲国产欧美一区二区三区不卡| 欧美精品成人一区二区在线观看| 亚洲精品视频在线观看免费视频| 国产福利影院在线观看| 日韩欧美精品在线观看| 国产人成在线视频| 日韩欧美国产亚洲| 日本成人一区二区| 国产一区二区三区成人| 免费看美女隐私的视频| 香蕉久久夜色精品国产使用方法| 热久久这里只有| 在线看国产一区二区| 黄色精品视频网站| 狠狠色狠狠色综合日日91app| 九九热精品视频| 丰满女人性猛交| 久久久久成人精品无码中文字幕| 国产精品久久在线观看| 亚洲国产日日夜夜| 亚洲每日在线| 成人妖精视频yjsp地址| 免费看av软件| 日韩中文字幕有码| 91高清在线观看视频| 日韩高清在线免费观看| 国产一级视频| 成人国产精品免费| 97视频在线看| 91精品国产毛片武则天| 伊人色综合久久久天天蜜桃| 亚洲精品视频免费在线观看| mm1313亚洲国产精品无码试看| 国产亚洲精彩久久| 国产成人avxxxxx在线看| 中文字幕在线观看av| 成人国产精品一区二区免费麻豆| 国产在线精品国自产拍免费| jlzzjlzz亚洲女人| 欧美成人h版在线观看| porn亚洲| 999www人成免费视频| 色婷婷综合久久久久中文字幕| 黄色一级大片在线免费观看| 蜜臀久久99精品久久久无需会员| 欧美free嫩15| 日日夜夜天天操| 亚洲在线视频一区二区| 免费成人在线观看| 久久中文精品视频| 私库av在线播放| 国产日韩欧美亚洲| 国产精品久久久久久av下载红粉| 亚洲综合色视频在线观看| 一个人看的www免费观看视频| 亚洲一级在线观看| 亚洲最大福利视频| 最近2019年日本中文免费字幕| 成人做爰视频www网站小优视频| 久热国产视频| 国产视频一区二区视频| 天堂在线资源网| 欧美一级片免费观看| 欧美久久久久| 狠狠操第一页| 欧美一级淫片免费视频| 欧美人与牲禽动交com| 成人黄色大片在线观看| 可以免费在线观看的av| 蜜桃臀一区二区三区| 四虎影视4hu4虎成人| 国产情侣小视频| 欧美精品国产一区二区| 亚洲1区2区3区4区| 777午夜精品视频在线播放| 91久久偷偷做嫩草影院电| 久久黄色小视频| 国产在线不卡精品| 亚洲丝袜啪啪| 国内精品久久久久影院 日本资源| 欧美另类极品videosbest最新版本| v片在线观看| 天天影视涩香欲综合网| 九色综合国产一区二区三区| 亚洲精品网站在线观看| 亚洲成人18| 青青青草视频在线| 午夜国产一区二区三区| 中文字幕另类日韩欧美亚洲嫩草| 亚洲免费av在线| 性生交大片免费看女人按摩| 欧美女人性生活视频| 久草成人资源| 日韩免费视频线观看| 91精品婷婷国产综合久久竹菊| 国产主播一区二区| 国产黄色大片网站| 久久久精品视频国产| 精品伊人久久大线蕉色首页| 暖暖影院日本高清...免费| 国产乱妇乱子| 日本色综合中文字幕| 亚洲欧美日韩在线综合| 欧美黄色小说| 少妇精品无码一区二区三区| xxxxx性欧美特大| 欧美在线一区二区| 国产 日韩 欧美大片| 亚洲电影一级片| 草视频在线观看| 艳女tv在线观看国产一区| 日韩三级电影视频| 男人舔女人下面高潮视频| 国产亚洲美女久久| 你懂得视频网站| 日韩在线观看免费高清| 香蕉av一区二区三区| 一区二区三区不卡在线| 大黑人xxx| 国产成a人亚洲| 国产精品美女免费视频| 亚洲精品一区三区三区在线观看| 成 人 免费 黄 色| 日韩中文字幕在线免费| 在线播放精品| 91久久奴性调教| 日本亚洲欧洲色α| 中文字幕欧美三区| 丁香视频免费观看| 免费精品99久久国产综合精品应用| 中文字幕精品一区二区三区精品| 国产一区二区三区天码| 国产伦精品一区二区三毛| 亚洲三区四区| 精品国产免费人成在线观看| 777午夜精品电影免费看| 日韩高清成人| 日韩精品视频免费专区在线播放| www.久草| 成人免费看片98欧美| av免费不卡| 色欲av无码一区二区三区| 久久精品日产第一区二区三区乱码| 免费视频一区二区三区在线观看| 影院欧美亚洲| 色噜噜狠狠一区二区三区| 久久国产亚洲精品| 久久久免费毛片| 先锋影音男人| 国产91视觉| 国产叼嘿网站免费观看不用充会员| 精品国自产在线观看| 四虎影院免费在线| 国产区精品视频| 日本 片 成人 在线| 国产精品欧美激情| 精品91自产拍在线观看一区| 日本精品一区二区三区不卡无字幕| 美女露出粉嫩尿囗让男人桶| 久久不射2019中文字幕| 久久av色综合| 91精品国产免费久久久久久| 精品乱色一区二区中文字幕| 亚洲激情成人在线| 日韩一区二区视频在线观看| av无码久久久久久不卡网站| 91午夜视频在线观看| 国产巨乳在线观看| 九色自拍麻豆| 2014亚洲精品| 成人a'v在线播放| 日韩亚洲国产精品| 欧美一级大片在线免费观看| 亚洲免费av一区二区三区| 日本一本草久p| 色欲av无码一区二区人妻| 国产精品亚洲lv粉色| 天天操天天怕| 欧美做受高潮中文字幕| 欧美一区二区三区思思人| 成人性爱视频在线观看| 成人18夜夜网深夜福利网| 亚洲女同精品视频| 国产在线一二| 国产成人精品亚洲线观看| 久久人人97超碰com| 麻豆网址在线观看| 亚洲欧美色婷婷| 久久久国产精彩视频美女艺术照福利| 国产免费一区二区三区香蕉精| 国产夫妻视频| 国产精品一区二区三区av麻| 精品日产卡一卡二卡麻豆| 26uuu成人网| 高清hd写真福利在线播放| 欧美三级电影精品| 亚洲精品一区二区三区中文字幕| 无尽裸体动漫2d在线观看| 国产麻豆9l精品三级站| 精品国产乱码久久久久久浪潮| 欧美又大又粗又长| 久久精品一二区| 你懂得视频在线观看| 91久久国产| 免费av网站在线播放| 欧美中文在线字幕| 五月婷婷之综合激情| 欧美日韩日日夜夜| 国模无码大尺度一区二区三区| 欧美性猛交xxxx免费看手交| 欧美 日韩 国产在线| 欧美香蕉爽爽人人爽| 91久久精品国产91性色69| 欧美大片在线免费观看| 国内精品久久久久久久久蜜桃| 久久久久黄色| 久久人人爽亚洲精品天堂| 日韩美女毛茸茸| 亚洲日本va在线观看| 国产精品自产拍高潮在线观看| 日韩av片专区| 亚洲第一狼人区| 国产女王在线**视频| 久久久久在线| 国产精品臀控福利在线观看| www视频在线观看| 欧美色老女人| 欧洲美女精品免费观看视频| 中文天堂在线一区| 久久久久在线| 男人的天堂av网站| 久热这里只精品99re8久| 欧美黑人性猛交xxx| 成人激情春色网| 免费网站免费进入在线| 黄色一级片免费播放| 久久久久久久久久久久久久免费看| 波兰性xxxxx极品hd| 最近更新的2019中文字幕| 青娱乐在线免费视频| 久久久91视频| 五月天激情国产综合婷婷婷| 福利网在线观看| 传媒av在线| 久久精品无码人妻| 亚洲成人亚洲激情| 欧美国产欧美亚洲国产日韩mv天天看完整| 婷婷综合久久一区二区三区| 日韩簧片在线观看| 亚洲一区二区精品| 欧美性猛片xxxxx免费中国| 一区二区视频在线观看| 在线免费视频a| 一区二区三区四区五区| 青青青免费视频在线2| 日韩码欧中文字| 亚洲一区二区毛片| 欧美日韩在线视频免费| 51xx午夜影福利| 五月综合激情在线| 久久天天久久| 国产老熟妇精品观看| 在线国产一区二区三区| 高清电影在线观看免费| 性xxxfllreexxx少妇| 欧美一区二区综合| 91精品国产综合久久精品麻豆| 成av人免费青青久| 天天看片中文字幕| 亚洲欧美色视频| 波多野结衣中文字幕在线播放| 亚洲精品免费视频| 青春娱乐分类视频精品2动漫| 久久久综合视频| 国产精选一区二区三区| 久久久国产精华| 欧美人与牲动交xxxx| 亚洲国产精品嫩草影院久久| 午夜爱爱毛片xxxx视频免费看| 最近中文字幕免费| 国产大学生粉嫩无套流白浆| www.色婷婷.com| 久久看片网站| 天堂网av2014| 亚洲字幕成人中文在线观看| 91福利国产成人精品播放| 色视频网站在线| 久久久久北条麻妃免费看| 亚洲一区二区三区自拍| 亚洲美女色禁图| 午夜久久资源| 女人高潮特级毛片| 欧美一区永久视频免费观看| 99在线无码精品入口| 99re热视频在线| 精品欧美aⅴ在线网站| 国产精品久久久久久久久久白浆| 久播影院第一理论片| 清纯唯美一区二区三区| 三级av在线免费观看| 日本福利视频网站| 日韩精品一区二区三区丰满| 性欧美亚洲xxxx乳在线观看| 十大免费污污软件| 亚洲国产cao|