Saya memiliki dua tipe build yang disetel dalam file gradle saya: debug
dan release
. Saya ingin dapat menyetel ikon aplikasi yang berbeda untuk debug
tipe build. Apakah ada cara untuk ini hanya melalui tipe build, tanpa membahas rasa produk? build.gradle ada di bawah.
apply plugin: 'android'
//...
android {
compileSdkVersion 19
buildToolsVersion "19.0.3"
defaultConfig {
minSdkVersion 14
targetSdkVersion 19
versionCode 30
versionName "2.0"
}
buildTypes {
debug {
packageNameSuffix '.debug'
versionNameSuffix '-SNAPSHOT'
}
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
Jawaban:
Menemukannya. Yang perlu Anda lakukan adalah membuat folder src terpisah yang disebut
debug
berisi ikon berbeda. Misalnya, jika tata letak proyek Anda adalah sebagai berikut, dan ikon peluncur Anda disebutic_launcher.png
:Kemudian untuk menambahkan ikon terpisah untuk jenis build debug, Anda menambahkan:
Kemudian, saat Anda membangun di bawah tipe build debug, itu akan menggunakan ic_launcher yang ada di folder debug.
sumber
Cara yang lebih baik: Jawaban InsanityOnABun
AndroidManifest.xml
build.gradle
url Github: Buat Aplikasi multi-versi dengan Gradle
sumber
manifestPlaceholders
satu - satunya di fase eksekusi atau di belakang danif
pernyataan. Saya melakukan ini karena saya memiliki 1 jenis build non-produksi yang dapat memiliki dua ikon berbeda (dan saya tidak ingin memiliki seluruh jenis build dengan hanya 1 perbedaan dengan yang lain)Anda juga dapat menentukan ikon di file AndroidManifest.xml parsial ragam produk:
Ini akan menimpa ikon yang Anda tentukan di AndroidManifest.xml asli
sumber
ic_launcher.png
, harus tahu mana yang hanya dengan lokasinya atau benar-benar membukanya (tidak begitu bagus). Saya tidak tahu perpanjangan semacam ini untuk file manifes bahkan mungkin, belum melihatnya disebutkan di tempat lain di SO atau sebelumnya di sini. Elegan pastiUntuk mendapatkan ikon yang berbeda sambil menggunakan rasa yang berbeda dengan berbagai dimensi, seperti:
Ini dapat dicapai sebagai:
Pertama, letakkan sumber daya debug di folder terpisah, seperti:
Kedua, meletakkan kunci dengan beberapa dimensi ragam adalah bahwa nama kumpulan sumber harus berisi semua kemungkinan kombinasi ragam, meskipun beberapa dari dimensi ini tidak memengaruhi ikon.
Hanya untuk memperjelas, berikut ini tidak akan berfungsi saat beberapa dimensi digunakan:
sumber
Solusi langkah demi langkah, termasuk mengganti mipmap-anydpi-v26 dan menyimpan file untuk semua dimensi:
Pertama, tentukan di build.gradle (Module: app) jenis build Anda di android -> buildTypes -> debug, internal, dll.
Pada hierarki proyek, di bawah Android, klik kanan pada app -> New -> Image Asset -> di Path pilih ikon Anda -> perubahan lain pada Background Layer dan Legacy -> Next -> di Res Directory pilih jenis build yang Anda inginkan ( debug, internal, main, dll) -> Selesai
Dengan begitu ikon akan menggantikan setiap ikon lama yang Anda miliki.
sumber