ข้ามไปที่เนื้อหา

Android

คู่มือนี้ให้คำแนะนำในการตั้งค่าฟีเจอร์การตรวจสอบสิทธิ์ใน SDK ของ Hive บน Android.

การเพิ่มฟีเจอร์

คุณต้องเพิ่มไลบรารีภายนอกที่สอดคล้องกับไฟล์ build.gradle ระดับโมดูล เพียงเพิ่มฟีเจอร์การตรวจสอบสิทธิ์ที่คุณจะใช้เท่านั้น

ด้านล่างนี้เป็นตัวอย่างของการเพิ่มไลบรารีภายนอกไปยังไฟล์ build.gradle ระดับโมดูล

dependencies {
   // Feature-specific settings. Add only the features you are using.
   // AuthV4 Device Management Service
   implementation "com.com2us.android.hive:hive-authv4-device-management"
   // AuthV4 Google In-App Update
   implementation "com.com2us.android.hive:hive-authv4-google-inappupdate"
   // AuthV4 Google reCAPTCHA
   implementation "com.com2us.android.hive:hive-authv4-google-recaptcha"
   // AuthV4 Real Name Verification (China)
   implementation "com.com2us.android.hive:hive-authv4-real-name-verification"
}

เพิ่ม IdP

เพิ่มไลบรารีภายนอกลงในไฟล์ build.gradle ระดับโมดูล เพียงแค่เพิ่ม IdP ที่คุณจะใช้เท่านั้น

ด้านล่างนี้คือตัวอย่างการเพิ่มไลบรารีภายนอกไปยังไฟล์ build.gradle ระดับโมดูล ฟีเจอร์ การเข้าสู่ระบบแขก สามารถใช้งานได้โดยไม่ต้องเพิ่มไลบรารีใดๆ

dependencies {
    // IdP-specific settings. Add only the IdPs you are using.

    // Apple Login
    implementation "com.com2us.android.hive:hive-authv4-provider-apple-signin"

    // Facebook Login
    implementation "com.com2us.android.hive:hive-authv4-provider-facebook"

    // Google Play Games Login
    // `hive-authv4-provider-google-playgames` includes the `play-service-games-v2` library.
    implementation "com.com2us.android.hive:hive-authv4-provider-google-playgames"

    // Google Login
    // Google Play Games Login and Google Login are different login methods.
    implementation "com.com2us.android.hive:hive-authv4-provider-google-signin"

    // Hive Membership Login
    implementation "com.com2us.android.hive:hive-authv4-provider-hive-membership"

    // Huawei Login
    implementation "com.com2us.android.hive:hive-authv4-provider-huawei"

    // LINE Login
    // To apply the LINE library, minSdkVersion 24 or higher is required.
    implementation "com.com2us.android.hive:hive-authv4-provider-line"

    // QQ Login
    implementation "com.com2us.android.hive:hive-authv4-provider-qq"

        // Steam Login
        implementation "com.com2us.android.hive:hive-authv4-provider-steam"

    // VK library requires targetSdkVersion 32 or higher.
    implementation "com.com2us.android.hive:hive-authv4-provider-vk"

    // WeChat Login
    implementation "com.com2us.android.hive:hive-authv4-provider-wechat"

    // Weverse Login
    implementation 

        // X Login
    implementation "com.com2us.android.hive:hive-authv4-provider-x"

    // Telegram Login
    implementation "com.com2us.android.hive:hive-authv4-provider-telegram"
}

ป้อนค่าคีย์สำหรับแต่ละ IdP ใน hive_config.xml

กรุณาใส่ค่าคีย์ที่ได้รับจากแต่ละคอนโซล IdP ใน hive_config.xml สำหรับรายละเอียดเพิ่มเติม โปรดดูที่ ข้อกำหนดเบื้องต้นในการตรวจสอบสิทธิ์

การตั้งค่าเพิ่มเติมโดย IdP

ต้องการการกำหนดค่าที่เพิ่มเติมขึ้นอยู่กับ IdP.

การตั้งค่า IdP สำหรับการลงชื่อเข้าใช้ Google Play Games

ในการใช้การเข้าสู่ระบบ Google Play Games ให้ตั้งค่าดังต่อไปนี้

AndroidManifest.xml การตั้งค่า

นี่คือการกำหนดค่าของ Google Play Services ซึ่งเป็นค่าที่จำเป็นสำหรับการตั้งค่า การเข้าสู่ระบบ Google Play Games

<manifest>
    <application>
    <meta-data android:name="com.google.android.gms.games.APP_ID" android:value="@string/game_services_project_id"/>
    </application>
</manifest>

การกำหนดค่า Facebook IdP

ในการใช้การเข้าสู่ระบบ Facebook ให้กำหนดค่า AndroidManifest.xml ตามคำแนะนำด้านล่าง

ก่อนอื่น ให้ตั้งค่า FacebookContentProvider สำหรับการแชร์ลิงก์ รูปภาพ หรือวิดีโอในแอป ใส่ Facebook AppID โดยการเพิ่มมันไปยัง com.facebook.app.FacebookContentProvider เป็นค่าของแอตทริบิวต์ android:authorities Facebook AppID สามารถพบได้ใน ID แอปสำหรับแอปเกมที่ลงทะเบียนใน Facebook console



ตัวอย่าง: เมื่อ FacebookAppID คือ 123456789

<provider android:authorities="com.facebook.app.FacebookContentProvider123456789"
    android:name="com.facebook.FacebookContentProvider"
    android:exported="true"/>
Warning

การเปิดใช้งาน การแชร์ Facebook การประกาศสิทธิ์ FacebookContentProvider จะป้องกันการติดตั้งแอปพลิเคชัน Android ที่เฉพาะเจาะจงกับตลาดพร้อมกัน (เช่น Google Play Store, One Store).
หากคุณไม่ได้ใช้การแชร์ Facebook โปรดดูที่ คู่มือการแก้ไขปัญหา เพื่อลบการประกาศสิทธิ์ FacebookContentProvider.

เพิ่มการตั้งค่าสำหรับการกำหนดค่า Facebook AppId และ client token (จำเป็นสำหรับ Facebook v13 ขึ้นไป) สำหรับ client token ของ Facebook ให้ดูที่ การตั้งค่าแอป > การตั้งค่าขั้นสูง ใน Facebook console



ตัวอย่าง: เมื่อ FacebookAppID คือ 123456789

<meta-data
    android:name="com.facebook.sdk.ApplicationId"
    android:value="fb123456789"/>

ตัวอย่าง: เมื่อ Facebook Client Token คือ 123456789

<meta-data
    android:name="com.facebook.sdk.ClientToken"
    android:value="fb123456789"/>
Note

คุณยังสามารถตั้งค่า Facebook AppId และ client token ในไฟล์ string.xml ในกรณีนี้ ไม่จำเป็นต้องใช้คำนำหน้า fb เมื่อกำหนดค่า android:value สำหรับรายละเอียดเพิ่มเติม โปรดตรวจสอบ ที่นี่.

การกำหนดค่า QQ/wechat IdP

หากคุณสนับสนุน QQ หรือ WeChat IdP กรุณาใช้เนื้อหาเพิ่มเติมดังต่อไปนี้


ตั้งค่าการพึ่งพาสำหรับโฟลเดอร์ libs ในไฟล์ build.gradle ระดับโมดูล

dependencies {
   implementation fileTree(include: ['*.jar'], dir: 'libs')
   implementation fileTree(include: ['*.aar'], dir: 'libs')
}

เพิ่มไลบรารีภายนอกจาก Hive SDK เวอร์ชันการจัดจำหน่ายในโฟลเดอร์ libs ระดับโมดูล(.aar/.jar) รายชื่อไลบรารีภายนอกที่รวมอยู่ในเวอร์ชันการจัดจำหน่ายมีดังนี้

  • mid-sdk-2.10.jar (เพิ่มไฟล์นี้เมื่อรองรับการเข้าสู่ระบบ QQ IdP)
  • mta-sdk-2.0.0.jar (เพิ่มไฟล์นี้เมื่อรองรับการเข้าสู่ระบบ QQ หรือ Wechat IdP)
  • open_sdk_3.5.4.11_r3f56456_lite.jar (เพิ่มไฟล์นี้เมื่อรองรับการเข้าสู่ระบบ QQ IdP)

การกำหนดค่า Huawei IdP

  1. เพิ่ม agconnect-services.json
    • เพิ่มไฟล์ agconnect-services.json ที่ดาวน์โหลดจากคอนโซล Huawei ลงในโฟลเดอร์โปรเจกต์
  2. กำหนดค่าโปรเจกต์ * ไฟล์ build.gradle
    • เพิ่มปลั๊กอิน AppGallery Connect และที่อยู่ Maven
      buildscript {
          repositories {
              google()
              jcenter()
              // Huawei HMS Core SDK.
              maven {url 'https://developer.huawei.com/repo/'}
          }
          dependencies {
              ...
              // Huawei AppGallery Connect plugin
              classpath 'com.huawei.agconnect:agcp:1.9.1.301'
          }
      }
      allprojects {
          repositories {
              google()
              jcenter()
              /// Huawei HMS Core SDK.
              maven {url 'https://developer.huawei.com/repo/'}
          }
      }  
      
  3. กำหนดค่าแอป * ไฟล์ build.gradle
    • เพิ่มไลบรารีการตรวจสอบสิทธิ์ของ Huawei และปลั๊กอิน
      dependencies {
          // Huawei Dependency
          implementation "com.com2us.android.hive:hive-authv4-provider-huawei" // Huawei authentication
      }
      apply plugin: 'com.huawei.agconnect'
      

การกำหนดค่า VK IdP

ในการใช้การเข้าสู่ระบบ VK ให้ตั้งค่าดังต่อไปนี้

androidmanifest.xml การตั้งค่า

การตั้งค่าที่จำเป็นสำหรับ VK login redirection.

<manifest>
    <application>
        <activity
            android:name="com.hive.authv4.provider.vk.HiveProviderVkActivity"
            android:exported="true"
            android:launchMode="singleTask">

            <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="vk${vkClientId}" />
                <data android:host="vk.com" />
            </intent-filter>

        </activity>
    </application>
</manifest>