Section 4/171 menit

4. Setup: Entitlements dan Associated Domains

4. Setup: Entitlements dan Associated Domains

1. Tambah Entitlement di Xcode

Di Xcode → pilih Target → Signing & Capabilities → + → "Associated Domains":

swift
webcredentials:yourdomain.com

Atau edit file .entitlements langsung:

swift
<!-- MyApp.entitlements -->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "...">
<plist version="1.0">
<dict>
    <key>com.apple.developer.associated-domains</key>
    <array>
        <string>webcredentials:yourdomain.com</string>
        <!-- Jika punya subdomain, tambahkan masing-masing: -->
        <string>webcredentials:api.yourdomain.com</string>
    </array>
</dict>
</plist>

2. Host apple-app-site-association di Server

Server harus menyajikan file JSON di: https://yourdomain.com/.well-known/apple-app-site-association

swift
{
    "webcredentials": {
        "apps": [
            "TEAMID.com.yourcompany.yourapp"
        ]
    }
}

Catatan penting:

  • Harus di HTTPS (HTTP tidak diterima)
  • Content-Type: application/json
  • Tidak boleh ada redirect
  • Team ID bisa dilihat di developer.apple.com → Membership

3. Verifikasi Setup

swift
# Verifikasi apple-app-site-association bisa diakses
curl -v https://yourdomain.com/.well-known/apple-app-site-association

# Verifikasi entitlement app
codesign -d --entitlements - MyApp.app
# Cari "com.apple.developer.associated-domains" di output