2015年2月15日 星期日

把藍芽連線功能用 AP 的方式檢驗時

本篇實際上是抱怨文,不喜請勿入


加一張 LoveLive 來防一下






























AP 做什麼?
AP 就是應用程式(Application),一般公司內部簡稱AP,原本 AP 就和大家想的一樣,刻刻 UI,做豐富點的運算,畫面跳過來跳過去,跟 server 溝通
AP 基本包裝系統上有的功能,使用系統上封裝好的函式,達到需求
當然,系統上沒有封裝好的函式時,就是要工程師的努力,但也有做不到的限制

舉例來說,一個普通的 Android AP 要把 Home 鍵鎖起來,這是只有系統 AP 可以做的事情,一般的 AP 是不行的,但還是會有一些人天馬行空的提這些需求

藍芽連線功能在 AP 中使用
現在多數的系統都有提供許多藍芽連線功能的介面讓 AP 來使用,也包括一大堆的錯誤通知等等,AP 使用時就是呼叫幾個基本的方法,然後接收來自系統的回應
當然牽涉到連線的事情,就不能預期永遠是成功的,就像網路有時連不上一樣,你很難確定問題發生在那一個點上面

從 AP 的角度要連線功能都不能失敗?
這根一般 AP 做的事情不太一樣,一般 AP 呼叫的方法失敗,大多有因可循,但連線功能牽涉到太底層的事情,你的手機,你的對象,中間的干擾等等,每一樣都是無關 AP 的因素,要 AP 保證都不能失敗,根本不可能

為什麼我會接這種鳥缺?
一個沒有好好規劃專案的公司,事情總是來的突然,突然間就要把別單位的半成品交給原本只負責 AP 的敝部門,而且出貨時間還定好了
然後人力又是那麼幾個,考量到其他同事對稍微底層的封包處理經驗都沒有,我還算是有 TCP 處理經驗的,所以就自告奮勇接下來
然後案子從一開始選用 BT ,用人家寫好的半成品,後來又改成 BLE,全部重寫 ,時間也一延再延,最後又改回 BT ,但對上面的人而言,都是寫好的東西,所以案子的時間也是一直沒有彈性,而且每個需要人員提早學習的技術,從開始前2個月,1 個月,到開始了都還沒有人能開始學習,進行下去了,才急急忙忙調了個人要來接手,而我也一直不能安心休假
這種規劃,還敢多做要求,你找個實驗室來做都不一定有人敢跟你保證連線一定不會失敗,可惜我不愛吃香蕉,不然就回那句了

以上,再寫下去可能會想摔鍵盤了

1 回應:

Unknown 提到...

你先摔了鍵盤 再繼續寫下去吧
我們都想看更多

 
TEMPLATE HACKS AND TWEAKS BY [ METAMUSE ] BLACKCAT 1.1