質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.79%

【iOSアプリ】LINE(Twitter)シェア機能で、”動画”をシェアする方法

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,010

score 61

iOSアプリを開発しており、
LINE(Twitter)シェア機能を実装したいと思っています。
画像をシェアすることには成功したのですが、
動画をシェアするとなると、勝手が違うようで、方法が分からず質問させて頂きました。
どなたかご助力頂けますと幸いです。

試したこと

画像シェアで使用したもの
anchan828/social-connector

画像シェアで用いたコード(SocialConnector)を修正すればいけるのではと考えました。

わからないなりにmmファイルを解読してみることにしました。

socialConnector.mmの、画像のurlを取得している箇所を、動画のurlに直せば、いけるのではと思ったのですが、
できませんでした

UIImageクラスが、画像にしか適してないからなのでは。

動画に適したクラスを探し、実装できないか模索しているところです

環境

※Unityを使用して作っています。
・Unity2019.1.8f
・Xcode10.1
・iPadPro(iOS12.2)

補足 

↓録画機能については、VideoCreator.frameworkというものを用いて実装しました。
iOSでUnityの録画をする

追記

SocialConnector.mmを以下のように書き換えてみました。(Objective-Cは初めてなので悪しからず…)
(ひとまずエラーはでていません。)

一旦画像のurlのままで試してみたのですが、
下図のように「その他」しかでない状態となってしまいました。
イメージ説明

UIImageでなくなったためか、NSMutableArrayをつかっているが間違いなのかと考えているところです。

//
//  SocialConnector.mm
//  Unity-iPhone
//
//  Created by Ando Keigo on 2012/12/08.
//
//
#if UNITY_VERSION <= 434
#import "iPhone_View.h"
#endif
extern "C" {

    void SocialConnector_Share(const char *text, const char *url, const char *textureURL) {

        NSString *_text = [NSString stringWithUTF8String:text ? text : ""];
        NSString *_url = [NSString stringWithUTF8String:url ? url : ""];
        NSString *_textureURL = [NSString stringWithUTF8String:textureURL ? textureURL : ""];

        NSString *mytext;
        mytext = _text;
        NSURL *myurl;
        myurl = [NSURL fileURLWithPath:_textureURL];

        NSMutableArray *actItems = nil;
        [actItems addObject:mytext];
        [actItems addObject:myurl];

        UIActivityViewController *activityView = [[[UIActivityViewController alloc] initWithActivityItems:actItems applicationActivities: nil] autorelease];

        if(floorf(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_7_1)
            activityView.popoverPresentationController.sourceView = UnityGetGLViewController().view;

        [UnityGetGLViewController() presentViewController:activityView animated:YES completion:nil];
    }

}

追記②

再度、書き換えてみたところ、画像のurlでの取得には成功しました。
これから動画urlでできるか試してみます。

//
//  SocialConnector.mm
//  Unity-iPhone
//
//  Created by Ando Keigo on 2012/12/08.
//
//
#if UNITY_VERSION <= 434
#import "iPhone_View.h"
#endif
extern "C" {

    void SocialConnector_Share(const char *text, const char *url, const char *textureURL) {

        NSString *_text = [NSString stringWithUTF8String:text ? text : ""];
        NSString *_url = [NSString stringWithUTF8String:url ? url : ""];
        NSString *_textureURL = [NSString stringWithUTF8String:textureURL ? textureURL : ""];

        NSString *myText;
        myText = _text;

        NSURL *myURL = [NSURL URLWithString:_url];

        NSURL *myTextureURL;
        myTextureURL = [NSURL fileURLWithPath:_textureURL];

        NSArray *actItems = @[myText, myURL, myTextureURL];

        UIActivityViewController *activityView = [[[UIActivityViewController alloc] initWithActivityItems:actItems applicationActivities: nil] autorelease];


        if(floorf(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_7_1)
            activityView.popoverPresentationController.sourceView = UnityGetGLViewController().view;

        [UnityGetGLViewController() presentViewController:activityView animated:YES completion:nil];

    }
}
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.79%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る