يوضّح هذا الدليل المشاكل الشائعة وكيفية تحديدها وحلّها. يمكنك أيضًا استخدام أدوات تحديد المشاكل وحلّها في صفحة "الروابط لصفحات في التطبيق" على Play Console أو في "أداة مساعدة لروابط التطبيقات" في Android Studio. لمزيد من المعلومات، يمكنك الاطّلاع على أدوات المطوّرين لروابط التطبيقات.
فتح رابط التطبيق في المتصفّح بدلاً من التطبيق
- المشكلة: تنقر على رابط من المفترض أن يفتح تطبيقك، ولكنّه يفتح في متصفّح ويب أو يعرض مربّع حوار لإزالة الغموض.
- الحلّ:
- التحقّق من ملف
assetlinks.json: تأكَّد من أنّ الملف هو ملف JSON صالح، ويمكن الوصول إليه فيhttps://<your-domain>/.well-known/assetlinks.json، ويتم عرضه عبر HTTPS بدون عمليات إعادة توجيه. استخدام أداة التحقّق على الإنترنت - التحقّق من صحة الملف المرجعي لمعيار SHA-256: تأكَّد من أنّ
sha256_cert_fingerprintsفيassetlinks.jsonيتطابق تمامًا مع الملف المرجعي لمفتاح التوقيع الخاص بإصدار تطبيقك (استخدِم الملف المرجعي من Play Console إذا كنت تستخدم ميزة "توقيع التطبيق" من Play). يجب أن يكون التوقيع بأحرف كبيرة. - التحقّق من
autoVerify: تأكَّد من أنّ<intent-filter>فيAndroidManifest.xmlيتضمّنandroid:autoVerify="true". - التحقّق من عمليات إعادة التوجيه من جانب الخادم: يمكن أن تؤدي عمليات إعادة التوجيه من
httpإلىhttpsأو من نطاق غير www إلىwwwإلى تعذُّر إثبات الملكية. - فرض إعادة التحقّق: نفِّذ أوامر Android Debug Bridge (ADB) في دليل اختبار روابط التطبيق للحصول على نتيجة تحقّق جديدة.
- التحقّق من ملف
عدم تعديل القواعد الديناميكية على الإصدار 15 أو الإصدارات الأحدث من نظام التشغيل Android
- المشكلة: عدّلت القواعد في ملف
assetlinks.json، ولكن التطبيق لا يتعامل مع الروابط الجديدة. - الحلّ:
- فرض إعادة التحقّق: الطريقة الأكثر موثوقية لاختبار التغييرات هي فرض عملية إعادة جلب باستخدام
adb shell pm verify-app-links --re-verify. <your-package-name>. - البحث عن الأخطاء الإملائية: راجِع بعناية أدوات مطابقة الأنماط في قواعدك بحثًا عن أي أخطاء في البنية.
- التحقّق من قواعد فلترة ملف البيان: راجِع قواعد فلترة الأهداف في بيان التطبيق للتأكّد من عدم فلترة مسار الرابط. إذا كان يتم فلترة الرابط، عليك تقليل القيود المفروضة على فلتر الأهداف في بيان التطبيق.
- فرض إعادة التحقّق: الطريقة الأكثر موثوقية لاختبار التغييرات هي فرض عملية إعادة جلب باستخدام
إصلاح أخطاء التنفيذ الشائعة
إذا تعذّر عليك إثبات ملكية "روابط تطبيقات Android"، تحقّق من الأخطاء الشائعة التالية. يستخدم هذا القسم example.com كاسم نطاق نائب. عند إجراء عمليات التحقّق هذه، استبدِل example.com باسم النطاق الفعلي للخادم.
- إعداد فلتر intent غير صحيح
- تحقَّق مما إذا كنت قد أدرجت عنوان URL لا يملكه تطبيقك في عنصر
<intent-filter>. - إعدادات الخادم غير صحيحة
تحقَّق من إعدادات JSON الخاصة بالخادم، وتأكَّد من أنّ قيمة SHA صحيحة.
عليك أيضًا التأكّد من أنّ
example.com.(مع النقطة الأخيرة) يعرض المحتوى نفسه الذي يعرضهexample.com.- عمليات إعادة التوجيه من جهة الخادم
لا يتحقّق النظام من أي روابط لتطبيقات Android في تطبيقك إذا أعددت عملية إعادة توجيه مثل ما يلي:
- من
http://example.comإلى https://example.com - من
example.comإلى www.example.com
ويساعد هذا السلوك في حماية أمان تطبيقك.
- من
- متانة الخادم
تحقَّق مما إذا كان بإمكان تطبيقات العميل الاتصال بالخادم.
- الروابط التي لا يمكن التحقّق منها
لأغراض الاختبار، يمكنك إضافة روابط لا يمكن التحقّق منها عن قصد. يُرجى العِلم أنّه على نظام التشغيل Android 11 والإصدارات الأقدم، تؤدي هذه الروابط إلى عدم تحقّق النظام من جميع روابط التطبيقات على Android لتطبيقك.
- توقيع غير صحيح في ملف assetlinks.json
تأكَّد من أنّ توقيعك صحيح ويتطابق مع التوقيع المستخدَم لتوقيع تطبيقك. تتضمّن الأخطاء الشائعة ما يلي:
- توقيع التطبيق باستخدام شهادة تصحيح الأخطاء وتضمين توقيع الإصدار فقط في
assetlinks.json - أن يكون لديك توقيع بأحرف صغيرة في
assetlinks.jsonيجب أن يكون التوقيع بأحرف كبيرة. - إذا كنت تستخدم ميزة "توقيع التطبيق" من Play، تأكَّد من استخدام التوقيع الذي تستخدمه Google لتوقيع كل إصدار من إصداراتك. يمكنك التحقّق من هذه التفاصيل، بما في ذلك مقتطف JSON كامل، باتّباع التعليمات حول تحديد المواقع الإلكترونية المرتبطة.
- توقيع التطبيق باستخدام شهادة تصحيح الأخطاء وتضمين توقيع الإصدار فقط في