2017-01-04 18 views
16

Tôi đang sử dụng Liên kết động Firebase để chia sẻ ứng dụng của mình (> = iOS 9) và mời mọi người tham dự sự kiện (ý tôi là nếu bạn có ứng dụng có thể tham gia sự kiện với DeepLink và nếu bạn không có nó, tôi sẽ gửi bạn đến appstore để tải xuống ứng dụng trước khi tham gia sự kiện).Liên kết động Firebase không hoạt động khi cài đặt ứng dụng từ appstore lần đầu tiên

Tôi làm theo các tài liệu bước căn cứ hỏa lực:

  • Tôi nhận được JSON có liên quan tại https://app_code.app.goo.gl/apple-app-site-association.
  • Nếu ứng dụng của tôi được cài đặt, DeepLink hoạt động rất tốt.
  • Nếu ứng dụng của tôi chưa được cài đặt, Deeplink sẽ gửi bạn đến cửa hàng ứng dụng, nhưng khi mở lần đầu tiên, nó không hoạt động và bạn không thể tham gia sự kiện.

Đây là mã của tôi để nhận được liên kết trên đầu cài đặt:

trong didFinishLaunchingWithOption:

FIROptions.default().deepLinkURLScheme = "com.jerem.ProjectAlphaSasasa" 
// "com.jerem.ProjectAlphaSasasa" is my app bundle Identifier 
    FIRApp.configure() 

và dựa trên tài liệu căn cứ hỏa lực, về mở cửa đầu tiên, tôi đang sử dụng các chức năng sau:

//MARK: First entry 
//when your app is opened for the first time after installation on any version of iOS. 
func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any]) -> Bool { 
    print("00000000000000000") 
    FIRCrashMessage("Link during first installation") 
    downloadEventWithDeepLink = true 
    downloadUrl = url 
    return application(app, open: url, sourceApplication: nil, annotation: [:]) 

} 

//same as previous but for older version ios 8 (not relevant) 
func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool { 
    let dynamicLink = FIRDynamicLinks.dynamicLinks()?.dynamicLink(fromCustomSchemeURL: url) 
    if let dynamicLink = dynamicLink { 

     downloadEventWithDeepLink = true 
     downloadUrl = dynamicLink.url 
     return true 
    } 

    return false 
} 

Trong trường hợp của tôi, downloadEventWithDeepLink là một lá cờ (toàn cầu) tôi kiểm tra sau khi đăng nhập của người dùng để ứng dụng của tôi (và sử dụng biến downloadUrl). Tôi đang làm gì sai với thiết lập?

Ngoài ra, tôi không biết cách gỡ lỗi. Có cách nào để mô phỏng một Appstore cài đặt đầu tiên trong Xcode? Để tìm hiểu xem các chức năng trước đó (Open Url) có được gọi không?

Cảm ơn sự giúp đỡ của bạn!

+0

tôi đã cùng một vấn đề nào bạn có được giải pháp nào? –

Trả lời

0

Tôi gặp sự cố tương tự với liên kết không nhận được sau khi cài đặt. Vấn đề là lược đồ url của tôi không được thiết lập chính xác.

Để làm cho nó hoạt động, tôi đã thay đổi các loại URL trong phần Thông tin của mục tiêu của tôi: Tôi đặt ID nhóm trong trường nhận dạng và lược đồ URL.

URL schemes setup

Tôi cũng thêm một dòng trong mã cài đặt của tôi về căn cứ hỏa lực:

FIRApp.configure() 
FIROptions.default().deepLinkURLScheme = "fr.machin.ES5" 
Các vấn đề liên quan