Q&A

LINEに透過するGIF画像を共有

前提・実現したいこと

SwiftでLINEに透過するGIF画像を共有するアプリを作成しております。

発生している問題・エラーメッセージ

ところが一旦LINEで共有されると透過するGIF画像ではない jpg画像形式で共有されてしまいます。原因はなんなのでしょうか。 Androidでは問題なくできております。 LINEで透過するGIF画像を共有することができるのでしたらば、他の方法でもかまいませんので、ご教示いただければ幸いです。

該当のソースコード

func onShareLine(call: FlutterMethodCall, result: @escaping FlutterResult) {

    var path: String?
    if let args = call.arguments as? [ String: Any ] {
        path = args["path"] as? String
    }

    if !FileManager.default.fileExists(atPath: path ?? "") {
        result(FlutterError(code: "300", message: "ファイルが存在しません。", details: nil))
        return
    }

    guard let path = path else {return}
    
    do {
        let imageData = try Data(contentsOf: URL(fileURLWithPath: path))
        let pasteboard = UIPasteboard.general
        let forPasteboardType = "com.compuserve.gif"
        
        pasteboard.setData(imageData, forPasteboardType: forPasteboardType)
        
        let name = pasteboard.name.rawValue as String
        let urlSheme = "line://msg/image/\(name)"
        
        
        if let url = URL(string: urlSheme), UIApplication.shared.canOpenURL(url) {
            if #available(iOS 10.0, *) {
                UIApplication.shared.open(url, options: [:], completionHandler: nil)
            } else {
                UIApplication.shared.openURL(url)
            }
            result("success")
            return
        }
        else {
            if let url = URL(string: "itms-apps://itunes.apple.com/app/id443904275"), UIApplication.shared.canOpenURL(url) {
                if #available(iOS 10.0, *) {
                    UIApplication.shared.open(url, options: [:], completionHandler: nil)
                }
                else {
                    UIApplication.shared.openURL(url)
                }
                result("success")
                return
            }
        }
        result(FlutterError(code: "100", message: nil, details: nil))
    }
    catch {
        result(FlutterError(code: "400", message: error.localizedDescription, details: nil))
    }
}

試したこと

補足情報(FW/ツールのバージョンなど)

  • 0
  • 0
  • 1063
  • twitter facebook
本当によろしいですか? question.vm