2019年11月30日 星期六

[Android] Android Studio 的 product flavor soruce set 目錄無法執行新增 package 操作

markdown 在 Android Studio 中可以新增 product flavor 來定義不同的 Build Variant,例如我新增的 ad 跟 noAd 兩個 product flavor,就會有四個 Build Variant adDebug、adRelease、noAdDebug 與 noAdRelease。 接著照 [Android 官網的文件](https://developer.android.com/studio/build/build-variants#sourcesets)操作就可以新增 source set,但是我接著要在 source set 中新增 package 的時候,發現 source set 不是 java 目錄,如下圖,正常 java 目錄是藍色,灰色是一般目錄。 ![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi83T3qIARHbjH0N3hS_vqNVMm1te_biOn3jfynUoP8twTJSRSzOV2QrtEOFD_drX8QS3SdIcl0tVVufOzcO6yWd7Ll_Z_aWa2cVWLJ6XokzIBsEoQDINgVYDW1rbE_7rvgKYQLmYmB-cva/s1600/Image+1.png) 但是另一個 Build Variant noAd 卻又正常,接著就 clean build,重開 Android Studio 試了各種方法,都沒用,最後才發現,我的 Active Build Variant 是 noAdDebug,當切到 adDebug 後,ad 下面的 java 目錄就變成藍色,可以執行新增 package 操作了。 同理,在左側 Project view 切換到 Android 的時候,也只有 Active Build Variant 的目錄才會顯示出來。 ![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjtiwvF7j6PiElrz86_ymy7g3WlVwPYZtfDhz10hOiTSDY_uKgmI_22QisMVWddYZqd2O32CcaWfnIKRF5s0En1bpz7QqFtFYz1AzIgRAI0AlssOOR2oXcGsVuwilZz7-coadnLobkqcfzG/s320/Image+2.png) 為了這個蠢問題浪費了幾個小時,其實不太懂這個設計的用意是為什麼阿。

沒有留言:

張貼留言