Difference between revisions of "Firebase 教學說明"
From AdLocus
m (→加入 SDK Library) |
m (→加入 Firebase 專案) |
||
Line 2: | Line 2: | ||
== 加入 Firebase 專案 == | == 加入 Firebase 專案 == | ||
* [https://console.firebase.google.com AdLocus 登入Firebase控制台] | * [https://console.firebase.google.com AdLocus 登入Firebase控制台] | ||
+ | * 建立專案後新增應用程式 | ||
* FCM APNs 推播金鑰設定 設定:https://firebase.google.com/docs/cloud-messaging/ios/certs | * FCM APNs 推播金鑰設定 設定:https://firebase.google.com/docs/cloud-messaging/ios/certs | ||
Revision as of 11:07, 27 August 2020
加入 Firebase 專案
- AdLocus 登入Firebase控制台
- 建立專案後新增應用程式
- FCM APNs 推播金鑰設定 設定:https://firebase.google.com/docs/cloud-messaging/ios/certs
設定 Info.plist
- 在 Info.plist 中加入
- App Transport Security Settings
- Allow Arbitrary Loads = YES
- FirebaseAppDelegateProxyEnabled
- FirebaseAppDelegateProxyEnabled = NO
- App Transport Security Settings
- 地區堆播需要使用者開啟以下地理位置使用權限
- Privacy - Location Usage Description
- Privacy - Location Always and When In Use Usage Description
- Privacy - Location When In Use Usage Description
Important * Privacy - Location Always Usage Description This key is required if your iOS app uses APIs that access the user’s location at all times and deploys to targets earlier than iOS 11.
設定編譯相容性
- 在 Build Setting 中 Embedded Content Contains Swift Code 設為 YES
- Release 時移除模擬器用的 binary 檔:
- 在 Build Phases 中加入 Run Script
- 並填入:
APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}" # This script loops through the frameworks embedded in the application and # removes unused architectures. find "$APP_PATH" -name 'AdLocus.framework' -type d | while read -r FRAMEWORK do FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable) FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME" echo "Executable is $FRAMEWORK_EXECUTABLE_PATH" EXTRACTED_ARCHS=() for ARCH in $ARCHS do echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME" lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH" EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH") done echo "Merging extracted architectures: ${ARCHS}" lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}" rm "${EXTRACTED_ARCHS[@]}" echo "Replacing original executable with thinned version" rm "$FRAMEWORK_EXECUTABLE_PATH" mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH" done
iOS Capabilities 設定
- 在Capabilities 中開啟 Background Mode 並勾選
- Background fetch
- Location updates
- Remote Notifications
- 在Capabilities 中開啟 Push Notifications