iOS 藍芽的簡單使用

來源:互聯網
上載者:User

標籤:

最近簡單的瞭解了一下藍芽的使用,大致的步驟也就是串連裝置,發送資料,接收資料
1、首先匯入標頭檔

#import <GameKit/GameKit.h>

2、設定會話屬性,傳輸資料需要的會話層

// 保留會話@property (weak, nonatomic) GKSession *session;

3、遵守代理

UINavigationControllerDelegate,UIImagePickerControllerDelegate,GKPeerPickerControllerDelegate

4、首先串連裝置

 // 1. 建立尋找裝置的控制器    GKPeerPickerController *ppc = [[GKPeerPickerController alloc] init];    // 2. 設定代理    ppc.delegate = self;    // 3. 彈出控制器    [ppc show];

5、實現代理方法,做串連成功後的操作

// 裝置串連成功後會調用該方法 peerID:裝置節點ID  session:會話對象   一旦建立串連之後就會建立會話,然後互相傳遞資料- (void)peerPickerController:(GKPeerPickerController *)picker didConnectPeer:(NSString *)peerID toSession:(GKSession *)session{    NSLog(@"%@",peerID);    // 設定資料接收著    [self.session setDataReceiveHandler:self withContext:nil];    self.session = session;    [picker dismiss]; // 退出尋找裝置的控制器}

6、發送資料

// 發送圖片- (IBAction)sendImage:(id)sender {    if (self.imageView.image) {        return;    }    // 發送到指定裝置//    [self.session sendData:<#(NSData *)#> toPeers:<#(NSArray *)#> withDataMode:<#(GKSendDataMode)#> error:<#(NSError *__autoreleasing *)#>]    NSData *data = UIImagePNGRepresentation(self.imageView.image);    // 發送到所以裝置    // GKSendDataReliable   可靠傳輸(資料一定會被傳達,網路有變化時,會重新串連,再次傳輸) ->TCP    // GKSendDataUnreliable 不可靠傳輸(資料只會傳輸一次,沒有傳到就算了)->UDP    [self.session sendDataToAllPeers:data withDataMode:GKSendDataReliable error:nil];}

7、接收資料

// 接受資料// data: 接收到的資料// peer: 從哪一個節點接收到的資料// session: 會話// context:- (void)receiveData:(NSData *)data fromPeer:(NSString *)peer inSession:(GKSession *)session context:(void *)context{    UIImage *recImage = [UIImage imageWithData:data];    self.imageView.image = recImage;    UIImageWriteToSavedPhotosAlbum(recImage, nil, nil, nil); // 儲存圖片}

8、需要注意的是,GameKit藍芽只能用於iOS裝置之間的串連,只能用於同一個應用程式之間的串連,其實有關藍芽方面的知識比較多,操作起來還是挺複雜的,這裡唯寫了很簡單的一些操作。

iOS 藍芽的簡單使用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.