「Unity/画像共有/NatShare」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→Androidビルド時にcore-1.6.0とjetified-core-1.0.0-rc02が競合するとき) |
(→テキストと画像共有) |
||
行36: | 行36: | ||
payload.Commit(); | payload.Commit(); | ||
} | } | ||
− | // | + | // キャプチャ画像共有 |
void ShareImage() | void ShareImage() | ||
{ | { | ||
行44: | 行44: | ||
payload.Commit(); | payload.Commit(); | ||
} | } | ||
− | // テキスト& | + | // テキスト&キャプチャ画像共有 |
void ShareTextImage() | void ShareTextImage() | ||
{ | { | ||
行53: | 行53: | ||
payload.Commit(); | payload.Commit(); | ||
} | } | ||
+ | // 通常画像共有 | ||
+ | void ShareImage() | ||
+ | { | ||
+ | Texture2D texture = image.texture; | ||
+ | var payload = new SharePayload(); | ||
+ | payload.AddImage(screetexturenshot); | ||
+ | payload.Commit(); | ||
+ | } | ||
+ | void | ||
+ | CanvasImage.texture | ||
} | } | ||
</pre> | </pre> |
2023年4月5日 (水) 19:16時点における版
画像共有プラグイン
androidはversion7.0以上のみ対応
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 ShareImage() { var screenshot = ScreenCapture.CaptureScreenshotAsTexture(); var payload = new SharePayload(); payload.AddImage(screenshot); payload.Commit(); } // テキスト&キャプチャ画像共有 void ShareTextImage() { 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を使ってるぽい。
対応方法
- NatShareプラグインをUnityAssetsからDLしてる場合は、githubからDLするように
- NatShare-main/Plugins/Android/core-1.0.0-rc02.aarを削除