สร้างและใช้ SDK ที่เปิดใช้รันไทม์

1
Key concepts
2
Set up your development environment
3
Build an RE SDK
4
Consume the RE SDK
5
Testing, and building for distribution

สร้างและกำหนดค่าแอปทดสอบ

ส่วนนี้อธิบายวิธีตั้งค่าและเตรียมแอปให้พร้อมใช้งาน SDK ที่เปิดใช้รันไทม์ สำหรับการทดสอบในเครื่อง

เตรียมแอป

ก่อนอื่น ให้สร้างโปรเจ็กต์หรือโมดูลแบบสแตนด์อโลนแยกต่างหาก

ในสถานการณ์นี้ แอปจะไม่มีโค้ด SDK แต่จะประกาศเป็น ทรัพยากร Dependency ของ Maven แทน

การสร้างแอปที่ใช้ SDK ที่เปิดใช้รันไทม์ต้องใช้ Android Studio Ladybug Canary 1 ขึ้นไป และ Android Gradle Plugin (AGP) 8.7.0-alpha01 ขึ้นไป

  1. ทำตามขั้นตอนเดียวกันกับที่อธิบายไว้ก่อนหน้านี้เพื่อตั้งค่าสภาพแวดล้อมการพัฒนาและอุปกรณ์/โปรแกรมจำลองสำหรับการทดสอบ
  2. เปิดใช้รันไทม์ของ SDK โดยใช้ Flag ที่อธิบายไว้ในขั้นตอนที่ 3: เตรียมส่วน SDK

    # This enables the Privacy Sandbox for your project on Android Studio.
    android.experimental.privacysandboxsdk.enable=true
    android.experimental.privacysandboxsdk.requireServices=false
    
  3. เพิ่ม URL ของ Privacy Sandbox Maven ลงในไฟล์ build.gradle ระดับบนสุดของโปรเจ็กต์

        allprojects {
            repositories {
                google()
                maven {
                    url "https://maven.privacysandbox.com/v1/repository"
                    }
                }
            }
    
  4. เก็บทรัพยากร Dependency ของ Maven ไว้ในเป้าหมาย Maven ของไลบรารีโฆษณาที่มีอยู่ (SDK ที่รับรู้รันไทม์)

  5. เพิ่มบล็อก Privacy Sandbox ลงใน build.gradle ของโปรเจ็กต์โดยมีทรัพยากร Dependency ในไลบรารี SDK และตั้งค่า enable เป็น true

    plugins {
        id 'com.android.application'
        id 'org.jetbrains.kotlin.android'
    }
    
    android {
        //...
        privacySandbox {
            enable true
        }
        //...
    }
    
    dependencies {
        // SDK library dependency
        implementation(<maven coordinates to SDK library>)
    }
    
  6. ตอนนี้แอปสามารถใช้ API ของ SDK ในลักษณะเดียวกับที่อธิบายไว้ในส่วนการใช้ API

สร้างแอป

คุณสามารถสร้างแอปเป็น Android App Bundle (AAB) ได้ตามปกติ

ทดสอบ SDK ในเครื่อง

หากต้องการเรียกใช้แอปทดสอบ ให้ติดตั้ง SDK และแอปที่เปิดใช้รันไทม์ลงในอุปกรณ์ทดสอบหรือโปรแกรมจำลองโดยใช้ Android Studio

  1. เปิดโปรเจ็กต์ Android Studio สำหรับแอปทดสอบ
  2. ไปที่เรียกใช้ > แก้ไขการกำหนดค่า หน้าต่างการกำหนดค่า "เรียกใช้/แก้ไขข้อบกพร่อง" จะปรากฏขึ้น คุณสามารถติดตั้งใช้งานเป็น "APK เริ่มต้น" หรือ "APK จาก Bundle"
  3. ในส่วนตัวเลือกการเปิดใช้ ให้ตั้งค่าเปิดใช้เป็นกิจกรรมที่ระบุ
  4. คลิกเมนู 3 จุดข้างกิจกรรม แล้วเลือกกิจกรรมหลัก สำหรับลูกค้า
  5. คลิก Apply แล้วคลิก OK
  6. คลิกเรียกใช้เพื่อติดตั้งแอปไคลเอ็นต์และ SDK ในอุปกรณ์ทดสอบ

สร้าง SDK เพื่อการเผยแพร่

คุณต้องสร้าง SDK เป็น Android SDK Bundle (ASB) ก่อนจึงจะเผยแพร่ไปยัง App Store ได้ ASB คือแพ็กเกจการเผยแพร่ที่ไม่มีการลงนาม ซึ่งเทียบเท่ากับ Android App Bundle

ASB หรืออนุพันธ์ของ ASB ซึ่งก็คือ Android SDK Archive (ASAR) จะได้รับการแปลงโดย Bundletool ให้เป็นชุด APK ที่ติดตั้งได้พร้อมกับ AAB ของแอป นักพัฒนาแอป สามารถใช้ BundleTool ได้โดยตรงใน Android Studio (ปัจจุบันคือเวอร์ชัน Canary ) เพื่อส่งออก APK ทุกรูปแบบ

Bundletool รับ AAB และ ASB แล้วสามารถแสดงผลชุด APK ที่แตกต่างกันได้ดังนี้

  1. APK ที่สร้างขึ้นเพื่อเรียกใช้ในโหมดความเข้ากันได้แบบย้อนหลังของ SDK Runtime สำหรับ อุปกรณ์ที่ไม่รองรับ SDK Runtime (Android 13 และต่ำกว่า) APK นี้มีโค้ดทั้งหมดที่จำเป็นสำหรับทั้งแอปและ SDK
  2. APK ที่สร้างขึ้นเพื่อเรียกใช้โหมดรันไทม์ของ SDK สำหรับอุปกรณ์ที่เข้ากันได้กับ รันไทม์ของ SDK (Android 14 ขึ้นไป) APK นี้มีเฉพาะ โค้ดแอป โดยมี Stub API สำหรับ SDK ที่เปิดใช้รันไทม์
  3. APK ของ SDK ที่มีโค้ด SDK ที่เปิดใช้รันไทม์ ซึ่งมีจุดประสงค์เพื่อติดตั้งก่อน APK ของแอปที่อธิบายไว้ในขั้นตอนก่อนหน้า

คุณสร้าง ASB ได้ 2 วิธี ดังนี้

  • Android Studio
    1. สร้างโปรเจ็กต์ ซึ่งทำได้ด้วยการเรียกใช้โปรเจ็กต์ Build > Rebuild
    2. ไฟล์ ASB จะอยู่ในโมดูล ASB ที่เปิดใช้รันไทม์ใน build/outputs/asb/single/<your-asb-module-name>.asb
  • บรรทัดคำสั่งของ Bundletool - ทำตามวิธีการเหล่านี้

คุณต้องลงนาม SDK ด้วยคีย์การอัปโหลดก่อนจึงจะเผยแพร่ได้ ใช้คีย์การอัปโหลดนี้ เพื่อลงนาม ASB สำหรับการอัปโหลดไปยัง SDK Console Google จะใช้ ใบรับรองการอัปโหลดเพื่อยืนยันตัวตนของคุณ

ขั้นตอนต่อไปนี้เป็นภาพรวมของสิ่งที่คุณต้องทำเพื่อลงนามใน ASB

  1. สร้างคีย์สโตร์และคีย์การอัปโหลด ซึ่งเหมือนกับ การสร้างคีย์สโตร์และคีย์การอัปโหลดสำหรับแอป
  2. ลงนาม ASB ด้วยคีย์การอัปโหลด โดยเพิ่มบล็อก signingConfig ลงในไฟล์ build.gradle ที่ระบุคีย์และ Keystore ที่สร้างขึ้นใหม่
android {
  signingConfig {
    storeFile file(path-to-keystore.jks)
    storePassword "keystorePassword"
    keyAlias "UploadKey"
    keyPassword "keyPassword"
  }
}

App Store สามารถพัฒนากลยุทธ์ต่างๆ เพื่อใช้คอมโพเนนต์เหล่านี้ในการรองรับ การเผยแพร่แอปที่เปิดใช้รันไทม์ รันไทม์ของ SDK ทำงานร่วมกับ App Store อย่างต่อเนื่องเพื่อขยายการรองรับ SDK ที่เปิดใช้รันไทม์

ขั้นตอนที่ 4: ใช้ SDK ที่เปิดใช้รันไทม์