LecleVietnam / LeclePackageIssue

1 stars 0 forks source link

Lecle_social_share issue in iOS. #17

Open expoders8 opened 1 year ago

expoders8 commented 1 year ago

@LecleVietnam We used your package in our application to share images in Facebook and WhatsApp; it worked fine in Android, but when we used the latest version (0.5.0+1) of your package in iOS, it gave me an error. So, please help me to solve the error and successfully launch my application on iOS.

========================######################=========================

Here is the error which I get while pod install:

Screenshot 2023-03-15 at 5 44 14 PM

!] Error installing TikTokOpenSDK [!] /usr/bin/curl -f -L -o /var/folders/ly/wt6v9xs518x1d52md_08s_j00000gn/T/d20230315-51406-1jlia95/file.zip https://sf16-muse-va.ibytedtos.com/obj/tiktok-open-platform/TikTokOpenSDK.xcframework-5.0.15.zip --create-dirs --netrc-optional --retry 2 -A 'CocoaPods/1.12.0 cocoapods-downloader/1.6.3'

% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- 0:01:15 --:--:-- 0 curl: (28) Failed to connect to sf16-muse-va.ibytedtos.com port 443 after 75097 ms: Operation timed out Warning: Problem : timeout. Will retry in 1 seconds. 2 retries left. 0 0 0 0 0 0 0 0 --:--:-- 0:01:16 --:--:-- 0 curl: (28) Failed to connect to sf16-muse-va.ibytedtos.com port 443 after 76062 ms: Operation timed out Warning: Problem : timeout. Will retry in 2 seconds. 1 retries left. 0 0 0 0 0 0 0 0 --:--:-- 0:01:15 --:--:-- 0 curl: (28) Failed to connect to sf16-muse-va.ibytedtos.com port 443 after 75017 ms: Operation timed out

========================######################=========================

This is my log, which I get while running pod install.

apple@admin ios % pod install Analyzing dependencies cloud_firestore: Using Firebase SDK version '10.3.0' defined in 'firebase_core' firebase_auth: Using Firebase SDK version '10.3.0' defined in 'firebase_core' firebase_core: Using Firebase SDK version '10.3.0' defined in 'firebase_core' firebase_messaging: Using Firebase SDK version '10.3.0' defined in 'firebase_core' /Users/apple/Projects/OG/OG_new/ios/.symlinks/plugins/lecle_social_share/ios/lecle_social_share.podspec:28: warning: key "EXCLUDED_ARCHS[sdk=iphonesimulator*]" is duplicated and overwritten on line 28 Downloading dependencies Installing AppAuth (1.6.0) Installing BoringSSL-GRPC (0.0.24) Installing FBAEMKit (14.1.0) Installing FBSDKCoreKit (14.1.0) Installing FBSDKCoreKit_Basics (14.1.0) Installing FBSDKLoginKit (14.1.0) Installing FBSDKShareKit (14.1.0) Installing Firebase (10.3.0) Installing FirebaseAuth (10.3.0) Installing FirebaseCore (10.3.0) Installing FirebaseCoreInternal (10.3.0) Installing FirebaseFirestore (10.3.0) Installing FirebaseInstallations (10.3.0) Installing FirebaseMessaging (10.3.0) Installing Flutter (1.0.0) Installing GTMAppAuth (1.3.1) Installing GTMSessionFetcher (2.3.0) Installing GoogleDataTransport (9.2.0) Installing GoogleSignIn (6.2.4) Installing GoogleUtilities (7.10.0) Installing Libuv-gRPC (0.0.10) Installing PromisesObjC (2.1.1) Installing ReachabilitySwift (5.0.0) Installing Stripe (23.1.1) Installing StripeApplePay (23.1.1) Installing StripeCore (23.1.1) Installing StripeFinancialConnections (23.1.1) Installing StripePaymentSheet (23.1.1) Installing StripePayments (23.1.1) Installing StripePaymentsUI (23.1.1) Installing StripeUICore (23.1.1) Installing TOCropViewController (2.6.1) Installing TikTokOpenSDK (5.0.15)

[!] Error installing TikTokOpenSDK [!] /usr/bin/curl -f -L -o /var/folders/ly/wt6v9xs518x1d52md_08s_j00000gn/T/d20230315-54352-10vtizd/file.zip https://sf16-muse-va.ibytedtos.com/obj/tiktok-open-platform/TikTokOpenSDK.xcframework-5.0.15.zip --create-dirs --netrc-optional --retry 2 -A 'CocoaPods/1.12.0 cocoapods-downloader/1.6.3'

% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- 0:01:15 --:--:-- 0 curl: (28) Failed to connect to sf16-muse-va.ibytedtos.com port 443 after 75097 ms: Operation timed out Warning: Problem : timeout. Will retry in 1 seconds. 2 retries left. 0 0 0 0 0 0 0 0 --:--:-- 0:01:15 --:--:-- 0 curl: (28) Failed to connect to sf16-muse-va.ibytedtos.com port 443 after 75002 ms: Operation timed out Warning: Problem : timeout. Will retry in 2 seconds. 1 retries left. 0 0 0 0 0 0 0 0 --:--:-- 0:01:15 --:--:-- 0 curl: (28) Failed to connect to sf16-muse-va.ibytedtos.com port 443 after 75030 ms: Operation timed out

========================######################=========================

Here is my info.plist file

<?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>CFBundleDevelopmentRegion</key>
        <string>$(DEVELOPMENT_LANGUAGE)</string>
        <key>CFBundleDisplayName</key>
        <string>Opengiving</string>
        <key>CFBundleExecutable</key>
        <string>$(EXECUTABLE_NAME)</string>
        <key>CFBundleIdentifier</key>
        <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
        <key>CFBundleInfoDictionaryVersion</key>
        <string>6.0</string>
        <key>CFBundleName</key>
        <string>opengiving</string>
        <key>CFBundlePackageType</key>
        <string>APPL</string>
        <key>CFBundleShortVersionString</key>
        <string>$(FLUTTER_BUILD_NAME)</string>
        <key>CFBundleSignature</key>
        <string>????</string>
        <key>CFBundleURLTypes</key>
        <array>
            <dict>
                <key>CFBundleURLSchemes</key>
                <array>
                    <string>fb5191864900*****</string>
                </array>
            </dict>
        </array>

        <key>LSApplicationQueriesSchemes</key>
        <array>
            <string>instagram</string>
            <string>fb</string>
            <string>fbauth2</string>
            <string>fbshareextension</string>
            <string>fbapi</string>
            <string>facebook-reels</string>
            <string>facebook-stories</string>
            <string>fb-messenger-share-api</string>
            <string>fb-messenger</string>
            <string>tg</string>
            <string>whatsapp</string>
            <string>twitter</string>

                         <string>tiktokopensdk</string>
                         <string>tiktoksharesdk</string>
                         <string>snssdk1180</string>
                         <string>snssdk1233</string>
        </array>

        <key>NSPhotoLibraryUsageDescription</key>
        <string>$(PRODUCT_NAME) needs permission to access photos and videos on your device</string>
        <key>NSMicrophoneUsageDescription</key>
        <string>$(PRODUCT_NAME) does not require access to the microphone.</string>
        <key>NSCameraUsageDescription</key>
        <string>$(PRODUCT_NAME) requires access to the camera.</string>
        <key>NSAppleMusicUsageDescription</key>
        <string>$(PRODUCT_NAME) requires access to play music</string>

        <key>FacebookAppID</key>
        <string>5191864900*****</string>
        <key>FacebookClientToken</key>
        <string>b63adc0c7b7700ee84c0ad44**********</string>
        <key>FacebookDisplayName</key>
        <string>Open Giving</string>

        <key>NSBonjourServices</key>
        <array>
            <string>_dartobservatory._tcp</string>
        </array>

                <key>TikTokAppID</key>
                <string>[your_tiktok_app_id]</string>

        <key>CFBundleVersion</key>
        <string>$(FLUTTER_BUILD_NUMBER)</string>
        <key>LSRequiresIPhoneOS</key>
        <true />
        <key>UILaunchStoryboardName</key>
        <string>LaunchScreen</string>
        <key>UIMainStoryboardFile</key>
        <string>Main</string>
        <key>UISupportedInterfaceOrientations</key>
        <array>
            <string>UIInterfaceOrientationPortrait</string>
            <string>UIInterfaceOrientationLandscapeLeft</string>
            <string>UIInterfaceOrientationLandscapeRight</string>
        </array>
        <key>UISupportedInterfaceOrientations~ipad</key>
        <array>
            <string>UIInterfaceOrientationPortrait</string>
            <string>UIInterfaceOrientationPortraitUpsideDown</string>
            <string>UIInterfaceOrientationLandscapeLeft</string>
            <string>UIInterfaceOrientationLandscapeRight</string>
        </array>
        <key>UIViewControllerBasedStatusBarAppearance</key>
        <false />
        <key>CADisableMinimumFrameDurationOnPhone</key>
        <true />
        <key>UIApplicationSupportsIndirectInputEvents</key>
        <true />
        <key>UIStatusBarHidden</key>
        <true />
    </dict>
</plist>

========================######################========================= Here is my AppDelegate.swift file

import UIKit
import Flutter

// Add these lines
import FBSDKCoreKit
import TikTokOpenSDK

@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
    override func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
    ) -> Bool {
        GeneratedPluginRegistrant.register(with: self)

        // Add these lines
        FBSDKCoreKit.ApplicationDelegate.shared.application(
            application,
            didFinishLaunchingWithOptions: launchOptions
        )
        TikTokOpenSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)

        return super.application(application, didFinishLaunchingWithOptions: launchOptions)
    }

    // Add this method
    override func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
        guard let sourceApplication = options[UIApplication.OpenURLOptionsKey.sourceApplication] as? String,
              let annotation = options[UIApplication.OpenURLOptionsKey.annotation] else {
            return false
        }

        if TikTokOpenSDKApplicationDelegate.sharedInstance().application(app, open: url, sourceApplication: sourceApplication, annotation: annotation) {
            return true
        }
        return false
    }

    // Add this method
    override func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
        if TikTokOpenSDKApplicationDelegate.sharedInstance().application(application, open: url, sourceApplication: sourceApplication, annotation: annotation) {
            return true
        }
        return false
    }

    // Add this method
    override func application(_ application: UIApplication, handleOpen url: URL) -> Bool {
        if TikTokOpenSDKApplicationDelegate.sharedInstance().application(application, open: url, sourceApplication: nil, annotation: "") {
            return true
        }
        return false
    }
}

We don't have Tiktok so we don't use TikTok, so we don't want it. Please tell us what changes we need to the info.plist file and appdelegate.swift file.

We also checked directly on XCode, but it also gave us an error and was not able to run our application.

Please help us to figure this out and create a launchable application in iOS. Thank You for your best support.πŸ™‚πŸ™πŸ‘

LecleVietnam commented 1 year ago

Hi @expoders8, Thank you for your feedback. Our team will consider this issue and fix it asap.

expoders8 commented 1 year ago

@LecleVietnam We are not using Tiktok in our region as it is banned in our region, so please make sure you check without Tiktok and also tell us which properties need to be removed if we are not using it to share files on Tiktok.

Also please fix it as soon as possible.

Thank you so much for your supportπŸ™

LecleVietnam commented 1 year ago

Hi @expoders8, We have tried to remove the iOS configuration for TikTok in our test project and we found that everything works fine. Could you please remove all configuration for TikTok from your Info.plist and AppDelegate.swift files and check this issue again?

Thank you.

LecleVietnam commented 1 year ago

Info.plist file

<?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>CFBundleDevelopmentRegion</key>
        <string>$(DEVELOPMENT_LANGUAGE)</string>
        <key>CFBundleDisplayName</key>
        <string>Opengiving</string>
        <key>CFBundleExecutable</key>
        <string>$(EXECUTABLE_NAME)</string>
        <key>CFBundleIdentifier</key>
        <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
        <key>CFBundleInfoDictionaryVersion</key>
        <string>6.0</string>
        <key>CFBundleName</key>
        <string>opengiving</string>
        <key>CFBundlePackageType</key>
        <string>APPL</string>
        <key>CFBundleShortVersionString</key>
        <string>$(FLUTTER_BUILD_NAME)</string>
        <key>CFBundleSignature</key>
        <string>????</string>
        <key>CFBundleURLTypes</key>
        <array>
            <dict>
                <key>CFBundleURLSchemes</key>
                <array>
                    <string>fb5191864900*****</string>
                </array>
            </dict>
        </array>

        <key>LSApplicationQueriesSchemes</key>
        <array>
            <string>instagram</string>
            <string>fb</string>
            <string>fbauth2</string>
            <string>fbshareextension</string>
            <string>fbapi</string>
            <string>facebook-reels</string>
            <string>facebook-stories</string>
            <string>fb-messenger-share-api</string>
            <string>fb-messenger</string>
            <string>tg</string>
            <string>whatsapp</string>
            <string>twitter</string>

                          // Remove these lines

                         <string>tiktokopensdk</string>
                         <string>tiktoksharesdk</string>
                         <string>snssdk1180</string>
                         <string>snssdk1233</string>
                         //---------------------------------------//
        </array>

        <key>NSPhotoLibraryUsageDescription</key>
        <string>$(PRODUCT_NAME) needs permission to access photos and videos on your device</string>
        <key>NSMicrophoneUsageDescription</key>
        <string>$(PRODUCT_NAME) does not require access to the microphone.</string>
        <key>NSCameraUsageDescription</key>
        <string>$(PRODUCT_NAME) requires access to the camera.</string>
        <key>NSAppleMusicUsageDescription</key>
        <string>$(PRODUCT_NAME) requires access to play music</string>

        <key>FacebookAppID</key>
        <string>5191864900*****</string>
        <key>FacebookClientToken</key>
        <string>b63adc0c7b7700ee84c0ad44**********</string>
        <key>FacebookDisplayName</key>
        <string>Open Giving</string>

        <key>NSBonjourServices</key>
        <array>
            <string>_dartobservatory._tcp</string>
        </array>

                // Remove these lines

                <key>TikTokAppID</key>
                <string>[your_tiktok_app_id]</string>
                //---------------------------------------//

        <key>CFBundleVersion</key>
        <string>$(FLUTTER_BUILD_NUMBER)</string>
        <key>LSRequiresIPhoneOS</key>
        <true />
        <key>UILaunchStoryboardName</key>
        <string>LaunchScreen</string>
        <key>UIMainStoryboardFile</key>
        <string>Main</string>
        <key>UISupportedInterfaceOrientations</key>
        <array>
            <string>UIInterfaceOrientationPortrait</string>
            <string>UIInterfaceOrientationLandscapeLeft</string>
            <string>UIInterfaceOrientationLandscapeRight</string>
        </array>
        <key>UISupportedInterfaceOrientations~ipad</key>
        <array>
            <string>UIInterfaceOrientationPortrait</string>
            <string>UIInterfaceOrientationPortraitUpsideDown</string>
            <string>UIInterfaceOrientationLandscapeLeft</string>
            <string>UIInterfaceOrientationLandscapeRight</string>
        </array>
        <key>UIViewControllerBasedStatusBarAppearance</key>
        <false />
        <key>CADisableMinimumFrameDurationOnPhone</key>
        <true />
        <key>UIApplicationSupportsIndirectInputEvents</key>
        <true />
        <key>UIStatusBarHidden</key>
        <true />
    </dict>
</plist>
LecleVietnam commented 1 year ago

AppDelegate.swift


import UIKit
import Flutter
import FBSDKCoreKit

@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
  override func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
  ) -> Bool {
    GeneratedPluginRegistrant.register(with: self)

    // Add these lines
    FBSDKCoreKit.ApplicationDelegate.shared.application(
        application,
        didFinishLaunchingWithOptions: launchOptions
    )

    return super.application(application, didFinishLaunchingWithOptions: launchOptions)
  }
}
expoders8 commented 1 year ago

@LecleVietnam I am not able to run pod install on my project. And if I go directly through XCode, I get an error like this: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

Then I try pod install, and I get the error I mentioned earlier. I don't know why it is installing TikTokOpenSDK during pod installation. Can you please tell me how I can disable installing TikTokOpenSDK in your package during pod install?

I created new test project also which had nothing it also having issue of TikTokOpenSDK :

`apple@admin ios % pod install
Analyzing dependencies cloud_firestore: Using Firebase SDK version '10.3.0' defined in 'firebase_core' firebase_auth: Using Firebase SDK version '10.3.0' defined in 'firebase_core' firebase_core: Using Firebase SDK version '10.3.0' defined in 'firebase_core' firebase_messaging: Using Firebase SDK version '10.3.0' defined in 'firebase_core' /Users/apple/Projects/OpenGiving/OpenGiving_New_15_03_2023 copy/ios/.symlinks/plugins/lecle_social_share/ios/lecle_social_share.podspec:28: warning: key "EXCLUDED_ARCHS[sdk=iphonesimulator*]" is duplicated and overwritten on line 28 Downloading dependencies Installing AppAuth (1.6.0) Installing BoringSSL-GRPC (0.0.24) Installing FBAEMKit (14.1.0) Installing FBSDKCoreKit (14.1.0) Installing FBSDKCoreKit_Basics (14.1.0) Installing FBSDKLoginKit (14.1.0) Installing FBSDKShareKit (14.1.0) Installing Firebase (10.3.0) Installing FirebaseAuth (10.3.0) Installing FirebaseCore (10.3.0) Installing FirebaseCoreInternal (10.3.0) Installing FirebaseFirestore (10.3.0) Installing FirebaseInstallations (10.3.0) Installing FirebaseMessaging (10.3.0) Installing Flutter (1.0.0) Installing GTMAppAuth (1.3.1) Installing GTMSessionFetcher (2.3.0) Installing GoogleDataTransport (9.2.0) Installing GoogleSignIn (6.2.4) Installing GoogleUtilities (7.10.0) Installing Libuv-gRPC (0.0.10) Installing PromisesObjC (2.1.1) Installing ReachabilitySwift (5.0.0) Installing Stripe (23.1.1) Installing StripeApplePay (23.1.1) Installing StripeCore (23.1.1) Installing StripeFinancialConnections (23.1.1) Installing StripePaymentSheet (23.1.1) Installing StripePayments (23.1.1) Installing StripePaymentsUI (23.1.1) Installing StripeUICore (23.1.1) Installing TOCropViewController (2.6.1) Installing TikTokOpenSDK (5.0.15)

[!] Error installing TikTokOpenSDK [!] /usr/bin/curl -f -L -o /var/folders/ly/wt6v9xs518x1d52md_08s_j00000gn/T/d20230317-77184-18nzf2i/file.zip https://sf16-muse-va.ibytedtos.com/obj/tiktok-open-platform/TikTokOpenSDK.xcframework-5.0.15.zip --create-dirs --netrc-optional --retry 2 -A 'CocoaPods/1.12.0 cocoapods-downloader/1.6.3'

% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- 0:01:20 --:--:-- 0 curl: (28) Failed to connect to sf16-muse-va.ibytedtos.com port 443 after 80186 ms: Operation timed out Warning: Problem : timeout. Will retry in 1 seconds. 2 retries left. 0 0 0 0 0 0 0 0 --:--:-- 0:01:20 --:--:-- 0 curl: (28) Failed to connect to sf16-muse-va.ibytedtos.com port 443 after 80011 ms: Operation timed out Warning: Problem : timeout. Will retry in 2 seconds. 1 retries left. 0 0 0 0 0 0 0 0 --:--:-- 0:01:20 --:--:-- 0 curl: (28) Failed to connect to sf16-muse-va.ibytedtos.com port 443 after 80010 ms: Operation timed out `

LecleVietnam commented 1 year ago

Hi @expoders8, If our suggested still not working we think that there is only one solution left is that you have to do some small modifications in our package. We are very sorry for this inconvenience as other developers still need the TikTokSDK so we can not remove it from our package for now.

These are the steps to modify our plugin inside your project: πŸ‘‰ Fist of all please open the External Libraries folder (This folder usually place under your project's folder) πŸ‘‰ Then open Flutter Plugins folder πŸ‘‰ Find lecle_social_share library folder then open the iOS folder in our package's folder and you will see the lecle_social_share.podspec file πŸ‘‰ Inside this file please scroll down and find this line s.dependency 'TikTokOpenSDK', '~> 5.0.14' πŸ‘‰ Then you can comment this line or remove it πŸ‘‰ After that please remove all TikTok configurations inside your app as we have mentioned in the solution above πŸ‘‰ Run pod install again

expoders8 commented 1 year ago

Hey @LecleVietnam Thank you,

I removed that line and ran the project, and then I was able to run the project. But I want a little bit more help from you. Can you please help me more

when I am trying to share an image using WhatsApp, it gives this error: canOpenURL: failed for URL: "whatsapp://app" Error: "The operation couldn’t be completed."

&&&

While sharing on Facebook, it gives this error: "fb-messenger-share-api:/" error: "The operation couldn’t be completed. (OSStatus error -10814.)"

Please help me a little bit to solve this issue in iOS.

Thank you once again for your best support.πŸ™πŸ™‚πŸ˜Š

LecleVietnam commented 1 year ago

Hi @expoders8, Thank you for your feedback. Our team will take a look on this issue and we will response to you asap.

expoders8 commented 1 year ago

Hey @LecleVietnam, Any update related to issue? Please, update me on that i need to finish it asap.

Thank you.

LecleVietnam commented 1 year ago

Hi @expoders8, We are very sorry for the late response because our team is very busy these days. After testing the plugin with the same config as yours, we found that everything is fine and we didn't receive any message as you got, so we can not know what is your problem exactly.

expoders8 commented 1 year ago

@LecleVietnam It's okay and thanks for your reply.

Can you please tell me what I should do for now to resolve this issue?