本站無留言功能,有問題或發現錯誤,歡迎到twitter戳我,謝謝

只放拖鞋的鞋櫃

在 Android 的 app moudle 裡面,嘗試把一些獨立的類別搬到新增加的一個 library module 的時候,遇到了類似這樣的錯誤

1
> The consumer was configured to find an API of a component, as well as attribute 'com.android.build.api.attributes.BuildTypeAttr' with value 'debug', attribute 'org.jetbrains.kotlin.platform.type' with value 'androidJvm'. However we cannot choose between the following variants of project :common-libs:
閱讀全文 >>

最近在改一個 open source 記帳 App,其實也只是隨便亂改一通,讓它的 UI 看得順眼且堪用而已。修改的過程中需要查詢 App 裡面用到的 SQLite db,所以搜尋到一個 SQLScout 的 IDEA IDE Plugin,覺得滿好用,順手紀錄一下用法。

閱讀全文 >>

之前聽到 Tim 說 PTT 的現有的登入方式不改的話很沒救,我想到兩階段驗證的方法,所以好奇研究了一下該怎麼做。實際上看了才知道比想像中簡單,PTT 有意願的話,實作難度真的不高。

Google Authenticator (後面簡稱 GA)是常見的兩階段驗證(2FA)會用到的程式,好比 GitHub 或是 Facebook 的兩階段驗證都能用這隻程式取得驗證碼。如果你的網站服務想要利用 2FA 增加安全性,利用 GA 可以算是非常便宜的方案 - 不需要自己寫 client App,只要自己的網站加上一些簡單的流程與演算法就能取得 2FA 的優點。

本文簡介如何實作,並且附上驗證的程式。

閱讀全文 >>

Coroutine 算是 Kotlin 裡面相當引人注目的功能,簡單來說就是可以幫助處理非同步需求的機制。

舉例來說,我們常常看到這樣的需求:按下一個 Fetch 的按鈕,去抓網路上的某個列表來更新手機內的資料,同時又不希望 UI thread 被卡住。在 Android 上面經常就是祭出 AsyncTask,或是用 Rx 的方式來處理。利用 Coroutine,這些功能都會變得比較簡單實作

閱讀全文 >>

昆特牌是 Witcher 3 裡面的一個小遊戲。雖然非常喜歡 Witcher 3,但我剛開始玩的時候覺得要學很多東西太複雜,所以就跳過了這個部份的教學,任何昆特牌相關的東西都不玩。後來遊戲上手了,回頭玩昆特牌開始上癮,卻因為跳過一些任務無法完整收集昆特牌,只好在二周目重來一次。

我的昆特牌癮又發作啦~

拿著雙劍周遊各地的傳奇白狼傑洛特,除了幫助一些可憐的底層人民,偶爾還會拿著強力的牌組欺壓市井小民。我覺得這樣的設定很有趣,也是我特別喜歡在遊戲裡頭找 NPC 打牌的原因。昆特牌的規則很簡單,只是遊戲裡面的說明不好懂,我試著用我覺得清晰的方式再解說一遍。

閱讀全文 >>

在日本久居的台灣人,可以直接更換日本駕照。先提醒一下,我們台灣人的駕駛習慣直接搬到日本不大好,還是多忍住踩油門的衝動,不要哪天日本取消了這個美意,是台灣人的損失。

前一陣子換了日本駕照,在這邊紀錄一下過程。

閱讀全文 >>

這兩天有白帽 Hacker 公佈了從資料庫撈出來的普通民眾對話紀錄。內容是熱愛資料的中國政府如何傾聽人民的聲音。雖然我常跟朋友說監控在技術上可以做到多麽細膩,總覺得自己會被當成瞎操心。又或著,當我臉上露出些許對隱私的擔憂時,又可能被當成反烏托邦電影看太多的阿宅。

剛好趁著這件事情,隨意說一下我自己長久以來的想法。

閱讀全文 >>
Next →