Just My Life & My Work

Posts tagged ‘ibeacon’

[iOS] iBeacon偵測多個Region

過去我所想的點子,只要偵測到iBeacon就進行對應事件。這次幫朋友阿強實現點子,發現同一UUID的iBeacon,只會觸發一次didEnterdidExit,用圖示來說明比較清楚~

可以看到兩顆iBeacon重疊偵測範圍,只要偵測到其中一顆,就只會觸發一次didEnterdidExit。這與Android測試得到的結果不同,iOS已經幫我們處理好,再把處理過的結果回傳給開發者使用,這是限制也是方便~

Android會觸發兩次(每顆iBeacon各一次),可能也叫做didEnterdidExit。阿強測試比較過後,發現iOS偵測速度比Android慢,這其實是因為iOS SDK會有數秒鐘偵測週邊iBeacon並處理。

(繼續閱讀…)

[iOS] iBeacon背景偵測流程

半年前在幫朋友阿強研究iBeacon,發現iOS在這方面比Android限制還多!首先來看iBeacon背景偵測流程,是跟前景偵測有何不一樣?

App在前景時,會陸續觸發三支APIdidEnterRegion、didRangeBeacons、didExitRegion,如上圖從時間點A到時間點B。

(繼續閱讀…)

[iOS] BLE某些概念的解釋

已經持續與藍芽奮戰近一年,來回顧一下BLE某些概念的解釋

首先總結CBServiceCBCharacteristic關係如圖,這樣才好理解其角色負責的任務!

bluetooth Services Characteristics

(繼續閱讀…)

[iOS] 拆掉和包裝套件 (Unarchive and Archive Library)

又到了要套用第三方套件的時候,一般而言都是找最「受歡迎」的GitHub開源套件,因為做得好大家有目共睹,還會給作者一顆星!不過在台灣的市場,要套Beacon SDK就得找台灣廠商,去年旅遊App套一個廠商的Beacon SDK,搞了一陣子的背景偵測有問題,現在購物App也要來套另一個廠商的Beacon SDK,這個廠商製作各種「可串接」套件都有些問題,這次當然也少不了啦XD~

回想三年多前iBeacon被Apple提出來至今,台灣市場總算熱絡了起來,可以回顧一下我先前撰寫的初探iBeacon

(繼續閱讀…)

[APP] 2017快樂行李

還記得2016年我去泰國之前,自行開發「快樂行李APP」,配合放在行李的Spot Beacon,只要行李離開或進入偵測範圍之內,我就能收到通知,於是這八天泰國之旅讓我非常放心:)

APP 2017 快樂行李00009

這次我多帶一支iPhone 6s+,因為我的iPhone6被我操了兩年,偵測Beacon有點秀逗XD~

(繼續閱讀…)

[iOS] 設定藍芽 (Setting Bluetooth)

有時候我們需要開啟藍芽來連結裝置,像是BeaconApple Watch小米手環。那麼如果使用者沒有打開權限怎麼辦?請他/她到設定藍芽 (Setting Bluetooth)去打開囉~

iOS 設定藍芽 (Setting Bluetooth).PNG

目前iOS SDK尚未有API可以直接改藍芽設定,要是未來Apple有開放的話請再跟我說唷!不過我想應該要等到天荒地老,非常重視用戶隱私的Apple,是不會輕易讓開發者悄悄開啟Bluetooth來進行任何動作。

剛好我們偉大的技術長有無私分享:

/**
 Theme: iOS 10 Setting Bluetooth
 IDE: Xcode 8
 Language: Objective C
 Date: 106/03/07
 Author: HappyMan
 Blog: https://cg2010studio.wordpress.com/
 */
-(void)openBLESetting
{
    NSURL *bluetoothURLOS8 = [NSURL URLWithString:@"prefs:root=General&path=Bluetooth"];
    NSURL *bluetoothURLOS9 = [NSURL URLWithString:@"prefs:root=Bluetooth"];
    NSURL *bluetoothURLOS10 = [NSURL URLWithString:@"App-Prefs:root=Bluetooth"];
    if ([[[UIDevice currentDevice] systemVersion] intValue] >= 10) {
        [[UIApplication sharedApplication] openURL:bluetoothURLOS10];
    }
    else if ([[[UIDevice currentDevice] systemVersion] intValue] >= 9) {
        [[UIApplication sharedApplication] openURL:bluetoothURLOS9];
    }
    else {
        [[UIApplication sharedApplication] openURL:bluetoothURLOS8];
    }
}

這種沒啥邏輯純粹定義的玩意兒,抄,就對了XD~

參考:opening iOS BLE setting from app

[iOS] iBeacon 測試

睽違一年半之久,總算要來開發iBeacon,看來越來越多應用持續出現中!因為最近要出國,所以想到可以將iBeacon放進行李廂,進入範圍或離開範圍時,手機會跳出提示,如此就不用眼睛一直盯著行李箱:)~

iOS iBeacon 測試.jpg

一年半前參加「Retail Battle Hackathon 創新零售駭客松活動」,KKLabs給參賽者每人一顆Spot Beacon當作禮物,直到最近我才真正拿出來用XD~

可以先參考之前的文章:初探 IBEACON 技術

(繼續閱讀…)

標籤雲

%d 位部落客按了讚: