Android App Link คือ URL แบบ HTTP ที่นำผู้ใช้ไปยังหน้าที่เจาะจงโดยตรง เนื้อหาในแอป Android ของคุณ Android App Link สามารถดึงดูดการเข้าชมไปยัง เพื่อช่วยให้ทราบว่าเนื้อหาแอปใดมีการใช้มากที่สุด และทำให้ผู้ใช้ เพื่อค้นหาและแชร์เนื้อหาในแอปที่ติดตั้งไว้
วิธีเพิ่มการรองรับสำหรับ Android App Link
- สร้างตัวกรอง Intent ในไฟล์ Manifest
- เพิ่มโค้ดลงในกิจกรรมของแอปเพื่อจัดการลิงก์ขาเข้า
- เชื่อมโยงแอปและเว็บไซต์ของคุณด้วยลิงก์เนื้อหาดิจิทัล
ผู้ช่วยลิงก์แอปใน Android Studio จะช่วยให้กระบวนการง่ายขึ้นแบบทีละขั้นตอน ของวิซาร์ด ตามที่อธิบายไว้ด้านล่าง
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของลิงก์แอปและสิทธิประโยชน์ที่มีให้ โปรดอ่าน การจัดการ Android App Link
เพิ่มตัวกรอง Intent
App Link Assistant ใน Android Studio ช่วยคุณสร้างได้ ตัวกรองความตั้งใจ ในไฟล์ Manifest และแมป URL ที่มีอยู่จากเว็บไซต์กับกิจกรรมในแอป App Link Assistant ยังเพิ่มโค้ดเทมเพลตในแต่ละกิจกรรมที่เกี่ยวข้องเพื่อจัดการ Intent
หากต้องการเพิ่มตัวกรอง Intent และการจัดการ URL ให้ทำตามขั้นตอนต่อไปนี้
- เลือกเครื่องมือ > App Link Assistant
- คลิกเปิดเครื่องมือแก้ไขการแมป URL แล้วคลิกเพิ่ม
ที่ ที่ด้านล่างของรายการการจับคู่ URL เพื่อเพิ่มการแมป URL ใหม่
เพิ่มรายละเอียดสำหรับการแมป URL ใหม่ ดังนี้
รูปที่ 1 เพิ่มรายละเอียดพื้นฐานเกี่ยวกับลิงก์ของเว็บไซต์ โครงสร้างในการแมป URL กับกิจกรรมในแอปของคุณ
- ป้อน URL ของเว็บไซต์ในช่องโฮสต์
เพิ่ม
path
pathPrefix
หรือpathPattern
สำหรับ URL ที่คุณต้องการแมปตัวอย่างเช่น ถ้าคุณมีแอปแชร์สูตรอาหารที่มีสูตรอาหารทั้งหมดอยู่ในแพลตฟอร์มเดียวกัน และสูตรอาหารของเว็บไซต์ที่เกี่ยวข้องทั้งหมดจะอยู่ใน /recipe เดียวกัน ให้ใช้ pathPrefix แล้วป้อน /recipe วิธีนี้จะทำให้ URL http://www.recipe-app.com/recipe/grilled-potato-salad จะแมปไปยังกิจกรรมที่คุณเลือก ขั้นตอนต่อไปนี้
- เลือกกิจกรรมที่ URL ควรนำผู้ใช้ไป
- คลิกตกลง
หน้าต่างเครื่องมือแก้ไขการจับคู่ URL จะปรากฏขึ้น App Link Assistant จะเพิ่มตัวกรอง Intent โดยอิงจาก การแมป URL ไปยังฟังก์ชัน
AndroidManifest.xml
และไฮไลต์การเปลี่ยนแปลงใน ดูตัวอย่าง หากคุณต้องการเปลี่ยนแปลง ให้คลิก เปิด AndroidManifest.xml เพื่อแก้ไขตัวกรอง Intent ดูข้อมูลเพิ่มเติมได้ในความตั้งใจ ตัวกรองสำหรับลิงก์ขาเข้าหน้าต่างเครื่องมือผู้ช่วยสำหรับลิงก์แอปหลักยังแสดง Deep Link ที่มีอยู่ทั้งหมดใน
AndroidManifest.xml
และช่วยให้คุณแก้ไขการกำหนดค่าที่ไม่ถูกต้องได้อย่างรวดเร็วโดยคลิก แก้ไขปัญหาทั้งหมดในไฟล์ Manifestหมายเหตุ: หากต้องการใช้ลิงก์ในอนาคตโดยไม่ต้องอัปเดตแอป กำหนดการแมป URL ที่สนับสนุน URL ที่คุณต้องการเพิ่ม และโปรดระบุ URL สำหรับหน้าจอหลักของแอปเพื่อให้รวมอยู่ในผลการค้นหา
หากต้องการยืนยันว่าการแมป URL ทำงานได้อย่างถูกต้อง ให้ป้อน URL ในตรวจสอบการแมป URL ด้วย
หากทำงานได้ดี ก็หมายความว่าความสำเร็จ ข้อความแสดงว่า URL ที่คุณป้อนแมปกับกิจกรรมที่คุณเลือก
จัดการลิงก์ขาเข้า
เมื่อคุณได้ตรวจสอบแล้วว่าการแมป URL ของคุณทำงานอย่างถูกต้อง ให้เพิ่มตรรกะเพื่อจัดการกับ Intent คุณสร้าง:
- คลิกเลือกกิจกรรมจาก App Link Assistant
- เลือกกิจกรรมจากรายการ แล้วคลิกแทรกโค้ด
ผู้ช่วยของ App Link จะเพิ่มรหัสลงในกิจกรรมของคุณ ซึ่งคล้ายกับขั้นตอนต่อไปนี้
Kotlin
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 ... }
Java
@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
เช่น การแสดงเนื้อหาที่เกี่ยวข้อง ตัวอย่างเช่น สำหรับ
แอปแชร์สูตรอาหาร โค้ดของคุณอาจมีลักษณะดังตัวอย่างต่อไปนี้
Kotlin
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) } } } }
Java
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 สําหรับแอปของคุณแล้ว Assistant ของ App Link จะสร้างเนื้อหาดิจิทัล ไฟล์ลิงก์ที่คุณสามารถใช้เพื่อ เชื่อมโยงเว็บไซต์ของคุณกับ แอปของคุณ
นอกจากการใช้ไฟล์ลิงก์เนื้อหาดิจิทัล (Digital Asset Links) แล้ว คุณยังทำสิ่งต่อไปนี้ได้ เชื่อมโยงเว็บไซต์และแอปของคุณ Search Console
หากคุณกำลังใช้ แอป Play กำลังลงนามแอปของคุณ ตามด้วยลายนิ้วมือของใบรับรองที่ App Link สร้างขึ้น Assistant มักจะไม่ตรงกับชื่อใน อุปกรณ์ ในกรณีนี้ คุณจะเห็น ข้อมูลโค้ด JSON ของลิงก์เนื้อหาดิจิทัล (Digital Asset Links) ที่ถูกต้องสำหรับแอปใน บัญชีนักพัฒนาแอป Play Console ภายใต้ Release > Setup > App signing
หากต้องการเชื่อมโยงแอปและเว็บไซต์โดยใช้ผู้ช่วยสำหรับลิงก์แอป ให้คลิกเปิด เครื่องมือสร้างไฟล์ลิงก์เนื้อหาดิจิทัล (Digital Asset Links) จาก Assistant ของ App Link แล้วทำตามขั้นตอนต่อไปนี้ ขั้นตอน:
![App Link Assistant จะแนะนําการแมป URL พื้นฐานให้คุณ](https://developer.android.com/static/studio/images/write/app-links-assistant-dal-file-generator_2x.png?authuser=9&hl=th)
รูปที่ 2 ป้อนรายละเอียดเกี่ยวกับเว็บไซต์และแอปของคุณเพื่อ สร้างไฟล์ลิงก์เนื้อหาดิจิทัล
- ป้อนโดเมนเว็บไซต์และ แอปพลิเคชัน รหัส
หากต้องการรวมการสนับสนุนในไฟล์ลิงก์เนื้อหาดิจิทัลสำหรับ การลงชื่อเข้าใช้ด้วย One Tap แล้วเลือกรองรับการแชร์ข้อมูลเข้าสู่ระบบระหว่างแอปกับ เว็บไซต์ แล้วป้อน URL สำหรับลงชื่อเข้าใช้ของเว็บไซต์ ซึ่งจะเพิ่มสตริงต่อไปนี้ลงใน ไฟล์ลิงก์เนื้อหาดิจิทัล (Digital Asset Links) ที่ประกาศว่าแอปและเว็บไซต์ของคุณใช้ข้อมูลเข้าสู่ระบบสำหรับการลงชื่อเข้าใช้ร่วมกัน
delegate_permission/common.get_login_creds
ระบุการกำหนดค่าการลงชื่อเข้าใช้หรือ เลือกไฟล์ keystore
โปรดตรวจสอบว่าคุณเลือกการกำหนดค่ารุ่นหรือไฟล์คีย์สโตร์ที่ถูกต้องสำหรับบิลด์ของรุ่นหรือ การกำหนดค่าการแก้ไขข้อบกพร่องหรือไฟล์คีย์สโตร์สำหรับ แก้ไขข้อบกพร่องของบิลด์ของแอป หากต้องการตั้งค่าบิลด์ในเวอร์ชันที่ใช้งานจริง ให้ใช้ การกำหนดค่ารุ่น หากต้องการทดสอบบิลด์ ให้ใช้การกำหนดค่าการแก้ไขข้อบกพร่อง
- คลิกสร้างไฟล์ลิงก์เนื้อหาดิจิทัล
- เมื่อ Android Studio สร้างไฟล์แล้ว ให้คลิกบันทึกไฟล์เพื่อดาวน์โหลด
- อัปโหลดไฟล์
assetlinks.json
ไปยังเว็บไซต์ของคุณพร้อมสิทธิ์ในการอ่านสำหรับทุกคนที่https://yoursite/.well-known/assetlinks.json
สำคัญ: ระบบจะยืนยันไฟล์ลิงก์เนื้อหาดิจิทัล (Digital Asset Links) ผ่าน โปรโตคอล HTTPS ที่เข้ารหัส ตรวจสอบว่าไฟล์
assetlinks.json
เข้าถึงได้จาก การเชื่อมต่อ HTTPS ไม่ว่าตัวกรอง Intent ของแอปจะมีhttps
- คลิกลิงก์และยืนยันเพื่อยืนยันว่าคุณได้อัปโหลดเนื้อหาดิจิทัลที่ถูกต้อง ไฟล์ลิงก์ไปยังตำแหน่งที่ถูกต้อง
ผู้ช่วย App Link จะตรวจสอบไฟล์ลิงก์เนื้อหาดิจิทัลที่ควรใช้เผยแพร่ เว็บไซต์ของคุณ สำหรับแต่ละโดเมนที่ประกาศไว้ในไฟล์ Manifest Assistant จะแยกวิเคราะห์ไฟล์ บนเว็บไซต์ของคุณ ทำการตรวจสอบความถูกต้อง และระบุคำอธิบายโดยละเอียดเกี่ยวกับวิธีแก้ไข
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเชื่อมโยงเว็บไซต์กับแอปผ่านไฟล์ลิงก์เนื้อหาดิจิทัล (Digital Asset Links) ใน ประกาศเว็บไซต์ การเชื่อมโยง
ทดสอบ Android App Link
ทำตามขั้นตอนต่อไปนี้เพื่อตรวจสอบว่าลิงก์เปิดกิจกรรมที่ถูกต้อง
- คลิกทดสอบลิงก์แอปใน Assistant ของ App Link
- ป้อน URL ที่ต้องการทดสอบในช่อง URL ตัวอย่างเช่น http://recipe-app.com/recipe/grilled-potato-salad
- คลิกดำเนินการทดสอบ
![](https://developer.android.com/static/studio/images/write/app-links-assistant-link-testing_2x.png?authuser=9&hl=th)
รูปที่ 3 กล่องโต้ตอบทดสอบลิงก์แอป แสดง URL ที่อยู่ในระหว่างการทดสอบและข้อความแสดงการสำเร็จ
หากการแมป URL ไม่ได้ตั้งค่าอย่างถูกต้องหรือไม่มีอยู่ ข้อความแสดงข้อผิดพลาดจะปรากฏใต้ URL ในกล่องโต้ตอบลิงก์แอปทดสอบ หรือไม่เช่นนั้น Android Studio เปิดแอปของคุณในอุปกรณ์หรือโปรแกรมจำลองที่กิจกรรมที่ระบุโดยไม่แสดง กล่องโต้ตอบ ("ตัวเลือกแอป") และแสดงข้อความว่าดำเนินการสำเร็จใน กล่องโต้ตอบการทดสอบ App Link ดังที่แสดงในรูปที่ 3
หากเปิด Android Studio ไม่ได้ ข้อความแสดงข้อผิดพลาดจะปรากฏในหน้าต่าง Run ของ Android Studio
หากต้องการทดสอบ Android App Link ผ่าน Assistant สำหรับ App Link คุณต้องมีอุปกรณ์ที่เชื่อมต่อ หรือ อุปกรณ์เสมือนที่พร้อมใช้งานโดยใช้ Android 6.0 (API ระดับ 23) ขึ้นไป สำหรับข้อมูลเพิ่มเติม อ่านข้อมูลเกี่ยวกับวิธีเชื่อมต่ออุปกรณ์ หรือสร้าง AVD