คู่มือนี้จะแสดงวิธีเพิ่มเหตุการณ์ในแอพลงในแอพใหม่หรือแอพที่มีอยู่โดยผสานการทำงาน Facebook SDK แล้วลงบันทึกเหตุการณ์เหล่านี้
มีการเปลี่ยนแปลงใน Facebook SDK สำหรับ iOS เราขอแนะนำให้อัพเกรดเป็น Facebook SDK สำหรับ iOS เวอร์ชั่นใหม่ ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่ส่วนการยินยอมสำหรับอุปกรณ์
คุณจะต้องดำเนินการดังต่อไปนี้
ไปที่แดชบอร์ดของแอพ คลิกแอพของฉัน และสร้างแอพใหม่ขึ้นมาหากคุณยังไม่มีแอพ ไปที่การตั้งค่า > พื้นฐาน เพื่อดูแผงรายละเอียดของแอพที่มี ID ของแอพ, ข้อมูลลับของแอพ และรายละเอียดอื่นๆ เกี่ยวกับแอพของคุณ
เลื่อนลงไปที่ด้านล่างของหน้า แล้วคลิกเพิ่มแพลตฟอร์ม เลือก iOS เพิ่มรายละเอียดแอพของคุณ แล้วบันทึกการเปลี่ยนแปลง
ตั้งค่าแอพของคุณเพื่อการโฆษณาโดยเพิ่มรายละเอียดต่อไปนี้
เรียนรู้เพิ่มเติมเกี่ยวกับการเพิ่มรายละเอียดลงในแอพของคุณ เช่น ไอคอนหรือหมวดหมู่ ได้ที่เอกสารเกี่ยวกับการพัฒนาแอพ
หากต้องการแสดงโฆษณาและวัดผลการติดตั้งในตัวจัดการโฆษณา ให้เชื่อมโยงบัญชีโฆษณาและบัญชีธุรกิจอย่างน้อย 1 บัญชีกับแอพของคุณ
ขั้นตอนต่อไปนี้จะใช้โปรแกรมจัดการแพ็คเกจ Swift ในการตั้งค่าสภาพแวดล้อมการพัฒนาของคุณใน Xcode
เพิ่มตัวระบุชุดรวมของคุณและเปิดใช้งานการลงชื่อเข้าใช้แบบครั้งเดียวสำหรับแอพของคุณ
การลงชื่อเข้าใช้ครั้งเดียว จะเปิดใช้การแจ้งเตือนจาก iOS |
Info.plist
ด้วยข้อมูลโค้ด XML ที่มีข้อมูลเกี่ยวกับแอพของคุณ หลังจากใช้การเข้าสู่ระบบด้วย Facebook เหตุการณ์ในแอพบางเหตุการณ์จะได้รับการลงบันทึกและเก็บรวบรวมไว้สำหรับตัวจัดการเหตุการณ์โดยอัตโนมัติ เว้นแต่คุณจะปิดใช้งานการลงบันทึกเหตุการณ์ในแอพอัตโนมัติ โปรดดูรายละเอียดเกี่ยวกับข้อมูลที่จะได้รับการเก็บรวบรวมและวิธีปิดใช้งานการลงบันทึกเหตุการณ์ในแอพอัตโนมัติที่การลงบันทึกเหตุการณ์ในแอพอัตโนมัติ
Info.plist
และเลือก Open As ▸ Source Code<dict>...</dict>
) <array><string>
ในคีย์ [CFBundleURLSchemes]
ให้แทนที่ APP-ID ด้วย ID ของแอพคุณ<string>
ในคีย์ FacebookAppID
ให้แทนที่ APP-ID ด้วย ID ของแอพคุณ<string>
ในคีย์ FacebookClientToken
ให้แทนที่ CLIENT-TOKEN ด้วยค่าที่พบได้ใน การตั้งค่า > ขั้นสูง > โทเค็นของไคลเอ็นต์ ในแดชบอร์ดของแอพคุณ<string>
ในคีย์ FacebookDisplayName
ให้แทนที่ APP-NAME ด้วยชื่อแอพของคุณInfo.plist
ของแอพพลิเคชั่นของคุณจำเป็นต้องมีสิ่งต่อไปนี้ด้วย คุณสามารถกำหนดการรวบรวมเหตุการณ์ในแอพอัตโนมัติให้เป็น “true” หรือ “false” ได้โดยตรง โดยเพิ่ม FacebookAutoLogAppEventsEnabled
เป็นคีย์ใน Info.plist
AppDelegate.swift
ด้วยโค้ดต่อไปนี้ โค้ดนี้จะส่งผลให้ SDK เริ่มทำงานเมื่อมีการเปิดใช้แอพ และช่วยให้ SDK รองรับการเข้าสู่ระบบและการแชร์จากแอพ Facebook แบบเนทีฟได้ เมื่อคุณเข้าสู่ระบบหรือทำการแชร์ มิฉะนั้น ผู้ใช้จะต้องเข้าสู่ระบบ Facebook เพื่อใช้เบราว์เซอร์ในแอพในการเข้าสู่ระบบ // AppDelegate.swift import UIKit import FacebookCore @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { func application( _ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? ) -> Bool { ApplicationDelegate.shared.application( application, didFinishLaunchingWithOptions: launchOptions ) return true } func application( _ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:] ) -> Bool { ApplicationDelegate.shared.application( app, open: url, sourceApplication: options[UIApplication.OpenURLOptionsKey.sourceApplication] as? String, annotation: options[UIApplication.OpenURLOptionsKey.annotation] ) } }
SceneDelegate
หากคุณใช้งาน iOS 13 อยู่ ให้เพิ่มเมธอดต่อไปนี้ให้กับ SceneDelegate
เพื่อให้การทำงานต่างๆ เช่น ฟังก์ชั่นการเข้าระบบหรือการแชร์ เป็นไปตามที่คาดหวัง // SceneDelegate.swift import FacebookCore ... func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) { guard let url = URLContexts.first?.url else { return } ApplicationDelegate.shared.application( UIApplication.shared, open: url, sourceApplication: nil, annotation: [UIApplication.OpenURLOptionsKey.annotation] ) }
เหตุการณ์ในแอพของคุณจะได้รับการติดตามด้วย 3 วิธี ดังนี้
เหตุการณ์ต่างๆ ที่แอพของคุณเก็บรวบรวมและส่งให้กับ Facebook อาจกำหนดให้คุณต้องเปิดเผยประเภทของข้อมูลเหล่านี้ในแบบสอบถามบน App Store Connect ทั้งนี้ คุณมีหน้าที่รับผิดชอบในการรับรองว่าคำตอบในแบบสอบถามสอดคล้องกับนโยบายความเป็นส่วนตัวสำหรับแอพพลิเคชั่นของคุณ โปรดดูที่บทความเกี่ยวกับรายละเอียดความเป็นส่วนตัวสำหรับ App Store ของ Apple เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับประเภทข้อมูลที่คุณจะต้องเปิดเผย
เมื่อใช้ Facebook SDK เหตุการณ์บางอย่างในแอพของคุณจะได้รับการลงบันทึกและเก็บรวบรวมไว้สำหรับตัวจัดการเหตุการณ์ของ Facebook โดยอัตโนมัติ เว้นแต่คุณจะปิดใช้งานการลงบันทึกเหตุการณ์แบบอัตโนมัติ เหตุการณ์เหล่านี้จะเกี่ยวข้องกับกรณีการใช้งานทั้งหมด ไม่ว่าจะเป็นการกำหนดเป้าหมาย การวัดผล หรือการปรับให้เหมาะสม
เหตุการณ์สำคัญที่ได้รับการเก็บรวบรวมโดยเป็นส่วนหนึ่งของการลงบันทึกเหตุการณ์ในแอพโดยอัตโนมัติมีอยู่ 3 อย่าง ได้แก่ การติดตั้งแอพ การเปิดใช้แอพ และการซื้อ เมื่อเปิดใช้งานการลงบันทึกแบบอัตโนมัติ ผู้ลงโฆษณาจะสามารถปิดใช้งานเหตุการณ์เหล่านี้ได้ รวมถึงเหตุการณ์อื่นๆ ภายใน Facebook เช่น เหตุการณ์อิมเพรสชั่นของการเข้าสู่ระบบ อย่างไรก็ตาม หากคุณปิดใช้งานการลงบันทึกแบบอัตโนมัติแต่ยังคงต้องการลงบันทึกเหตุการณ์ที่เฉพาะเจาะจง เช่น เหตุการณ์การติดตั้งหรือการซื้อ ให้ปรับใช้การลงบันทึกสำหรับเหตุการณ์เหล่านี้ในแอพของคุณด้วยตนเอง
เหตุการณ์ | รายละเอียด |
---|---|
การติดตั้งแอพ | ครั้งแรกที่ผู้ใช้ใหม่เปิดใช้งานแอพหรือครั้งแรกที่แอพเริ่มทำงานบนอุปกรณ์เครื่องหนึ่งๆ |
การเปิดใช้แอพ | เมื่อผู้ใช้เปิดใช้แอพของคุณ Facebook SDK จะเริ่มทำงานและเหตุการณ์ดังกล่าวจะได้รับการลงบันทึกไว้ อย่างไรก็ตาม หากเหตุการณ์การเปิดใช้แอพครั้งที่ 2 เกิดขึ้นภายในเวลาไม่เกิน 60 วินาทีนับจากการเปิดใช้ครั้งแรก ระบบจะไม่ลงบันทึกเหตุการณ์การเปิดใช้แอพครั้งที่ 2 นั้น |
การซื้อในแอพ | เมื่อ Apple App Store หรือ Google Play ประมวลผลการซื้อเสร็จสิ้น หากคุณใช้แพลตฟอร์มการชำระเงินอื่นๆ คุณจะต้องเพิ่มโค้ดเหตุการณ์การซื้อด้วยตนเอง |
รายงานข้อขัดข้องสำหรับ Facebook SDK (สำหรับการใช้งานใน Facebook เท่านั้น) | หากแอพของคุณเกิดหยุดทำงานเนื่องจาก Facebook SDK ระบบจะสร้างรายงานการหยุดทำงานขึ้นมาและส่งไปยัง Facebook เมื่อมีการเปิดแอพของคุณขึ้นมาใหม่ รายงานนี้จะไม่มีข้อมูลผู้ใช้ และช่วยให้ Facebook สามารถรับรองได้ถึงคุณภาพและความเสถียรของ SDK หากต้องการเลือกไม่ใช้การลงบันทึกเหตุการณ์นี้ ให้ปิดใช้งานเหตุการณ์แบบลงบันทึกโดยอัตโนมัติ |
ตั้งแต่ iOS 14.5 เป็นต้นไป คุณจะต้องตั้งค่า isAdvertiserTrackingEnabled
และลงบันทึกแต่ละครั้งที่อนุญาตให้อุปกรณ์แชร์ข้อมูลกับ Facebook
หากอุปกรณ์ให้การยินยอม ให้ตั้งค่า Settings.shared.isAdvertiserTrackingEnabled = true
หากอุปกรณ์ไม่อนุญาตให้ติดตาม ให้ตั้งค่า Settings.shared.isAdvertiserTrackingEnabled = false
หากต้องการปิดใช้งานการลงบันทึกเหตุการณ์โดยอัตโนมัติ ให้เปิด Info.plist
ของแอพพลิเคชั่นโดยใช้โค้ดที่ใช้ใน Xcode และเพิ่ม XML ต่อไปนี้ลงในพจนานุกรมคุณสมบัติ ดังนี้
<key>FacebookAutoLogAppEventsEnabled</key> <false/>
ในบางกรณี คุณอาจต้องทำให้การเก็บรวบรวมเหตุการณ์แบบลงบันทึกโดยอัตโนมัติล่าช้าลง เช่น เพื่อขอการยินยอมจากผู้ใช้หรือดำเนินการตามข้อผูกพันทางกฎหมายให้สมบูรณ์ แทนที่จะปิดใช้งาน ในกรณีนี้ ให้ตั้งค่า Settings.shared.isAutoLogAppEventsEnabled = true
เพื่อเปิดใช้งานการลงบันทึกโดยอัตโนมัติอีกครั้งหลังจากผู้ใช้ปลายทางให้การยินยอมแล้ว
หากต้องการระงับการใช้งานการเก็บรวบรวมอีกครั้งไม่ว่าจะด้วยเหตุผลใดๆ ให้ตั้งค่า Settings.shared.isAutoLogAppEventsEnabled = false
คุณสามารถปิดใช้งานการลงบันทึกเหตุการณ์การซื้อในแอพแบบอัตโนมัติโดยใช้แดชบอร์ดของแอพได้อีกด้วย ให้ไปที่การ์ด iOS ในส่วนพื้นฐาน>การตั้งค่า และสับสวิตช์เป็นไม่
หากต้องการปิดใช้งานการรวบรวม advertiser-id
ให้เปิด .plist
ของแอพพลิเคชั่นโดยใช้โค้ดที่ใช้ใน Xcode และเพิ่ม XML ต่อไปนี้ลงในพจนานุกรมคุณสมบัติ ดังนี้
<key>FacebookAdvertiserIDCollectionEnabled</key> <false/>
ในบางกรณี คุณอาจต้องทำให้การเก็บรวบรวม advertiser_id
ล่าช้าลง เช่น เพื่อขอการยินยอมจากผู้ใช้หรือดำเนินการตามข้อผูกพันทางกฎหมายให้สมบูรณ์ แทนที่จะปิดใช้งาน ในกรณีนี้ ให้ตั้งค่า Settings.shared.isAdvertiserIDCollectionEnabled = true
หลังจากผู้ใช้ปลายทางให้การยินยอมแล้ว
หากต้องการระงับการใช้งานการเก็บรวบรวมไม่ว่าจะด้วยเหตุผลใดๆ ให้ตั้งค่า Settings.shared.isAdvertiserIDCollectionEnabled = false
หากต้องการลงบันทึกเหตุการณ์ที่กำหนดเอง ให้ทำเพียงส่งชื่อของเหตุการณ์นั้นในรูปแบบ AppEvents.Name
ดังนี้
AppEvents.shared.logEvent(AppEvents.Name("battledAnOrc"))
Facebook ได้สร้างชุดพารามิเตอร์เหตุการณ์ที่เป็นประโยชน์สำหรับการรวมเข้ากับเหตุการณ์แบบมาตรฐานหรือกับเหตุการณ์ที่คุณกำหนดเอง คุณยังสามารถระบุพารามิเตอร์ของคุณเองได้อีกด้วย
พารามิเตอร์ที่กำหนดไว้ให้แล้วเหล่านี้มีวัตถุประสงค์เพื่อให้แนวทางเกี่ยวกับรูปแบบการลงบันทึกทั่วไป และอาจมีรูปแบบที่อ่านได้ง่ายขึ้นในการรายงานและ UI อื่นๆ บันทึกชุดพารามิเตอร์ที่คุณต้องการดูรายการแยกย่อย คำอธิบายที่แนะนำเหล่านี้เป็นเพียงแนวทางเท่านั้น คุณสามารถใช้ค่าพารามิเตอร์ดังกล่าวนี้ได้ตามความเหมาะสมสำหรับแอพ
พารามิเตอร์จะส่งผ่านพจนานุกรมซึ่งมีคีย์ที่มีชื่อพารามิเตอร์อยู่ในรูปแบบ AppEvents.ParameterName
และค่าจะต้องอยู่ในรูปแบบ String
หรือตัวเลข (Int
, Double
ฯลฯ)
ตัวช่วยเหลือในการลงโฆษณาแอพช่วยให้คุณสามารถทดสอบเหตุการณ์ในแอพภายในแอพของคุณได้ เพื่อให้แน่ใจว่าแอพของคุณจะส่งเหตุการณ์ไปยัง Facebook
หากคุณวางแผนปรับเหตุการณ์ให้เหมาะสม/ติดตามเหตุการณ์ต่างๆ ของคุณในแคมเปญ SKAdNetwork คุณจำเป็นต้องกำหนดค่าลำดับความสำคัญของเหตุการณ์ให้เหมาะสมด้วย (หรือเรียกกันว่า ค่าคอนเวอร์ชั่น) เพื่อให้ Facebook รับคอนเวอร์ชั่นได้อย่างถูกต้อง รายละเอียดเพิ่มเติมดูได้ที่นี่
เราได้สร้างตัวอย่างแอพประเภทต่างๆ ขึ้นมาบางส่วน เพื่อให้คุณดูวิธีที่สามารถใช้เหตุการณ์ในแอพได้ง่ายขึ้น แอพตัวอย่างแต่ละแอพจะให้ข้อมูลแยกย่อยของเหตุการณ์และพารามิเตอร์ต่างๆ ที่เก็บรวบรวมไว้ได้ โดยแบ่งเป็นรายหน้าจอ ในส่วนท้ายของแต่ละส่วนจะมีตามรางที่ระบุรายการเหตุการณ์และพารามิเตอร์ที่แนะนำสำหรับแต่ละแอพ และคุณสามารถสร้างเหตุการณ์และพารามิเตอร์ของตัวคุณเองได้ หากจำเป็น