Middle
Mühitə görə tətbiq ikonunu necə dəyişdirmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
Ətraf mühitə (məsələn, Dev, Staging, Prod) görə aşağıdakı üsullardan istifadə etmək olar:
- Hər bir mühit üçün ayrıca məqsədlər (Targets) yaratmaq.
- Konfiqurasiya fayllarından (
.xcconfig) istifadə etmək. Info.plist-ə xüsusi açarların əlavə edilməsi.
Proses:
- Hər bir mühit üçün əsas məqsədin nüsxələrini yaradın.
- Hər yeni məqsədin tənzimləmələrində
Info.plist File-ı dəyişdirin və yaCFBundleIconFilesaçarını əlavə edin və ikon faylının adını göstərin. - Hər bir mühit üçün
.xcconfigfayllarında müvafiqInfo.plist-ə işarə edən dəyişəni təyin edin. - Əsas məqsədin quruluş parametrlərində
Info.plist File-ı${INFO_PLIST_FILE}-ə təyin edin (buradaINFO_PLIST_FILE.xcconfig`-dən dəyişəndir).
Dev üçün .xcconfig nümunəsi:
// DEV.xcconfig
INFO_PLIST_FILE = Info_Dev.plist
Info_Dev.plist nümunəsi:
<!-- Info_Dev.plist -->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
...
<key>CFBundleIcons</key>
<dict>
<key>CFBundlePrimaryIcon</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>AppIconDev</string> // Dev üçün ikon asset adı
</array>
</dict>
</dict>
...
</dict>
</plist>
Alternativ olaraq, məqsədləri çoxaltmadan, quruluş zamanı Info.plist-i dəyişən skriptlər istifadə etmək mümkündür. Ancaq, ayrı məqsədlərlə işləmək daha aydın və dəstəklənir.
İkon assetlərinin idarə olunması üçün hər məqsəd və ya konfiqurasiya üçün ayrıca Asset Catalogs istifadə edilə bilər və ya ikon dəstləri unikal adlar (AppIconDev, AppIconStaging, AppIconProd) ilə adlandırıla bilər və Info.plist-də müvafiq adı göstərə bilərsiniz.