Android
นี่คือคำแนะนำสำหรับ SDK Android สำหรับการตั้งค่าโปรโมชั่น
การเพิ่มไลบรารีเพื่อใช้งาน¶
เพิ่มไลบรารีภายนอกเพื่อใช้ SDK Promotion ในไฟล์ระดับโมดูล build.gradle ด้านล่างนี้คือตัวอย่างของ build.gradle .
dependencies {
// Promotion
implementation "com.com2us.android.hive:hive-promotion"
// Promotion Google In-App Review
implementation "com.com2us.android.hive:hive-promotion-google-inappreview"
// Add this if you want to use Promotion video function.
implementation "com.com2us.android.hive:youtube-helper"
}
การใช้ Deep Links¶
ลิงก์ลึกคือ ลิงก์ที่พาผู้ใช้ไปยังตำแหน่งเฉพาะในแอปหลังจากเปิดแอปแล้ว การส่งเสริมการมีส่วนร่วมของผู้ใช้ รองรับการประมวลผลสำหรับแผนลิงก์ลึก เพื่อใช้ลิงก์ลึก ให้เพิ่มสิ่งต่อไปนี้ใน AndroidManifest.xml.
<manifest>
<activity android:name="YOUR_MAIN_ACTIVITY">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="${applicationId}" />
</intent-filter>
</activity>
</manifest>
การใช้ UA Deferred Deep Links¶
ลิงก์เชิญชวนแบบดีฟ (UA deferred deep links) คือ ลิงก์รหัสเชิญ (URLs) ที่จัดเตรียมไว้เพื่อมอบรางวัลเชิญชวนให้กับผู้ใช้ และทำงานในสองวิธีดังต่อไปนี้:
- เมื่อผู้ใช้ติดตั้งแอปเกมแล้ว การคลิกที่ลิงก์จะเปิดแอปเกม นำทางไปยังตำแหน่งเฉพาะภายในแอป และให้รางวัลเชิญชวน
- เมื่อผู้ใช้ยังไม่ได้ติดตั้งแอปเกม การคลิกที่ลิงก์จะนำผู้ใช้ไปยังตลาดเพื่อดาวน์โหลดแอปเกม หลังจากติดตั้งและเปิดแอปเกมแล้ว รางวัลเชิญชวนจะถูกมอบให้ผ่านข้อมูลตัวระบุที่รวมอยู่ในลิงก์เชิญ
ในการใช้ลิงก์ลึกแบบเลื่อนเวลา ให้เพิ่มสิ่งต่อไปนี้ลงในไฟล์ AndroidManifest.xml ของคุณ
<activity
android:name="com.hive.userengagement.DeferredDeeplinkActivity"
android:exported="true">
<!-- Add this when using the sandbox server -->
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="sandbox-promotion.qpyou.cn"
android:pathPattern="/deeplink/${applicationId}/vid/.*" />
</intent-filter>
<!-- Add this when using the production server -->
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="promotion.qpyou.cn"
android:pathPattern="/deeplink/${applicationId}/vid/.*" />
</intent-filter>
</activity>
ลิงก์เชิงลึกแบบเลื่อนลอยรองรับเฉพาะ Google Play Store บน Android เท่านั้น ตั้งค่าหากคุณต้องการแชร์ลิงก์เชิญเพื่อนผ่าน User Acquisition(UA) คุณสามารถใช้วิธีที่มีอยู่หรือวิธีลิงก์เชิงลึกแบบเลื่อนลอยได้อย่างอิสระ
ลำดับการดำเนินการสำหรับ การได้มาซึ่งผู้ใช้ (UA) โดยใช้ UA Deferred Deep Links มีดังนี้:
- ผู้ใช้ A แชร์ลิงก์เชื่อมโยงลึกแบบเลื่อนเวลาโดยใช้ลิงก์เชิญ UA
- เมื่อผู้ใช้ B ได้รับและเข้าถึงแอปผ่านลิงก์เชิญ เซิร์ฟเวอร์จะวิเคราะห์ข้อมูลลิงก์เพื่อยืนยันว่า B ได้เล่นเกมตามคำเชิญของ A: การได้รับข้อมูลสำหรับรางวัล
- หากแอปยังไม่ได้ติดตั้งบนอุปกรณ์ของผู้ใช้ B ลิงก์จะนำทางพวกเขาไปติดตั้งแอป หากติดตั้งแล้ว แอปจะถูกเปิดใช้งานและข้อมูลของทั้ง A และ B จะถูกส่งไปยังเซิร์ฟเวอร์โปรโมชัน
Note
ลิงก์เชิงลึกที่รอการดำเนินการจะนำผู้ใช้ไปติดตั้งแอปหากยังไม่มี และส่งมอบข้อมูลลิงก์ทันทีหลังจากที่แอปถูกเปิดใช้งานหลังการติดตั้ง。
การใช้ลิงก์โดยตรง¶
ลิงก์ตรงคือ URL ที่นำผู้ใช้ไปยังตำแหน่งเฉพาะภายในแอปเกม (หลังจากติดตั้งแอปเกม) เมื่อคลิก หรือเปิดเผยเว็บวิวเฉพาะเพื่อกระตุ้นการมีส่วนร่วมของผู้ใช้
ที่อยู่ปลายทางที่ผู้ใช้ถูกนำไปยังผ่านลิงก์ตรงถูกกำหนดใน Hive Console > การจัดการลิงก์ตรง และปลายทางต่างๆ เช่น ตลาด, สถานที่เฉพาะภายในแอปเกม (ลิงก์ลึก), และเว็บวิวเฉพาะสามารถกำหนดค่าได้อย่างยืดหยุ่นตามสภาพแวดล้อมของระบบปฏิบัติการของผู้ใช้
ลำดับการดำเนินการเมื่อใช้ลิงก์โดยตรงร่วมกับแอปเกมมีดังนี้:
- แชร์ลิงก์ตรงเป็นลิงก์ปลายทางต่างๆ (ลิงก์ตลาด, ลิงก์ลึก, URL เว็บ)
- เมื่อผู้ใช้คลิกลิงก์ตรง จะทำงานตามที่กำหนดใน การจัดการลิงก์ตรงใน Hive Console > การจัดการลิงก์ตรง: - การนำทางไปยังตลาด: ไม่คำนึงถึงสถานะการติดตั้งแอปเกมของผู้ใช้ ให้นำทางไปยังลิงก์ตลาดที่กำหนดใน Hive Console > การจัดการลิงก์ตรง - การนำทางในแอป (ลิงก์ลึก) - หากแอปเกมติดตั้งในสภาพแวดล้อมของผู้ใช้: ให้นำทางไปยังตำแหน่งที่กำหนดภายในแอปเกม (ลิงก์ลึกแบบสคีม) - หากแอปเกมไม่ได้ติดตั้งในสภาพแวดล้อมของผู้ใช้: ให้นำทางไปยัง ตำแหน่งการติดตั้งแอปเกมในตลาด ที่รองรับโดยแต่ละสภาพแวดล้อมของ OS หรือ URL การนำทางผู้ใช้ที่ไม่ได้ติดตั้ง ที่กำหนดเมื่อสร้างลิงก์ลึก - URL เว็บ: ไม่คำนึงถึงสถานะการติดตั้งแอปเกมของผู้ใช้ ให้นำทางไปยังเว็บวิวเฉพาะภายนอกเกม
- เมื่อผู้ใช้ดำเนินการตามลำดับ 'การดำเนินการแอปเกม > การเข้าสู่ระบบ > การตั้งค่าความพร้อมใช้งานของผู้ใช้ (UE) SetReady action' แอปเกมจะดำเนินการเหตุการณ์ที่รวมอยู่ในข้อมูลลิงก์ (การทำฟังก์ชันที่เกี่ยวข้องหรือการแสดง UI, การทำฟังก์ชันที่กำหนดใน UE เป็นต้น)
Warning
เมื่อแอปเกมไม่ได้ติดตั้งในสภาพแวดล้อมของผู้ใช้ ข้อควรระวังเกี่ยวกับพฤติกรรมลิงก์ตรงตามเวอร์ชัน Hive SDK มีดังนี้:
- Hive SDK v4 ต่ำกว่า 25.10.0 - สนับสนุนการติดตั้งแอปเกมบนอุปกรณ์ของผู้ใช้ที่คลิกลิงก์โดยตรง แต่ถ้าแอปเกมถูกเรียกใช้ทันทีหลังการติดตั้ง ข้อมูลลิงก์โดยตรงจะไม่ถูกส่ง - หลังจากการติดตั้งแอปเกมเสร็จสิ้น การคลิกที่ลิงก์โดยตรงอีกครั้งจะส่งข้อมูลลิงก์โดยตรงไปยังแอปเกมพร้อมกับการเรียกใช้แอปเกม เหตุการณ์จะถูกดำเนินการ
- Hive SDK v4 25.10.0 ขึ้นไป - สนับสนุนการติดตั้งแอปเกมบนอุปกรณ์ของผู้ใช้ที่คลิกลิงก์โดยตรง และถ้าแอปเกมถูกเรียกใช้ทันทีหลังการติดตั้ง ลิงก์โดยตรงจะทำงานในสองวิธีดังนี้: - แอปเกมจะสื่อสารกับเซิร์ฟเวอร์โปรโมชันของ Hive SDK เพื่อขอข้อมูลลิงก์โดยตรง เซิร์ฟเวอร์โปรโมชันจะตรวจสอบประวัติอุปกรณ์และข้อมูลการสื่อสารของผู้ใช้ที่คลิกลิงก์โดยตรงเป็นครั้งแรกและส่งข้อมูลลิงก์โดยตรงที่เหมาะสมไปยังไคลเอนต์แอปเกม เหตุการณ์จะถูกดำเนินการ - หลังจากการติดตั้งแอปเกมเสร็จสิ้น การคลิกที่ลิงก์โดยตรงอีกครั้งจะส่งข้อมูลลิงก์โดยตรงไปยังแอปเกมพร้อมกับการเรียกใช้แอปเกม เหตุการณ์จะถูกดำเนินการ
ในการใช้ฟังก์ชันลิงก์ตรงใน Hive SDK สำหรับ Android ให้เพิ่มเนื้อหาต่อไปนี้ลงใน AndroidManifest.xml.
<manifest>
<activity android:name="YOUR_MAIN_ACTIVITY">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="${applicationId}.directlink" />
</intent-filter>
</activity>
</manifest>