facebook twitter hatena line email

Unity/画像共有/NatShare

提供: 初心者エンジニアの簡易メモ
2023年4月5日 (水) 22:25時点におけるAdmin (トーク | 投稿記録)による版 (テキストと画像共有)

移動: 案内検索

NatShareとは

画像共有プラグイン

androidはversion7.0以上のみ対応

参考:https://nobushiueshi.com/unitysns%E5%85%B1%E6%9C%89%E3%81%AFnatshare%E3%81%8C%E3%81%8A%E3%81%99%E3%81%99%E3%82%81/

DL&Import

NatShare(github):https://github.com/natmlx/NatShare

githubのcodeからNatSuite-mainをDLし、Assets以下に設置。

x NatShare(UnityAssets):https://assetstore.unity.com/packages/tools/integration/natshare-mobile-sharing-api-117705

UnityAssetsでのインストールは、coreが競合する恐れがあるので、やめておく。詳しくは下の競合項目を。

テキストと画像共有

using UnityEngine;
using UnityEngine.UI;
using NatSuite.Sharing;

public class SampleScene : MonoBehaviour
{
    void Start()
    {
        GameObject.Find("TextButton").GetComponent<Button>().onClick.AddListener(ShareText);
        GameObject.Find("ImageButton").GetComponent<Button>().onClick.AddListener(ShareImage);
        GameObject.Find("TextImageButton").GetComponent<Button>().onClick.AddListener(ShareTextImage);
    }
    // テキスト共有
    void ShareText()
    {
        var payload = new SharePayload();
        payload.AddText("ここに共有したいテキストを入力");
        payload.Commit();
    }
    // キャプチャ画像共有
    void ShareCaptureImage()
    {
        var screenshot = ScreenCapture.CaptureScreenshotAsTexture();
        var payload = new SharePayload();
        payload.AddImage(screenshot);
        payload.Commit();
    }
    // テキスト&キャプチャ画像共有
    void ShareTextCaptureImage()
    {
        var screenshot = ScreenCapture.CaptureScreenshotAsTexture();
        var payload = new SharePayload();
        payload.AddText("ここに共有したいテキストを入力");
        payload.AddImage(screenshot);
        payload.Commit();
    }
    // 通常画像共有
    void ShareImage()
    {
        Texture2D texture = image.texture;
        var payload = new SharePayload();
        payload.AddImage(screetexturenshot);
        payload.Commit();
    }
    void 
    CanvasImage.texture
}

Androidビルド時にcore-1.6.0とjetified-core-1.0.0-rc02が競合するとき

エラー詳細

java.lang.RuntimeException: Duplicate class android.support.v4.graphics.drawable.IconCompatParcelizer found in modules core-1.6.0-runtime.jar (androidx.core:core:1.6.0) and jetified-core-1.0.0-rc02-runtime.jar (:core-1.0.0-rc02:)

AdMobプラグインが、core-1.6.0を使ってるぽい。

対応方法

  1. NatShareプラグインをUnityAssetsからDLしてる場合は、githubからDLするように
  2. NatShare-main/Plugins/Android/core-1.0.0-rc02.aarを削除

参考:https://marumaro7.hatenablog.com/entry/natshareerror