Skip to content

工程配置 ​

完成SDK文件導入後,接著就要工程配置了,分別有如下步驟配置。


一、配置基本信息 (必需配置項) 配置 ​

所有配置都在info.plist文件上完成,配置所需要的值在configuration_data.txt文件上標註

  • 1、配置Bundle id:在info.plist裡找到Key為Bundle identifier項,把對應的值填上(如,值為:com.gamedreamer.demo);
  • 2、在Build Settings裡找到Other Linker Flags,增加一項-ObjC效果如圖:
  • 3、配置版本號:在info.plist裡找到Key為Bundle version和Bundle versions string, short項,把對應的值填上(此值需和遊戲負責人協議)。

效果如圖:


二、工程swift配置 (必需配置項) ​

由於 SDK 的最新版本依賴了 swift 的語言,所以 Xcode 工程得增加 swift 的依賴(20.12.22及其之後版本需配置):

以下兩點需要您留意的,第一點是必選項,第二點是可選項如下:

xml
1、Target -> Build Settings -> Build Options -> Always Embed Swift Standard Libraries -> YES
2、由于一些引擎导出来的Xcode版本比较低的情况,会出现没有swift compiler,所以可以通过在游戏工程手动添加一个空内容的swift文件来自动添加swift compiler。

三、配置推送功能 (必需配置項) ​

  • 1、Xcode 11.0以下版本,開啟通知推送:在Project -> Targets -> Capabilities找到Push Notifications,並將其開啟。

效果如圖:

  • 2、Xcode 11.0以上版本,開啟通知推送:在Project -> Targets -> Signing & Capabilities -> +Capability找到Push Notifications,雙擊進行添加。

效果如圖:


四、配置權限信息 (必需配置項) ​

  • 1、配置Schemes 白名單:在info.plist裡添加一個Key值為LSApplicationQueriesSchemes,Type值為Array類型的數據,並在該數組裡分別添加11個String類型的item, Value值為fbauth2的子數據, Value值為fbapi的子數據, Value值為fbshareextension的子數據, Value值為fb-messenger-share-api的子數據, Value值為line3rdp.加上你的工程的bundleId的子數據, Value值為line的子數據, Value值為lineauth的子數據, Value值為lineauth2的子數據, Value值為twitter的子數據, Value值為twitterauth的子數據, Value值為whatsapp的子數據; *(1.8.0421及其之前版本的SDK不需要配置Value為twitter,twitterauth的子數據) 效果如圖:
  • 2、配置使用相冊的使用權限:在info.plist裡添加Key值為NSPhotoLibraryUsageDescription和NSPhotoLibraryAddUsageDescription,Type值為string類型的數據,這2個的value值一樣,值如下(根據遊戲上架的地區語言不同而value值也不一樣):
地區語言所填值
繁體中文將您的遊客安全資料存儲到手機相冊
簡體中文将您的游客安全资料存储到手机相册
泰語จัดเก็บข้อมูลบัญชีของคุณเข้าในอัลบั้มโทรศัพท์
印尼語Data anda akan disimpan di Albums
英語Save your information of guest account into the album of your device
韓文게스트정보는 캘러리에서 저장되었습니다
日本語ゲストアカウント資料をアルバムに保存する

效果如圖:


五、配置Facebook相關信息 (必需配置項) ​

  • 1、配置Facebook App ID:在info.plist裡添加一個Key值為FacebookAppID,Type值為String類型的數據,然後把對應的值填上(對應的值在configuration_data.txt文件上);
  • 2、配置URL Schemes:在Project -> Targets -> Info -> URL Types 中的URL Schemes填空框填入相應的值,其填值規則是字符串“fb”+facebook app id;
  • 3、配置Facebook Client Token:在info.plist裡添加一個Key值為FacebookClientToken ,Type值為String類型的數據,然後把對應的值填上(對應的值在configuration_data.txt文件上);
  • 4、工程配置Build Phases -> Link Binary With LIbraries -> 添加系統庫Accelerate.framework.

效果如圖:


六、配置Line相關信息 (可選配置項) ​

  • 1、配置Line App ID:在info.plist裡添加一個Key值為LineSDKConfig,Type值為Dictionary類型的數據,再在LineSDKConfig加上一個String類型ChannelID的item,然後把對應的值填上(對應的值在configuration_data.txt文件上);
  • 2、配置URL Schemes:在Project -> Targets -> Info -> URL Types 中的URL Schemes加入一項,對應的值為line3rdp.加上你的工程的bundleId。

效果如圖:


七、配置Twitter相關信息 (可選配置項) ​

  • 1、找到Twitter ID:在configuration_data.txt文件裡,Twitter對應的值;(如果沒有Twitter字段請忽略)如圖:
  • 2、配置URL Schemes:在Project -> Targets -> Info -> URL Types 中的URL Schemes加入一項,對應的值為上一步中拿到的Twitter ID。

效果如圖:


八、配置Google相關信息 (可選配置項) ​

  • 1、找到Google ID:在configuration_data.txt文件裡,Google對應的值;(如果沒有Google字段請忽略)如圖:
  • 2、配置URL Schemes:在Project -> Targets -> Info -> URL Types 中的URL Schemes加入一項,對應的值為上一步中拿到的Google ID。

效果如圖:


九、配置appsflyer相關信息 ​

  • 1、配置appsflyer回報地址 Advertising attribution report endpoint URL:在info.plist裡添加一個Key值為Advertising attribution report endpoint URL,Type值為String類型的數據,填入https://appsflyer-skadnetwork.com/。

效果如圖:

  • 2、配置AppsFlyer URL Schemes:在Project -> Targets -> Info -> URL Types 中的URL Schemes填空框填入相應的值,其填值規則是小寫GameCode+facebook app id,可以通過GamedreamerResources.bundle -> GamedreamerConfig.plist裡獲取GameCode參數值轉小寫;

效果如圖:


十、ios14的idfa權限配置 (必須配置項) ​

  • 1、info.plist

如下:

xml
<key>NSUserTrackingUsageDescription</key>
<string>《xxxx》希望獲取您設備的廣告識別碼(IDFA),此項資訊將用來提供您更好的廣告體驗。允許追蹤後,我們將根據您的網站活動資訊,為您投遞個性化的廣告。</string>

十一、配置蘋果帳號登陸功能 (可選配置項) ​

  • 1、開啟蘋果帳號登錄:在Project -> Targets -> Signing & Capabilities -> +Capability找到 Sign In With Apple,雙擊進行添加。

效果如圖:


十二、universal link配置(可選配置項,請向技術人員確認是否配置該項) ​

  • 1,開啟 universal link功能: 在Project -> Targets -> Signing & Capabilities -> +Capability找到 Associated Domain,雙擊進行添加。如圖:
  • 2,在添加的associated domain中添加鏈接,鏈接內容請向技術人員確認。如圖:

十三、隱私清單文件配置 (建議配置項, 避免審核問題) ​

1、主工程添加PrivacyInfo文件,在info.plist -> 右鍵選擇 New File from Template 找到 App Privacy 點擊並創建 如圖:

2、PrivacyInfo文件配置參考如下:

xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>NSPrivacyTracking</key>
	<true/>
	<key>NSPrivacyCollectedDataTypes</key>
	<array>
		<dict>
			<key>NSPrivacyCollectedDataType</key>
			<string>NSPrivacyCollectedDataTypeDeviceID</string>
			<key>NSPrivacyCollectedDataTypeLinked</key>
			<false/>
			<key>NSPrivacyCollectedDataTypeTracking</key>
			<true/>
			<key>NSPrivacyCollectedDataTypePurposes</key>
			<array>
				<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
				<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
				<string>NSPrivacyCollectedDataTypePurposeDeveloperAdvertising</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyCollectedDataType</key>
			<string>NSPrivacyCollectedDataTypeEmailAddress</string>
			<key>NSPrivacyCollectedDataTypeLinked</key>
			<false/>
			<key>NSPrivacyCollectedDataTypeTracking</key>
			<false/>
			<key>NSPrivacyCollectedDataTypePurposes</key>
			<array>
				<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyCollectedDataType</key>
			<string>NSPrivacyCollectedDataTypePhoneNumber</string>
			<key>NSPrivacyCollectedDataTypeLinked</key>
			<false/>
			<key>NSPrivacyCollectedDataTypeTracking</key>
			<false/>
			<key>NSPrivacyCollectedDataTypePurposes</key>
			<array>
				<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyCollectedDataType</key>
			<string>NSPrivacyCollectedDataTypePhotosorVideos</string>
			<key>NSPrivacyCollectedDataTypeLinked</key>
			<false/>
			<key>NSPrivacyCollectedDataTypeTracking</key>
			<false/>
			<key>NSPrivacyCollectedDataTypePurposes</key>
			<array>
				<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyCollectedDataType</key>
			<string>NSPrivacyCollectedDataTypeUserID</string>
			<key>NSPrivacyCollectedDataTypeLinked</key>
			<false/>
			<key>NSPrivacyCollectedDataTypeTracking</key>
			<false/>
			<key>NSPrivacyCollectedDataTypePurposes</key>
			<array>
				<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
				<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyCollectedDataType</key>
			<string>NSPrivacyCollectedDataTypeOtherUsageData</string>
			<key>NSPrivacyCollectedDataTypeLinked</key>
			<false/>
			<key>NSPrivacyCollectedDataTypeTracking</key>
			<false/>
			<key>NSPrivacyCollectedDataTypePurposes</key>
			<array>
				<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyCollectedDataType</key>
			<string>NSPrivacyCollectedDataTypeCrashData</string>
			<key>NSPrivacyCollectedDataTypeLinked</key>
			<false/>
			<key>NSPrivacyCollectedDataTypeTracking</key>
			<false/>
			<key>NSPrivacyCollectedDataTypePurposes</key>
			<array>
				<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
				<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyCollectedDataType</key>
			<string>NSPrivacyCollectedDataTypeOtherDiagnosticData</string>
			<key>NSPrivacyCollectedDataTypeLinked</key>
			<false/>
			<key>NSPrivacyCollectedDataTypeTracking</key>
			<false/>
			<key>NSPrivacyCollectedDataTypePurposes</key>
			<array>
				<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
				<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
			</array>
		</dict>
	</array>
	<key>NSPrivacyTrackingDomains</key>
	<array>
		<string>ep1.facebook.com</string>
	</array>
	<key>NSPrivacyAccessedAPITypes</key>
	<array>
		<dict>
			<key>NSPrivacyAccessedAPIType</key>
			<string>NSPrivacyAccessedAPICategorySystemBootTime</string>
			<key>NSPrivacyAccessedAPITypeReasons</key>
			<array>
				<string>35F9.1</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyAccessedAPIType</key>
			<string>NSPrivacyAccessedAPICategoryDiskSpace</string>
			<key>NSPrivacyAccessedAPITypeReasons</key>
			<array>
				<string>E174.1</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyAccessedAPIType</key>
			<string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
			<key>NSPrivacyAccessedAPITypeReasons</key>
			<array>
				<string>C617.1</string>
			</array>
		</dict>
		<dict>
			<key>NSPrivacyAccessedAPIType</key>
			<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
			<key>NSPrivacyAccessedAPITypeReasons</key>
			<array>
				<string>CA92.1</string>
			</array>
		</dict>
	</array>
</dict>
</plist>

十四、Xcode 更新與 Apple官方政策要求 ​

This app was built with the iOS 18.1 SDK. Starting April 2026, all iOS and iPadOS apps must be built with the iOS 26 SDK or later, included in Xcode 26 or later, in order to be uploaded to App Store Connect or submitted for distribution. (90725)

為確保應用可以順利上傳 App Store 並通過審核,請通過 Apple 官方渠道獲取 Xcode 最新版本:

Mac App Store(推薦): https://apps.apple.com/app/xcode/id497799835

Apple Developer 下載中心(需登錄 Apple ID): https://developer.apple.com/download/

說明:以上為 Apple 官方發佈渠道,可獲取最新正式版及相關歷史版本。