پیوندهای برنامه اندروید را اضافه کنید

پیوندهای برنامه Android URL های HTTP هستند که کاربران را مستقیماً به محتوای خاصی در برنامه Android شما می آورند. پیوندهای برنامه Android می‌توانند ترافیک بیشتری را به برنامه شما هدایت کنند، به شما کمک کنند بفهمید از کدام محتوای برنامه بیشتر استفاده می‌شود، و پیدا کردن و اشتراک‌گذاری محتوا در یک برنامه نصب‌شده را برای کاربران آسان‌تر می‌کند.

برای افزودن پشتیبانی از پیوندهای برنامه Android:

  1. فیلترهای هدف را در مانیفست خود ایجاد کنید.
  2. برای مدیریت پیوندهای دریافتی، کدی را به فعالیت های برنامه خود اضافه کنید.
  3. برنامه و وب سایت خود را با پیوندهای دارایی دیجیتال مرتبط کنید.

App Links Assistant در اندروید استودیو فرآیند را با یک جادوگر گام به گام ساده می کند، همانطور که در زیر توضیح داده شده است.

برای اطلاعات بیشتر در مورد نحوه عملکرد پیوندهای برنامه و مزایایی که ارائه می دهند، مدیریت پیوندهای برنامه Android را بخوانید.

فیلترهای قصد اضافه کنید

دستیار پیوندهای برنامه در Android Studio می‌تواند به شما کمک کند فیلترهای هدف را در مانیفست خود ایجاد کنید و نشانی‌های وب موجود را از وب‌سایت خود به فعالیت‌های برنامه خود ترسیم کنید. دستیار پیوندهای برنامه همچنین کد الگو را در هر فعالیت مربوطه اضافه می کند تا هدف را مدیریت کند.

برای افزودن فیلترهای هدف و مدیریت URL، این مراحل را دنبال کنید:

  1. Tools > App Links Assistant را انتخاب کنید.
  2. روی Open URL Mapping Editor و سپس Add کلیک کنید در پایین لیست URL Mapping برای اضافه کردن یک نقشه URL جدید.
  3. جزئیات را برای نگاشت URL جدید اضافه کنید:

    App Links Assistant شما را در نقشه‌برداری اولیه URL راهنمایی می‌کند

    شکل 1. جزئیات اساسی در مورد ساختار پیوند سایت خود را به نقشه URL ها به فعالیت های برنامه خود اضافه کنید.

    1. آدرس وب سایت خود را در قسمت Host وارد کنید.
    2. برای URL هایی که می خواهید نقشه برداری کنید یک path ، pathPrefix یا pathPattern اضافه کنید.

      به عنوان مثال، اگر یک برنامه اشتراک‌گذاری دستور غذا با تمام دستورهای غذایی موجود در یک فعالیت دارید، و دستور العمل‌های وب‌سایت مربوطه شما همگی در یک فهرست /recipe هستند، از pathPrefix استفاده کنید و /recipe را وارد کنید. به این ترتیب، نشانی اینترنتی http://www.recipe-app.com/recipe/grilled-potato-salad با فعالیتی که در مرحله زیر انتخاب می‌کنید، نقشه می‌گیرد.

    3. فعالیتی را که URLها باید کاربران را به آن ببرند انتخاب کنید.
    4. روی OK کلیک کنید.

    پنجره URL Mapping Editor ظاهر می شود. App Links Assistant فیلترهای هدف را بر اساس نقشه URL شما به فایل AndroidManifest.xml اضافه می کند و تغییرات را در قسمت Preview برجسته می کند. اگر می‌خواهید تغییری ایجاد کنید، روی Open AndroidManifest.xml کلیک کنید تا فیلتر هدف را ویرایش کنید. برای کسب اطلاعات بیشتر، فیلترهای هدف پیوندهای ورودی را ببینید.

    پنجره اصلی ابزار App Links Assistant همچنین تمام پیوندهای عمیق موجود در فایل AndroidManifest.xml را نشان می‌دهد و به شما امکان می‌دهد تا با کلیک بر روی Fix All Manifest Issues به سرعت هرگونه پیکربندی نادرست را برطرف کنید.

    App Links Assistant به شما امکان می‌دهد پیکربندی‌های نادرست آشکار را برطرف کنید.

    توجه: برای پشتیبانی از پیوندهای آینده بدون به‌روزرسانی برنامه، یک نقشه‌برداری URL را تعریف کنید که از URLهایی که قصد اضافه کردن آنها را دارید پشتیبانی می‌کند. همچنین، یک URL برای صفحه اصلی برنامه خود اضافه کنید تا در نتایج جستجو گنجانده شود.

  4. برای تأیید اینکه نقشه‌برداری URL شما به درستی کار می‌کند، یک URL را در قسمت Check URL Mapping وارد کنید.

    اگر به درستی کار می کند، پیام موفقیت نشان می دهد که نشانی اینترنتی که وارد کرده اید با فعالیتی که انتخاب کرده اید مطابقت دارد.

مدیریت لینک های دریافتی

هنگامی که تأیید کردید که نگاشت URL شما به درستی کار می کند، منطقی را برای مدیریت هدفی که ایجاد کرده اید اضافه کنید:

  1. روی Select Activity از App Links Assistant کلیک کنید.
  2. یک فعالیت را از لیست انتخاب کنید و روی درج کد کلیک کنید.

App Links Assistant کدی را به فعالیت شما اضافه می کند، شبیه به موارد زیر:

کاتلین

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    ...
    // ATTENTION: This was auto-generated to handle app links.
    val appLinkIntent: Intent = intent
    val appLinkAction: String? = appLinkIntent.action
    val appLinkData: Uri? = appLinkIntent.data
    ...
}

جاوا

@Override
void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ...
    // ATTENTION: This was auto-generated to handle app links.
    Intent appLinkIntent = getIntent();
    String appLinkAction = appLinkIntent.getAction();
    Uri appLinkData = appLinkIntent.getData();
    ...
}

این کد به تنهایی کامل نیست. اکنون باید اقدامی را بر اساس URI در appLinkData انجام دهید، مانند نمایش محتوای مربوطه. برای مثال، برای برنامه اشتراک‌گذاری دستور غذا، کد شما ممکن است مانند نمونه زیر باشد:

کاتلین

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    ...
    handleIntent(intent)
}

override fun onNewIntent(intent: Intent) {
    super.onNewIntent(intent)
    handleIntent(intent)
}

private fun handleIntent(intent: Intent) {
    val appLinkAction = intent.action
    val appLinkData: Uri? = intent.data
    if (Intent.ACTION_VIEW == appLinkAction) {
        appLinkData?.lastPathSegment?.also { recipeId ->
            Uri.parse("content://com.recipe_app/recipe/")
                    .buildUpon()
                    .appendPath(recipeId)
                    .build().also { appData ->
                        showRecipe(appData)
                    }
        }
    }
}

جاوا

protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  ...
  handleIntent(getIntent());
}

protected void onNewIntent(Intent intent) {
  super.onNewIntent(intent);
  handleIntent(intent);
}

private void handleIntent(Intent intent) {
    String appLinkAction = intent.getAction();
    Uri appLinkData = intent.getData();
    if (Intent.ACTION_VIEW.equals(appLinkAction) && appLinkData != null){
        String recipeId = appLinkData.getLastPathSegment();
        Uri appData = Uri.parse("content://com.recipe_app/recipe/").buildUpon()
            .appendPath(recipeId).build();
        showRecipe(appData);
    }
}

برنامه خود را با وب سایت خود مرتبط کنید

پس از راه‌اندازی پشتیبانی URL برای برنامه‌تان، «دستیار پیوندهای برنامه» یک فایل پیوندهای دارایی دیجیتال ایجاد می‌کند که می‌توانید از آن برای مرتبط کردن وب‌سایت خود با برنامه خود استفاده کنید.

به عنوان جایگزینی برای استفاده از فایل پیوندهای دارایی دیجیتال، می توانید سایت و برنامه خود را در کنسول جستجو مرتبط کنید .

اگر از Play App Signing برای برنامه خود استفاده می‌کنید، اثر انگشت گواهی که توسط App Links Assistant تولید می‌شود معمولاً با دستگاه‌های کاربران مطابقت ندارد. در این حالت، می‌توانید قطعه JSON پیوندهای دارایی دیجیتال صحیح را برای برنامه خود در حساب برنامه‌نویس کنسول Play خود در بخش Release > Setup > App signing پیدا کنید.

برای مرتبط کردن برنامه و وب سایت خود با استفاده از App Links Assistant، روی Open Digital Asset Links File Generator از App Links Assistant کلیک کنید و این مراحل را دنبال کنید:

App Links Assistant شما را در نقشه‌برداری اولیه URL راهنمایی می‌کند

شکل 2. جزئیات مربوط به سایت و برنامه خود را وارد کنید تا فایل پیوند دارایی دیجیتال ایجاد شود.

  1. دامنه سایت و شناسه برنامه خود را وارد کنید.
  2. برای گنجاندن پشتیبانی در فایل پیوندهای دارایی دیجیتال برای ورود به سیستم با یک ضربه ، پشتیبانی از اعتبار اشتراک‌گذاری اعتبار بین برنامه و وب‌سایت را انتخاب کنید و URL ورود به سیستم سایت خود را وارد کنید. این رشته زیر را به فایل پیوندهای دارایی دیجیتال اضافه می‌کند که برنامه شما را اعلام می‌کند. و اعتبارنامه های ورود به سیستم اشتراک گذاری وب سایت: delegate_permission/common.get_login_creds .

  3. پیکربندی امضا را مشخص کنید یا یک فایل ذخیره کلید را انتخاب کنید.

    مطمئن شوید که پیکربندی انتشار یا فایل ذخیره کلید مناسب را برای ساخت نسخه یا فایل پیکربندی اشکال زدایی یا ذخیره‌سازی کلید را برای ساخت اشکال‌زدایی برنامه خود انتخاب کرده‌اید. اگر می خواهید ساخت تولید خود را تنظیم کنید، از پیکربندی انتشار استفاده کنید. اگر می خواهید ساخت خود را آزمایش کنید، از پیکربندی اشکال زدایی استفاده کنید.

  4. روی ایجاد فایل پیوندهای دارایی دیجیتال کلیک کنید.
  5. هنگامی که Android Studio فایل را تولید کرد، روی ذخیره فایل کلیک کنید تا آن را دانلود کنید.
  6. فایل assetlinks.json را با دسترسی خواندن برای همه، در https:// yoursite /.well-known/assetlinks.json در سایت خود آپلود کنید.

    مهم: سیستم فایل پیوندهای دارایی دیجیتال را از طریق پروتکل HTTPS رمزگذاری شده تأیید می کند. مطمئن شوید که فایل assetlinks.json از طریق اتصال HTTPS قابل دسترسی است، صرف نظر از اینکه فیلتر هدف برنامه شما حاوی https باشد یا خیر.

  7. برای تأیید اینکه فایل پیوندهای دارایی دیجیتال صحیح را در مکان صحیح آپلود کرده اید، روی پیوند و تأیید کلیک کنید.

«دستیار پیوند برنامه» می‌تواند فایل پیوندهای دارایی‌های دیجیتال را که باید در وب‌سایت شما منتشر شود، تأیید کند. برای هر دامنه ای که در فایل مانیفست اعلان شده است، دستیار فایل را در وب سایت شما تجزیه می کند، بررسی های اعتبارسنجی انجام می دهد و توضیح مفصلی در مورد نحوه رفع هر گونه خطا ارائه می دهد.

درباره مرتبط کردن وب سایت خود با برنامه خود از طریق فایل پیوندهای دارایی دیجیتال در «اعلام انجمن های وب سایت» بیشتر بیاموزید.

پیوندهای برنامه اندروید خود را تست کنید

برای تأیید اینکه پیوندهای شما فعالیت صحیح را باز می کنند، این مراحل را دنبال کنید:

  1. در App Links Assistant، روی Test Links App کلیک کنید.
  2. URL مورد نظر برای آزمایش را در قسمت URL وارد کنید. برای مثال، http://recipe-app.com/recipe/grilled-potato-salad .
  3. شکل 3. گفتگوی پیوندهای برنامه را آزمایش کنید که نشانی اینترنتی در حال آزمایش و یک پیام موفقیت آمیز را نشان می دهد.

  4. روی Run Test کلیک کنید.

اگر نقشه URL به درستی تنظیم نشده باشد یا وجود نداشته باشد، یک پیام خطا در زیر URL در گفتگوی پیوندهای برنامه آزمایشی ظاهر می شود. در غیر این صورت، Android Studio برنامه شما را در دستگاه یا شبیه ساز در فعالیت مشخص شده بدون نشان دادن گفتگوی ابهام‌زدایی ("انتخابگر برنامه") راه اندازی می کند و پیام موفقیت آمیز را در گفتگوی آزمایش پیوند برنامه ، همانطور که در شکل 3 نشان داده شده است، نشان می دهد.

اگر اندروید استودیو نتواند برنامه را راه اندازی کند، یک پیام خطا در پنجره اجرای اندروید استودیو ظاهر می شود.

برای آزمایش پیوندهای برنامه Android از طریق App Links Assistant، باید دستگاهی متصل داشته باشید یا یک دستگاه مجازی با Android 6.0 (سطح API 23) یا بالاتر در دسترس داشته باشید. برای اطلاعات بیشتر، در مورد نحوه اتصال دستگاه یا ایجاد AVD بخوانید.