2015年2月11日 星期三

Android Studio multiple sourcesets problem

解決了一個困擾我三個月的事...

gradle 可以把 src code 分成不同的目錄
然後可以用 build variants 分別去要不要 include 這個東西

android.sourceSets.main {}  
android.sourceSets.XXX {}

因為我們現在開發只會用到 XXX
main 也被污染了, 一定要用到 XXX 裡的 code

每次 import project 時,我的 Mac 總是會選到 XXX 的 build variants
所以我的 Android Studio 可以 build 出來
用指令 gradle build 也是正常...

可是其它人的 Windows 總是會選到 main 的那個 build variants
所以他們總是 build 不過 (不過我重灌後的 Windows 上竟然可以!?)
只能改 gradle 把 XXX 裡的目錄加到 main 裡

可是這樣 Project view 時沒辦法把 src set 切開看,很醜

... 反正結論就是 UI 上把 build variant 選成 XXXDebug 就好了
害我為了要看不同 src set local 的 gradle 檔要跟別人不一樣
(只有我用 Mac)

今天為啥會解決這件事呢...
因為我的 Android Studio project 突然爛了
重 import source set 竟然跑回 main 了
而且怎弄都是這樣
才又把 windows 上的 iml 檔拿來 diff
靈機一動想到這回事
原來只是我運氣好(!?) ... -___-

這鳥東西竟然困擾我三個月
幹!

太蠢了,寫起來記錄