March 14th, 2015
##雜七雜八感言:
最近搞完一些Golang部分,有開始跑各個平台的cross platform的building solution.果然C++跨平台一點都不簡單,真是80%設定環境,20%寫跨平台的code….
##筆記:
[Golang] 關於Golang 有趣的網頁與小工具
- GophoerConIndia
- 許多Go 的大老都參加了,挺值得一看.
- Go on Mobile - David Crawshaw - London Go Gathering 2015
[Apple] 關於 Apple 03/09 發表會
這個禮拜讓蘋果迷最興奮的就是三月的發表會. 裡面有包括了ResearchKit,MacBook更新跟Apple Watch. 兩個跟硬體有關的就沒啥好評論….
ResearchKit 與 HealthKit
根據已經放出的消息,ResearchKit透過兩項(目前已知是手指點擊與聲音)的手機功能,可以提供一些簡單的診斷.並且把這些資料提供給醫療研究機關. 等到詳細資料出來應該會更仔細地研究一下,是否一般廠商有介入的空間.
[Android] 在Android Stuido 1.1 上面使用
自從Google 推出 Android Studio 正式版之後,自然而然也開始把Eclipse的力道放輕. 於是要弄新的SDK也變成是一個工程.
所以現在要開發新的cross platform module,所以也必須要在 Android Studio + NDK + JNI 去執行跨平台的 C++ module.
根據最新版的Android Studio 1.1 如果依照著一般的方式來部署NDK會發現以下的問題:
WARNING [Project: :app] Current NDK support is deprecated. Alternative will be provided in the future.
找了一堆論壇,其實並沒有一個有系統地整理,直到看到這一篇文章,以下把方法整理一下:
- 安裝 Android Studio 1.1
- 下載並且安裝 Android NDK r10d
- 先到一開始的畫面[Configure]->[settings]->[External Tools] 設定Gradle
- 設定javah
- 新增一個NDK Build 類別為NDK
- Program:C:\ndk\ndk-build.cmd
- Parameters:NDK_PROJECT_PATH=$ModuleFileDir$/build/intermediates/ndk NDK_LIBS_OUT=$ModuleFileDir$/src/main/jniLibs NDK_APPLICATION_MK=$ModuleFileDir$/src/main/jni/Application.mk APP_BUILD_SCRIPT=$ModuleFileDir$/src/main/jni/Android.mk V=1
- Working directory:$SourcepathEntry$
- 這樣設定好就可以
- 複製ndk-r10d 目錄下的sample\hello-jni來使用
- 會出現一個[c]在上面按下 右鍵跑 “NDK Build”,來製造出.so
-
[App]->[build.gradle]新增:
sourceSets.main.jni.srcDirs = []
- 然後sync gradle 這時候會發現[C]不見了,就可以跑App
之後要切換就是把上面的那段 comment掉才能build NDK