最近發現給老爸買的安卓手機,電池出現了點問題,充電只能充到60%,還每次都彈出這煩人的警告。感受這是設計好的,整整好好用了3年,這未免有點太巧了吧?git
算了,直接給老爸換了個新手機,我就把舊的留下了。無奈舊手機太多,能用的舊安卓機就這一個,總以爲不廢物利用一下,非常不爽。github
因而,我想起手機有震動功能,要是作一個震動App🌵,或許能變廢爲寶?😏spa
好,說幹就幹,因而我開始了第一次安卓App的開發之旅。設計
首先是要到官網去下載 Android Studio,這步須要必定的上網技能,建議把技能點數加滿。3d
花了大約1分鐘的時間,終於把 Android Studio 下載下來了,隨後安裝過程也至關簡單,裝完後,選了我喜歡的淺色主題,應該就能夠用了。調試
實際開發前,理論上還須要作一些設計工做,但這實在不是個人強項啊!界面設計就算了吧,App裏就一個開關,打開就震動,關掉就停。 code
不過圖標好歹仍是要有一個的,可是找了全網,沒有太合適的,只能在 Material Design 官網找一個圖標的設計模板,本身去作一個。 視頻
無奈沒有任何基礎,用 Ai 硬擼了兩個小時,終於作出了一個稍微滿意的圖標,固然,是以藍色爲主。 xml
接下來就能夠進行開發了,打開安裝好的 Android Studio,建立一個新項目,隨便選了一個 Empty Activity。blog
而後要進行一些配置,名字仍是要好認的、比較洋氣的 Vibrator,包名就隨便起一個吧。語言嘛,糾結了一下,最後選擇了沒用過的 Kotlin,嚐嚐鮮。SDK 就定爲 API 21, Android 5.0 的吧,如今用 4.x 的應該很少了,5.0 的 API 也夠用。
而後它就給我自動建立了一些文件,剛開始 Gradle 會作一些準備工做,下載依賴花了一些時間,這步也須要強大的上網技能。
接上手機,開啓 USB 調試模式。通常 「開發人員選項」 這頁,是經過屢次點擊系統版本號激活的,感受有點像遊戲祕籍啊,這技巧仍是之前刷機積累下來的經驗。
打開了USB調試模式並鏈接上手機後,Android Studio 就多出來一個運行目標了。
我先點個運行試試,經過手機上各類容許操做,個人App裝上去了,雖然仍是空白,圖標也不太好看,但起碼能運行了起來。
接下來開始硬擼代碼,先在頁面上,把那個 Hello World 換成個人 Switch,暫且就叫 switchButton 吧,把文本去掉,弄上跟 Hello World 同樣的上下左右約束。一切都是可視化的,鼠標操做,找回了一點之前 Netbeans 編輯 Swing 界面的感受,如今還有了深淺兩種模式的預覽。
接下來該考慮的就是怎樣在代碼裏獲取到這個 Switch,網上查了一下,Kotlin 裏一句 findViewById<類型>(R.id.名稱)
便可,代碼提示還能自動補全按鈕名稱。緊跟着寫一段按鈕狀態變化的事件監聽,具體內容先空着,等會用到。
最後就是實現具體的手機震動了,老規矩,網上搜一搜,搜到了一個 StackOverflow 的回答,應該挺靠譜。簡單來講就是在 AndroidManifest.xml 加上權限聲明,而後經過 getSystemService
獲取震動服務,最後,震它!
StackOverflow 上的那個例子雖然是 Java,改爲 Kotlin 應該也不難,嘗試了一下,還真和 AnctionScript、Swift 有點像,類型後置、as 關鍵字。最後代碼被我寫成了這個樣子,雖然說 vibrate 這個方法 Android Studio 提示我說已經被廢棄了,但先這麼用着吧,應該能夠用吧?
這期間 Android Studio 有個體貼的小細節,都不用我去手動改權限聲明的配置文件,鼠標點一下他就給我加上了。
噢,最後別忘了個人App圖標。
在 AndroidManifest.xml 裏配置了一下,行號後面都把圖標給顯示出來了?😏
運行了一下,完美。我還在想,應該怎麼能展現震動呢?放了個小東西在屏幕上,或許大家能感覺到吧。
簡單的震動App這就完成了,或許之後還能加入各類風格的震動:纏綿、激情、點陣式……
可是這手機震動也太弱了,最後,我想到了身邊的 PS4 手柄,這形狀也比手機要好的多……! 🙈
源碼和 apk 我都放到 github 上了,感興趣的同窗,點擊領取,別忘了點個 follow 哦!