为什么 Phonegap 会替换我的图标?
Why does Phonegap replace my icon?
我在 SO 上遵循了 Phonegap 图标问题的教程和解决方案。从我正在阅读的内容来看,如果我在本地构建,我需要用我自己的替换 platforms/android/res/drawable 中的 PG 图标(drawable 中有 3 个 diff 文件夹包含该图标)。这就是我正在做的。这就是它变得奇怪的地方。我将这些图标替换为我自己的(不同的图标,相同的名称),然后转到终端并执行 phonegap build android
,然后如果我导航回可绘制文件夹,我会看到我的新图标再次被替换为默认 Phonegap 机器人图标。我错过了什么?
是的,问题是每次您从 PhoneGap CLI 执行 build
或 run
时都会重建 platform
文件夹,因此您不想替换它们有手动。相反,您应该将它们保存在项目根目录中某处的文件夹中(随便命名),然后在给定平台的 config.xml
文件中引用它们的路径。当您执行 build
、run
等操作时,PhoneGap CLI 会自动将它们复制到平台级别。对于 Android,它会将它们复制到 platforms/android/res/drawable*
文件夹特别基于它们的密度(ldpi
等)。您只需要确保在 config.xml 中指定正确的 density
属性(或 iOS 的 width/height)以匹配根项目中的正确路径成立。
例如,在 config.xml 中,您可能有以下 Android 图标:
<platform name="android">
<icon density="ldpi" src="resources/android/ldpi-icon.png" />
<icon density="mdpi" src="resources/android/mdpi-icon.png" />
<icon density="hdpi" src="resources/android/hdpi-icon.png" />
<icon density="xhdpi" src="resources/android/xhdpi-icon.png" />
<icon density="xxhdpi" src="resources/android/xxhdpi-icon.png" />
<icon density="xxxhdpi" src="resources/android/xxxhdpi-icon.png" />
</platform>
其中 resources
位于项目的根目录中,与 www
文件夹处于同一级别(即:myProj/resources
)。
您可以找到关于此的更多详细信息 in the Cordova docs 以了解有关配置图标的更多详细信息。
如果由于某种原因它不起作用,请检查以确保您拥有 PhoneGap CLI 的最新版本或更新到最新版本。
~冬青
您必须在 www
根文件夹内的 config.xml
文件中添加图标配置。尝试添加如下内容:
<platform name="android">
<icon src="res/android/ldpi.png" density="ldpi" />
<icon src="res/android/mdpi.png" density="mdpi" />
<icon src="res/android/hdpi.png" density="hdpi" />
<icon src="res/android/xhdpi.png" density="xhdpi" />
</platform>
创建这些包含您的图标的文件夹并执行 phonegap build android
。
答案实际上是在根级别(与 www 目录同一级别)的 config.xml
中使用此代码块:
<icon src="www/res/icon/android/ldpi.png" platform="android" density="ldpi" />
<icon src="www/res/icon/android/mdpi.png" platform="android" density="mdpi" />
<icon src="www/res/icon/android/hdpi.png" platform="android" density="hdpi" />
<icon src="www/res/icon/android/xhdpi.png" platform="android" density="xhdpi" />
<icon src="www/res/icon/android/xxhdpi.png" platform="android" density="xxhdpi" />
<icon src="www/res/icon/android/xxxhdpi.png" platform="android" density="xxxhdpi"/>
显然,确保这些路径通向您的图标。
我在 SO 上遵循了 Phonegap 图标问题的教程和解决方案。从我正在阅读的内容来看,如果我在本地构建,我需要用我自己的替换 platforms/android/res/drawable 中的 PG 图标(drawable 中有 3 个 diff 文件夹包含该图标)。这就是我正在做的。这就是它变得奇怪的地方。我将这些图标替换为我自己的(不同的图标,相同的名称),然后转到终端并执行 phonegap build android
,然后如果我导航回可绘制文件夹,我会看到我的新图标再次被替换为默认 Phonegap 机器人图标。我错过了什么?
是的,问题是每次您从 PhoneGap CLI 执行 build
或 run
时都会重建 platform
文件夹,因此您不想替换它们有手动。相反,您应该将它们保存在项目根目录中某处的文件夹中(随便命名),然后在给定平台的 config.xml
文件中引用它们的路径。当您执行 build
、run
等操作时,PhoneGap CLI 会自动将它们复制到平台级别。对于 Android,它会将它们复制到 platforms/android/res/drawable*
文件夹特别基于它们的密度(ldpi
等)。您只需要确保在 config.xml 中指定正确的 density
属性(或 iOS 的 width/height)以匹配根项目中的正确路径成立。
例如,在 config.xml 中,您可能有以下 Android 图标:
<platform name="android">
<icon density="ldpi" src="resources/android/ldpi-icon.png" />
<icon density="mdpi" src="resources/android/mdpi-icon.png" />
<icon density="hdpi" src="resources/android/hdpi-icon.png" />
<icon density="xhdpi" src="resources/android/xhdpi-icon.png" />
<icon density="xxhdpi" src="resources/android/xxhdpi-icon.png" />
<icon density="xxxhdpi" src="resources/android/xxxhdpi-icon.png" />
</platform>
其中 resources
位于项目的根目录中,与 www
文件夹处于同一级别(即:myProj/resources
)。
您可以找到关于此的更多详细信息 in the Cordova docs 以了解有关配置图标的更多详细信息。
如果由于某种原因它不起作用,请检查以确保您拥有 PhoneGap CLI 的最新版本或更新到最新版本。
~冬青
您必须在 www
根文件夹内的 config.xml
文件中添加图标配置。尝试添加如下内容:
<platform name="android">
<icon src="res/android/ldpi.png" density="ldpi" />
<icon src="res/android/mdpi.png" density="mdpi" />
<icon src="res/android/hdpi.png" density="hdpi" />
<icon src="res/android/xhdpi.png" density="xhdpi" />
</platform>
创建这些包含您的图标的文件夹并执行 phonegap build android
。
答案实际上是在根级别(与 www 目录同一级别)的 config.xml
中使用此代码块:
<icon src="www/res/icon/android/ldpi.png" platform="android" density="ldpi" />
<icon src="www/res/icon/android/mdpi.png" platform="android" density="mdpi" />
<icon src="www/res/icon/android/hdpi.png" platform="android" density="hdpi" />
<icon src="www/res/icon/android/xhdpi.png" platform="android" density="xhdpi" />
<icon src="www/res/icon/android/xxhdpi.png" platform="android" density="xxhdpi" />
<icon src="www/res/icon/android/xxxhdpi.png" platform="android" density="xxxhdpi"/>
显然,确保这些路径通向您的图标。