it-swarm.dev

كيفية إضافة أيقونة التطبيق ضمن مشاريع phonegap؟

لقد أنشأت مشروعًا جديدًا لهاتف الهاتف (الإصدار 3.0.0-0.14.0) باستخدام config.xml الافتراضي ، ثم قمت بإضافة نظامي iOS و Android.

يحتوي التكوين على جميع المسارات إلى جميع رموز النظام الأساسي.

لقد قمت بالكتابة فوق الرموز الافتراضية لنظامي iOS و Android حتى لا يزال هذا المسار والاسم يتطابقان مع ملفات png.

عند تشغيل جهاز محاكاة ، لا تظهر الرموز. لقد بحثت عنه في xCode حيث يخبرني أن مجلد "الموارد" للرموز لا يزال يحتوي على الرموز الافتراضية للهاتف. نفس الشيء مع Android.

ما الخطأ الذي افعله؟

كيف يمكنني إضافة رموز تطبيقات مخصصة لنظام التشغيل iOS و Android مع phonegap؟

شكر

بلدي config.xml

<icon src="icon.png" />

<icon gap:density="ldpi" gap:platform="Android" src="res/icon/Android/icon-36-ldpi.png" />
<icon gap:density="mdpi" gap:platform="Android" src="res/icon/Android/icon-48-mdpi.png" />
<icon gap:density="hdpi" gap:platform="Android" src="res/icon/Android/icon-72-hdpi.png" />
<icon gap:density="xhdpi" gap:platform="Android" src="res/icon/Android/icon-96-xhdpi.png" />

<icon gap:platform="ios" height="57" src="res/icon/ios/icon-57.png" width="57" />
<icon gap:platform="ios" height="72" src="res/icon/ios/icon-72.png" width="72" />
<icon gap:platform="ios" height="114" src="res/icon/ios/icon-57-2x.png" width="114" />
<icon gap:platform="ios" height="144" src="res/icon/ios/icon-72-2x.png" width="144" />

<icon gap:platform="blackberry" src="res/icon/blackberry/icon-80.png" />
<icon gap:platform="blackberry" gap:state="hover" src="res/icon/blackberry/icon-80.png" />

<icon gap:platform="webos" src="res/icon/webos/icon-64.png" />
<icon gap:platform="winphone" src="res/icon/windows-phone/icon-48.png" />
<icon gap:platform="winphone" gap:role="background" src="res/icon/windows-phone/icon-173.png" />
85
Markus

لحسن الحظ ، هناك القليل في المستندات حول صور البداية ، والتي وضعتني على الطريق للوصول إلى الموقع الصحيح لصور الأيقونات أيضًا. لذلك هنا يذهب.

عند وضع الملفات بمجرد إنشاء مشروعك باستخدام واجهة سطر الأوامر "cordova build ios" ، يجب أن يكون لديك بنية ملف كاملة لتطبيق iOS الخاص بك في مجلد platforms/ios/.

يوجد داخل هذا المجلد مجلد باسم التطبيق الخاص بك. والذي بدوره يحتوي على دليل resources/ حيث ستجد مجلدات icons/ و splashscreen/.

ستجد في مجلد الرموز أربعة ملفات أيقونات (لكل من 57 بكسل و 72 بكسل ، كل في الإصدار العادي والإصدار @ 2x). هذه هي رموز العنصر النائب لـ Phonegap التي تراها حتى الآن.

ماذا أفعل

كل ما عليك فعله هو حفظ ملفات الرموز في هذا المجلد. اذن هذا:

YourPhonegapProject/Platforms/ios/YourAppName/Resources/icons

نفس الشيء بالنسبة لملفات splashscreen.

ملاحظات

  1. بعد وضع الملفات هناك ، أعد إنشاء المشروع باستخدام cordova build ios واستخدم أمر قائمة "المنتج النظيف" الخاص بـ xCode. بدون هذا ، ستظل ترى العناصر النائبة لـ Phonegap.

  2. من الحكمة إعادة تسمية ملفاتك بطريقة iOS/Apple (على سبيل المثال ، [email protected] وما إلى ذلك) بدلاً من تعديل الأسماء في info.plist أو config.xml. على الأقل هذا يعمل بالنسبة لي.

  3. وبالمناسبة ، تجاهل المسار الغريب واسم الملف الغريب المعطيان للرموز في config.xml (أي <icon gap:platform="ios" height="114" src="res/icon/ios/icon-57-2x.png" width="114" />). لقد تركت هذه التعريفات للتو ، وظهرت الرموز على ما يرام رغم أن أيقونة 114px الخاصة بي تحمل اسم [email protected] بدلاً من icon-57-2x.png.

  4. لا تستخدم config.xml لمنع تأثير لمعان Apple على الأيقونة. بدلاً من ذلك ، حدد المربع في xCode (انقر فوق عنوان المشروع في عمود التنقل الأيمن ، وحدد تطبيقك أسفل العنوان الهدف ، وانتقل لأسفل إلى قسم الرموز).

67
Wytze

التعليمات: ICON/SPLASH SCREEN (Cordova 5.x/2015)

أقدم إجابتي بصفة عامة FAQ قد تساعدك في حل العديد من المشكلات التي واجهتها أثناء التعامل مع الأيقونات/شاشات البداية. قد تكتشف مثلي أن الوثائق ليست واضحة دائمًا ولا محدّثة. من المحتمل أن ينتقل هذا إلى وثائق StackOverflow عند توفرها.

أولاً: الإجابة على السؤال

كيف يمكنني إضافة رموز تطبيقات مخصصة لنظام التشغيل iOS و Android مع phonegap؟

في إصدار Cordova العلامة icon غير مجدية. لم يتم توثيقه حتى في Cordova 3.0.0. يجب عليك استخدام إصدار الوثائق الذي يناسب cli الذي تستخدمه وليس الأحدث!

لا تعمل رمز العلامة لنظام Android على الإطلاق قبل الإصدار 3.5.0 وفقًا لما يمكنني رؤيته في الإصدارات المختلفة من الوثائق. في 3.4.0 ما زالوا ينصحون بنسخ الملفات يدويًا

في الإصدارات الأحدث : يبدو رمز config.xml الخاص بك أفضل بالنسبة لإصدارات Cordova الأحدث. ومع ذلك لا تزال هناك أشياء كثيرة قد ترغب في معرفتها. إذا قررت الترقية هنا ، فهناك بعض الأشياء المفيدة التي يمكنك تعديلها:

  • لا تحتاج إلى مساحة الاسم gap:
  • تحتاج إلى <preference name="SplashScreen" value="screen" /> لنظام التشغيل Android

إليك المزيد من التفاصيل عن الأسئلة التي قد تطرحها على نفسك عند محاولة التعامل مع الأيقونات وشاشة البداية:

هل يمكنني استخدام إصدار قديم من Cordova/Phonegap

لا ، لم تكن ميزة الرمز/البداية في الإصدارات السابقة من Cordova ، لذا يجب عليك استخدام إصدار حديث. في الإصدارات السابقة ، لم يتعامل سوى Phonegap Build مع شاشة الرموز/البداية ، لذا لم يكن البناء محليًا والتعامل مع الرموز ممكنًا إلا باستخدام خطاف. لا أعرف الحد الأدنى من الإصدار لاستخدام هذه الميزة ، لكن مع الإصدار 5.1.1 يعمل بشكل جيد في كل من Cordova/Phonegap cli. مع Cordova 3.5 لم ينجح الأمر بالنسبة لي.

تحرير : لنظام Android يجب عليك استخدام 3.5.0 على الأقل

كيف يمكنني تصحيح عملية الإنشاء حول الرموز؟

يستخدم CLI أمر CP. إذا قمت بتقديم مسار رمز غير صالح ، فسيظهر خطأ cp:

[email protected]:cordova (dev *+$%)$ cordova run Android --device
cp: no such file or directory: /home/sebastien/Desktop/Stample-react/cordova/res/www/stample_splash.png

تحرير : لقد استخدمت cordova build <platform> --verbose للحصول على سجلات لاستخدام الأمر cp لمعرفة مكان نسخ الرموز الخاصة بك

يجب أن تذهب الرموز في مجلد وفقًا للتكوين. بالنسبة لي ، يتم عرضه في العديد من المجلدات الفرعية في: platforms/Android/build/intermediates/res/armv7/debug/drawable-hdpi-v4/icon.png

ثم يمكنك العثور على ملف APK ، وفتحه كأرشيف Zip للتحقق من وجود الرموز. يجب أن تكون في مجلد res/drawable* لأنه مجلد خاص لنظام Android.

أين يجب أن أضع الرموز/شاشات البداية في مشروعي؟

في العديد من الأمثلة ، ستجد الرموز/شاشات البداية موضحة داخل مجلد res. هذا res هو مجلد Android خاص في إخراج APK ، لكن هذا لا يعني أن عليك استخدام مجلد res في مشروعك.

يمكنك وضع الرمز الخاص بك في أي مكان ، لكن المسار الذي تستخدمه يجب أن يكون {قريبًا من جذر المشروع ، وليس www لذلك احذر! تم توثيق هذا ، ولكن ليس بشكل واضح لأن جميع الأمثلة تستخدم res وأنت لا تعرف مكان هذا المجلد :(

أقصد إذا وضعت الأيقونة في www/icon.png ، فيجب عليك مطلقًا تضمين www في طريقك.

تحرير مارس 2016 : بعد ترقية إصداراتي ، يبدو الآن أن الأيقونات نسبة إلى مجلد www لكن لم يتم تغيير الوثائق ( المسألة )

هل <icon src="icon.png"/> يعمل؟

لا لا! .

على نظام Android ، يبدو أنه كان يعمل من قبل (عندما لم تكن سمة الكثافة مدعومة حتى الآن؟) ولكن ليس بعد الآن. شاهد هذا قضية كوردوفا

في نظام التشغيل iOS ، يبدو أن استخدام هذا الإعلان العالمي قد يتخطى المزيد من الإعلانات المحددة ، لذا اعتني بنفسك وانشئه باستخدام --verbose لضمان عمل كل شيء بالشكل المتوقع.

هل يمكنني استخدام نفس ملف أيقونة/شاشة البداية لجميع الكثافات.

نعم يمكنك ذلك. يمكنك حتى استخدام نفس الملف لكل من الأيقونة وشاشة البداية (فقط للاختبار!). لقد استخدمت ملف رمز "كبير" من 65 كيلو بايت دون أي مشكلة.

ما الفرق عند استخدام علامة النظام الأساسي مقابل سمة النظام الأساسي

<icon src="icon.png" platform="Android" density="ldpi" />

بالضبط مثل

<platform name="Android">
    <icon src="www/stample_icon.png" density="ldpi" />
</platform>

هل يجب استخدام الفجوة: مساحة الاسم إذا كنت تستخدم Phonegap؟

في تجربتي ، يمكن للإصدارات الجديدة من Phonegap أو Cordova فهم تصريحات الرموز دون استخدام أي مساحة اسم gap: xml.

ومع ذلك ، ما زلت في انتظار إجابة صالحة هنا: إضافة المكون الإضافي cordova/phonegap VS config.xml

بقدر ما أفهم ، قد تكون بعض الميزات مع مساحة الاسم gap: متاحة في وقت سابق في PhonegapBuild ، ثم في Phonegap ثم يتم نقلها إلى Cordova (؟)

هل <preference name="SplashScreen" value="screen" /> مطلوب؟

على الأقل لنظام Android نعم هو عليه. فتحت مشكلة مع توضيحات إضافية.

هل أمر إعلان الأيقونة مهم؟

نعم إنها كذلك! قد لا يكون له أي تأثير على Android ولكن له تأثير على نظام التشغيل iOS وفقًا لاختباراتي. هذا سلوك غير متوقع وغير موثق لذا فتحت مشكلة أخرى .

هل أحتاج cordova-plugin-splashscreen؟

نعم هذا مطلوب بشكل مطلق إذا كنت تريد أن تعمل شاشة البداية. الوثائق غير واضحة ( issue ) ودعنا نعتقد أن المكون الإضافي مطلوب فقط لتقديم واجهة برمجة تطبيقات javascript لشاشة البداية.

كيف يمكنني تغيير حجم الصور لجميع العرض/الطول/الكثافة fastly

هناك أدوات لمساعدتك في القيام بذلك. أفضل واحد بالنسبة لي هو http://makeappicon.com/ لكنه يتطلب تقديم عنوان بريد إلكتروني.

الحلول الممكنة الأخرى هي:

هل يمكن أن تعطيني مثال التكوين؟

نعم فعلا. إليكم الرمز الحقيقي config.xml

<?xml version='1.0' encoding='utf-8'?>
<widget id="co.x" version="0.2.6" xmlns="http://www.w3.org/ns/widgets" xmlns:Android="http://schemas.Android.com/apk/res/Android" xmlns:cdv="http://cordova.Apache.org/ns/1.0" xmlns:gap="http://phonegap.com/ns/1.0">
    <name>x</name>
    <description>
        x
    </description>
    <author email="[email protected]" href="https://x.co">
        x
    </author>
    <content src="index.html" />
    <preference name="permissions"                  value="none" />
    <preference name="webviewbounce"                value="false" />
    <preference name="StatusBarOverlaysWebView"     value="false" />
    <preference name="StatusBarBackgroundColor"     value="#0177C6" />
    <preference name="detect-data-types"            value="true" />
    <preference name="stay-in-webview"              value="false" />
    <preference name="Android-minSdkVersion"        value="14" />
    <preference name="Android-targetSdkVersion"     value="22" />
    <preference name="phonegap-version"             value="cli-5.1.1" />

    <preference name="SplashScreenDelay"            value="10000" />
    <preference name="SplashScreen"                 value="screen" />


    <plugin name="cordova-plugin-device"                spec="1.0.1" />
    <plugin name="cordova-plugin-console"               spec="1.0.1" />
    <plugin name="cordova-plugin-whitelist"             spec="1.1.0" />
    <plugin name="cordova-plugin-crosswalk-webview"     spec="1.2.0" />
    <plugin name="cordova-plugin-statusbar"             spec="1.0.1" />
    <plugin name="cordova-plugin-screen-orientation"    spec="1.3.6" />
    <plugin name="cordova-plugin-splashscreen"          spec="2.1.0" />

    <access Origin="http://*" />
    <access Origin="https://*" />

    <access launch-external="yes" Origin="tel:*" />
    <access launch-external="yes" Origin="geo:*" />
    <access launch-external="yes" Origin="mailto:*" />
    <access launch-external="yes" Origin="sms:*" />
    <access launch-external="yes" Origin="market:*" />

    <platform name="Android">
        <icon src="www/stample_icon.png" density="ldpi" />
        <icon src="www/stample_icon.png" density="mdpi" />
        <icon src="www/stample_icon.png" density="hdpi" />
        <icon src="www/stample_icon.png" density="xhdpi" />
        <icon src="www/stample_icon.png" density="xxhdpi" />
        <icon src="www/stample_icon.png" density="xxxhdpi" />
        <splash src="www/stample_splash.png" density="land-hdpi"/>
        <splash src="www/stample_splash.png" density="land-ldpi"/>
        <splash src="www/stample_splash.png" density="land-mdpi"/>
        <splash src="www/stample_splash.png" density="land-xhdpi"/>
        <splash src="www/stample_splash.png" density="land-xhdpi"/>
        <splash src="www/stample_splash.png" density="land-xhdpi"/>
        <splash src="www/stample_splash.png" density="port-hdpi"/>
        <splash src="www/stample_splash.png" density="port-ldpi"/>
        <splash src="www/stample_splash.png" density="port-mdpi"/>
        <splash src="www/stample_splash.png" density="port-xhdpi"/>
        <splash src="www/stample_splash.png" density="port-xxhdpi"/>
        <splash src="www/stample_splash.png" density="port-xxxhdpi"/>
    </platform>

    <platform name="ios">
        <icon src="www/stample_icon.png" width="180" height="180" />
        <icon src="www/stample_icon.png" width="60" height="60" />
        <icon src="www/stample_icon.png" width="120" height="120" />
        <icon src="www/stample_icon.png" width="76" height="76" />
        <icon src="www/stample_icon.png" width="152" height="152" />
        <icon src="www/stample_icon.png" width="40" height="40" />
        <icon src="www/stample_icon.png" width="80" height="80" />
        <icon src="www/stample_icon.png" width="57" height="57" />
        <icon src="www/stample_icon.png" width="114" height="114" />
        <icon src="www/stample_icon.png" width="72" height="72" />
        <icon src="www/stample_icon.png" width="144" height="144" />
        <icon src="www/stample_icon.png" width="29" height="29" />
        <icon src="www/stample_icon.png" width="58" height="58" />
        <icon src="www/stample_icon.png" width="50" height="50" />
        <icon src="www/stample_icon.png" width="100" height="100" />
        <splash src="www/stample_splash.png" width="320" height="480"/>
        <splash src="www/stample_splash.png" width="640" height="960"/>
        <splash src="www/stample_splash.png" width="768" height="1024"/>
        <splash src="www/stample_splash.png" width="1536" height="2048"/>
        <splash src="www/stample_splash.png" width="1024" height="768"/>
        <splash src="www/stample_splash.png" width="2048" height="1536"/>
        <splash src="www/stample_splash.png" width="640" height="1136"/>
        <splash src="www/stample_splash.png" width="750" height="1334"/>
        <splash src="www/stample_splash.png" width="1242" height="2208"/>
        <splash src="www/stample_splash.png" width="2208" height="1242"/>
    </platform>

    <allow-intent href="*" />
    <engine name="browser" spec="^3.6.0" />
    <engine name="Android" spec="^4.0.2" />
</widget>

مصدر جيد من الأمثلة هي مجموعات بداية. أعجبني phonegap-start أو بداية أيونية

45
Sebastien Lorber

اعتبارًا من Cordova 3.5.0-0.2.6 ، يعمل عنصر <icon /> في config.xml مع المحاذير التالية:

  1. السمة src هي مسار نسبة إلى مجلد جذر المشروع. تعقب المشكلة حول هذه المشكلة سبب التغيير.

  2. يتم توثيق عنصر <icon src="..." /> بدون الدقة/نقطة في البوصة كرمز يستخدمه كل الأنظمة الأساسية كرمز افتراضي. ومع ذلك ، في عمليات إنشاء Android ، لا يتم نسخ الرمز الافتراضي إلا إلى المجلد القابل للرسم بنظام Android ، دون تعيين قرارات محددة. هذا يجعلك تظهر أيقونة مخصصة في المجلد /res/drawable ، ويوجد أيقونة cordova الافتراضية ذات الدقة المحددة في المجلدات الأخرى داخل apk apk (أي /res/drawable-ldpi). يجب عليك إضافة عنصر رمز واحد في config.xml لكل دقة على نظام Android.

على سبيل المثال ، إذا كانت صورة الرمز الخاص بك في المسار www/res/img/icon.png بالنسبة إلى مشروع الجذر الخاص بك ، فإن هذا السطور في config.xml يجعل رمز التطبيق الخاص بك يعمل في Android:

<!-- Default application icon -->
<icon src="www/res/img/icon.png" />
<!--
    Default icon should work, but cordova don't overwrite
    the default on all densities
-->
<icon src="www/res/img/icon.png" platform="Android" density="ldpi" />
<icon src="www/res/img/icon.png" platform="Android" density="mdpi" />
<icon src="www/res/img/icon.png" platform="Android" density="hdpi" />
<icon src="www/res/img/icon.png" platform="Android" density="xhdpi" />

مع وجود هذا التكوين في مكانه ، يمكنك الحصول على أيقونة صورة واحدة لجميع القرارات بالكتابة فوق أيقونة cordova الافتراضية ، وبدون أدوات ربط مخصصة. ببساطة بناء مع cordova build Android يجب أن تفعل الخدعة.

32
Ronoaldo Pereira

إذا كنت تريد طريقة سهلة الاستخدام لإضافة الرموز تلقائيًا عند إلقاء نظرة على البناء محلياً (cordova emulate ios ، cordova run Android ، إلخ) ، يمكنك إلقاء نظرة على هذا Gist:

https://Gist.github.com/LinusU/7515016

نأمل أن يبدأ هذا العمل خارج الصندوق في وقت ما في المستقبل ، فيما يلي تقرير الأخطاء ذات الصلة بمشروع Cordova:

https://issues.Apache.org/jira/browse/CB-2606

8
Linus Unnebäck

نظرًا لأن معظم الإجابات المستهدفة هنا موجهة إلى نظام التشغيل iOS ، يوجد حل لتغيير الرمز في Android.

لأجهزة الأندرويد:

قم بإجراء تغييرات على <موقع المشروع>\platform\Android\ant-build\res and not <موقع المشروع>\platform\Android\res

بالنسبة لبعض الأشخاص الذين يقومون بإجراء تغييرات في الموقع الأخير ، ربما يكون قد نجح ، ولكن بعد ملاحظة نسخ Phonegap من\Android\res إلى\Android\ant-build\res ، قررت تسجيل الوصول إلى هناك وعثرت على مجموعة منفصلة من المجلدات القابلة للطي التي تحتوي على الإعداد الافتراضي رمز الهاتف.

تغيير تلك عملت أخيرا.

نظرًا لأنني أقوم بالبناء والتشغيل محليًا وعدم استخدام Adobe PhoneGap Build ، فإن تغيير الرموز في <موقع المشروع>\www\res\icon\Android لم يعمل أيضًا.

4
Elixander Chen

يجب عليك إنشاء ملف config.xml والذي ستضع فيه ملف الرمز

<?xml version="1.0" encoding="ISO-8859-1" ?>
<widget xmlns = "http://www.w3.org/ns/widgets"
   xmlns:gap = "http://phonegap.com/ns/1.0"
   id        = "example"
   version    = "1.0.0">

   <icon src="icon.png" />
</widget>

تحقق من هذا: https://build.phonegap.com/docs/config-xml

هناك رموز محددة دائرة الرقابة الداخلية

4
João Pimentel Ferreira

أقوم بتشغيل phonegap 3.1.0-0.15.0 ، نظرًا لأن iOS7 غيّر الدقة إلى 120 × 120 بكسل لقد أضفت ملفًا بهذه الأبعاد إلى المشروع ، ثم غيرت ملف info.plist.

  1. أضف ملف 120 × 120 إلى المشروع ، عن طريق النقر بزر الماوس الأيمن على ملف المشروع في Xcode وتحديد ، "إضافة ملفات إلى" [اسم مشروعك] "...
  2. انتقل إلى ملف info.plist في Xcode "Resources/[Your Project Name] -info.plist"
  3. ضمن "ملفات الأيقونات (iOS 5)/ملفات الأيقونة/الأيقونة الأساسية" تغيير "العنصر 2" إلى أي شيء كان اسم الملف الخاص بك يحتوي على ملف (سميت الألغام) "icon-120.png لقد وضعت في مجلد المشروع بجانب جميع الرموز الأخرى ، رغم أن هذا لا يهم)

يمكن العثور على مزيد من المعلومات هنا: http://www.digifloor.com/missing-recommended-icon-file-error-ios-app-13

لإصلاح شاشة البداية في نظام التشغيل iOS ، قمت بلصقها في ملفات جديدة بنفس الأبعاد ونفس أسماء الملفات ، مع الكتابة فوق الملفات القديمة. فقط تذكر أن تذهب إلى المنتج> تنظيف في شريط القائمة في Xcode (اختصار Shift + Command + K) ويجب أن يعمل بشكل جيد! :)

3
Luddig

في cordova 3.3.1-0.1.2 ، السلوك المتوقع لا يعمل بشكل صحيح.

في

http://cordova.Apache.org/docs/en/3.3.0/config_ref_images.md.html#Icons٪20and٪20Splash٪20Screens

ينص بوضوح على أنك من المفترض أن تضعها في مجلد www الرئيسي الخاص بك في مجلد يسمى res والرموز التي تتبع اصطلاح تسمية معين بدلاً من الطريقة المحددة الأصلية القابلة للتخصيص config.xml (التي تشير إلى ملف من اختيارك ، الذي كان/هو أفضل بكثير). يجب أن يستغرق الأمر بعد ذلك من هناك لكل منصة ووضعها في الأنظمة الأساسية /؟ android؟/res/drawable-؟ نقطة في البوصة/icon.png لكن لا يوجد مثل هذا السلوك الصحيح في هذا الوقت ... خطأ.

لذلك أعتقد أنه يتعين علينا وضعهم يدويًا لكل منصة. ستحتاج بالطبع إلى إزالة ذلك من التكرار في مجلد www مرة أخرى. بالنسبة لي كان لا بد لي من استبدال المحتويات الموجودة في المجلد www الرئيسي على أي حال لأنها ببساطة لا تعمل مع عالم الترحيب حتى دون اختراق index.html لإعادة التوجيه للعثور على مجلد عشوائي عشوائي هناك. يعد وضع مجلد res بجوار بجانب www أمرًا منطقيًا ، لكن ما يبدو لي هو السبب في هذه السلسلة من خيارات/عيوب التصميم المتتالية والمربكة.

3
MistereeDevlord

في بعض الحالات ، لا تضع النصوص الداخلية لـ cordova الأيقونات في المجلد الصحيح ، لذلك يمكنك رؤية الروبوت الروبوت f *** cordova بدلاً من الرمز الخاص بك.

الاستفادة من البرنامج النصي هوك. ؛)

ثلاثة - السنانير الخاصة بك - cordovaphonegap - احتياجات المشروع

قم بإنشاء مجلد "after_platform_add" في مجلد الخطاف ووضع/تغيير النص الأخير من devgirl.

لا تنسَ تعيين الحقوق التنفيذية للبرنامج النصي ، في نظام التشغيل Linux "chmod 777 <script>"

حظا سعيدا!

2
Masood Moshref

فقط أضف هذا الرمز إلى ملف config.xml الخاص بك

<icon src="path to your icon image">

على سبيل المثال:

<icon src="icon.png">

تذكر الطرق أنك بحاجة إلى استخدام ملحق .png

1
Jobincs

تمت إضافة كل ما فعلته الأسطر التالية في config.xml <icon src="www/img/appIcon.png" />

وانها تعمل بشكل جيد تماما

1
Ali Sadiq

لاحظ فقط أنني قمت بتغيير config.xml الخاص بي لتبدو كمثال سيباستيان.

هناك شيء مفيد أيضًا في تصحيح كل هذا خاصةً إذا كنت لا تقوم بالبناءات المحلية ... هو تنزيل ملفات XAP/IPA/APK كما تم إنشاؤها من PhoneGap cloud وإنشاء مجلدات لكل منها. إعادة تسمية كل ملف بملحق .Zip واستخراج محتويات كل إلى المجلدات الخاصة بهم. لذلك ، في الأساس ، يمكنك الآن رؤية محتويات الحزمة التي سيتم شحنها إلى الهاتف.

عند القيام بذلك ، أستطيع أن أرى أنه بالنسبة لنظام Microsoft Phone ، فإنه يتجاهل إلى حد كبير جميع محاولاتي لاستبدال الأيقونة أو شاشة البداية. إذا استبدلت بعد ذلك ApplicationIcon.png و SplashScreenImage.jpg ، فقم بإعادة ضغط مجموعة المجلدات وإعادة تسميتها مرة أخرى كملف .XAP ، ثم يمكنك نشرها على هاتفك وستعمل بشكل مثالي. بطريقة ما ، هناك طريقة للحصول على PhoneGap build لتحويل ملفك icon.png و icon.jpg إلى هذين الملفين. ربما اقتراح مسعود هو احتمال هنا واستخدام البرنامج النصي هوك.

يؤدي القيام بالشيء نفسه لملف .IPA (iOS) إلى عدة ملفات مثل icon-something.png على المستوى الأصل أعلى www. يبدو أنهم جميعا فارغون.

يؤدي القيام بالشيء نفسه لملف .APK (Android) إلى مجموعة من المجلدات res/drawable-شيء ويبدو أنه يحتوي على icon.png في كل مجلد. إنه الأقرب إلى النجاح الذي يمكنني المطالبة به في الوقت الحالي.

0
Michael Blankenship

أنا أيضًا في منتصف محاولة فهم كيفية اتصال كل هذا.

إليك ما وجدته حتى الآن في XCode ، لكنني آمل أن يتم تصحيحه أو تأكيده إذا كانت افتراضاتي صحيحة. لم أتمكن من العثور على نسخة من المربع إلى رمز من cordova يطبق الرموز بشكل صحيح. مثلك ، قمت بتحديث جميع الرموز المدرجة في config.xml ولكن لا يوجد أي زهر.

وبالتالي...

أولاً ، أقوم عادةً بتحديث config.xml في جذر المشروع باستخدام المجلد الموجود في مجلد "www" (أقوم بذلك بسبب عدم التيقن من أن www/config.xml له أي الأسبقية أو حتى إذا تم تطبيقه)

ثانياً ، أقوم بتحديث "إنشاء المراحل" من المشروع. توسيع "نسخ حزمة الموارد" ، لقد لاحظت بالفعل جميع الصور في "الموارد/الرموز" ، "الموارد/البداية". يمكنك إما:

  • إزالة كل هذه لتجنب الكتابة فوق الصور الخاصة بك أو
  • تحديث كل هذه الصور بصورك الخاصة (إعادة تسمية اسم الصورة المدرجة)

بينما كنت أعمل هذا ، قد تتمكن من تحديث الصور من علامة التبويب "الملخص" إلى الحد الأدنى.

قم بسحب وإفلات صورك من مجلدات الدقة الخاصة بك إلى الصورة المناسبة في علامة التبويب "الملخص". (res/icon/ios -> رموز التطبيقات و res/screen/ios -> إطلاق الصور). أفعل ذلك فقط من أجل iPhone لأن تطبيقي هو iPhone فقط. تحقق من "العرض المسبق" إذا كنت لا تريد ظهور اللمعان.

ثم حدّث "icon.png" المشار إليه في ملف plist للمشروع: PROJECT_NAME-Info.plist أو في علامة التبويب "معلومات" عند النظر إلى هدف المشروع. قم بإعادة تسميته إلى "icon-57.png" (الذي يعيش الآن في جذر المشروع الخاص بك ، تمت إضافة هذا تلقائيًا إلى الجذر عندما قمت بالسحب والإفلات.

بناء ويجب عليك أيقونة التطبيق المحدثة.

0
Sam Tsai