CFBundleAlternateIcons를 사용하여 내 앱 아이콘을 변경하려고했지만 아무 일도 일어나지 않습니다. 실제로 Flutter SDK 용 플러그인을 사용하고 있습니다.
flutter_dynamic_icon
, 플러그인을 사용하여 아이콘을 변경하면 아무 문제가없는 것처럼 '앱 아이콘 변경 성공'이라고 표시됩니다.
몇 가지 문제 해결을 수행 한 후 미리보기에서 아이콘을 다시 저장하여 PNG 파일인지 확인하고 결과 변경없이 해당 알파 채널을 제거해 보았습니다.
내가 도대체 뭘 잘못하고있는 겁니까? Info.plist 문제입니까? 내 아이콘이 잘못 저장 되었습니까? 아이콘 변경을 잘못 요청하고 있습니까?
다음은 dart lang에서 아이콘을 변경하는 방법입니다.
try {
if (await FlutterDynamicIcon.supportsAlternateIcons) {
await FlutterDynamicIcon.setAlternateIconName("dark");
print("App icon change successful");
return;
}
} on PlatformException {} catch (e) {
print("icon couldn't be changed");
}
이것이 내가 보는 것입니다. 클릭하여 변경해도 상관 없습니다.
dark
아이콘 또는
light
상.
내 Info.plist/파일 구조는 다음과 같습니다.
<key>CFBundleIcons</key>
<dict>
<key>CFBundleAlternateIcons</key>
<dict>
<key>light</key>
<dict>
<key>UIPrerenderedIcon</key>
<string>NO</string>
<key>CFBundleIconFiles</key>
<array>
<string>light</string>
</array>
</dict>
<key>dark</key>
<dict>
<key>UIPrerenderedIcon</key>
<string>NO</string>
<key>CFBundleIconFiles</key>
<array>
<string>dark</string>
</array>
</dict>
</dict>
<key>CFBundlePrimaryIcon</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>dark</string>
</array>
<key>UIPrerenderedIcon</key>
<false/>
</dict>
</dict>
- 답변 # 1
편집 : 이제는 대체 아이콘을 별도의 폴더에 배치하도록 조언하는 온라인 가이드에도 불구하고 내 문제를 알아 냈습니다.
<시간 />Runner
예배 규칙서.나는 정의하여 이것을 고쳤다.
CFBundleIconFiles
에Info.plist
다음과 같이. 미묘한 변화이지만 그 과정을 만들거나 깨뜨릴 수 있습니다.전에:
후: