Compare commits
4 Commits
1911637020
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 42f620b652 | |||
| 81312e1260 | |||
| 27a5fea2b8 | |||
| cf146940c1 |
@@ -12,13 +12,26 @@ public class NativeSharePackageNameGuard : IPreprocessBuildWithReport
|
||||
|
||||
public void OnPreprocessBuild(BuildReport report)
|
||||
{
|
||||
if (report.summary.platform != BuildTarget.Android)
|
||||
{
|
||||
return;
|
||||
}
|
||||
BuildTarget platform = report.summary.platform;
|
||||
|
||||
if (platform == BuildTarget.Android)
|
||||
{
|
||||
// Android はこの package 名が機能に直結するためビルドを停止する。
|
||||
CheckUnityAndroidPackageName();
|
||||
CheckNativeSharePackageName();
|
||||
|
||||
if (ContainsDefaultNativeSharePackageName())
|
||||
{
|
||||
throw new BuildFailedException(BuildPackageNameMessage());
|
||||
}
|
||||
}
|
||||
else if (platform == BuildTarget.iOS)
|
||||
{
|
||||
// iOS 自体は jp.yourname を使わないので、止めずに警告でリネームを促す。
|
||||
if (ContainsDefaultNativeSharePackageName())
|
||||
{
|
||||
Debug.LogWarning("[NativeShare] " + BuildPackageNameMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void CheckUnityAndroidPackageName()
|
||||
@@ -55,7 +68,7 @@ public class NativeSharePackageNameGuard : IPreprocessBuildWithReport
|
||||
}
|
||||
}
|
||||
|
||||
private void CheckNativeSharePackageName()
|
||||
private bool ContainsDefaultNativeSharePackageName()
|
||||
{
|
||||
string assetsPath = Application.dataPath;
|
||||
|
||||
@@ -74,18 +87,20 @@ public class NativeSharePackageNameGuard : IPreprocessBuildWithReport
|
||||
continue;
|
||||
}
|
||||
|
||||
string text = File.ReadAllText(filePath);
|
||||
|
||||
if (text.Contains(DefaultNativeSharePackageName))
|
||||
if (File.ReadAllText(filePath).Contains(DefaultNativeSharePackageName))
|
||||
{
|
||||
throw new BuildFailedException(
|
||||
"NativeShare の Android Java package 名が初期値のままです。\n\n" +
|
||||
"Android向けにビルドする前に、次の2種類の Package Name を確認してください。\n\n" +
|
||||
"1. Unity Player Settings の Package Name\n" +
|
||||
" Project Settings > Player > Android > Other Settings > Identification > Package Name\n" +
|
||||
" 例: jp.piccolo.cameraapp\n\n" +
|
||||
"2. NativeShare 側の Java package 名\n" +
|
||||
" 次の仮パッケージ名を、自分のものへ変更してください。\n\n" +
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private string BuildPackageNameMessage()
|
||||
{
|
||||
return
|
||||
"NativeShare の Java package 名が初期値(テンプレートの仮名)のままです。\n\n" +
|
||||
"公開・配布の前に、次の仮パッケージ名を自分のものへ変更してください。\n\n" +
|
||||
" " + DefaultNativeSharePackageName + "\n\n" +
|
||||
" 例:\n" +
|
||||
" jp.piccolo.unity.nativeshare\n" +
|
||||
@@ -95,12 +110,11 @@ public class NativeSharePackageNameGuard : IPreprocessBuildWithReport
|
||||
"・NativeShareBridge.java の package 行\n" +
|
||||
"・NativeShareFileProvider.java の package 行\n" +
|
||||
"・AndroidManifest.xml の provider android:name\n" +
|
||||
"・Android 側のフォルダ名\n\n" +
|
||||
"・Android 側のフォルダ名(jp/yourname/unity/nativeshare)\n\n" +
|
||||
"補足:\n" +
|
||||
"Unity Player Settings の Package Name と、NativeShare の Java package 名は、" +
|
||||
"同じである必要はありません。"
|
||||
);
|
||||
}
|
||||
}
|
||||
"・この package 名は Android のネイティブ実装で使われます。\n" +
|
||||
" iOS のビルド自体には必須ではありませんが、公開前のリネームを推奨します。\n" +
|
||||
"・アプリの Package Name(Player Settings)と、NativeShare の Java\n" +
|
||||
" package 名は、同じである必要はありません。";
|
||||
}
|
||||
}
|
||||
2
LICENSE
2
LICENSE
@@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2026 hiro3
|
||||
Copyright (c) 2026 PICCOLO LLC TETSUO HIRO
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
|
||||
associated documentation files (the "Software"), to deal in the Software without restriction, including
|
||||
|
||||
26
LICENSE.ja
Normal file
26
LICENSE.ja
Normal file
@@ -0,0 +1,26 @@
|
||||
MIT ライセンス(参考日本語訳)
|
||||
|
||||
これは MIT ライセンスの参考日本語訳です。法的な効力を持つのは英語の原文
|
||||
([LICENSE](LICENSE))であり、本訳文は内容を理解するための参考にすぎません。
|
||||
解釈に相違が生じた場合は、英語版が優先します。
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Copyright (c) 2026 PICCOLO LLC TETSUO HIRO
|
||||
|
||||
以下に定める条件に従い、本ソフトウェアおよび関連する文書ファイル(以下
|
||||
「ソフトウェア」)の複製を取得するすべての人に対し、ソフトウェアを無制限に
|
||||
扱うことを無償で許可します。これには、ソフトウェアの複製を使用、複製、改変、
|
||||
結合、掲載、頒布、サブライセンス、および/または販売する権利、ならびに
|
||||
ソフトウェアを提供する相手に同じことを許可する権利が、制限なく含まれます。
|
||||
ただし、以下の条件に従うものとします。
|
||||
|
||||
上記の著作権表示および本許諾表示を、ソフトウェアのすべての複製または重要な
|
||||
部分に記載するものとします。
|
||||
|
||||
ソフトウェアは「現状のまま」で提供され、明示または黙示を問わず、商品性、
|
||||
特定目的への適合性、および権利非侵害についての保証を含め、いかなる種類の
|
||||
保証もありません。作者または著作権者は、契約行為、不法行為、またはそれ以外
|
||||
であろうと、ソフトウェアまたはソフトウェアの使用もしくはその他の扱いに起因
|
||||
または関連して生じる、いかなる請求、損害、その他の義務についても、一切の
|
||||
責任を負わないものとします。
|
||||
@@ -52,7 +52,9 @@
|
||||
|
||||
- 写真保存に必要な `NSPhotoLibraryAddUsageDescription` は、ビルド後処理(`NativeSharePostProcessBuild.cs`)で Info.plist に自動追加されます。文言を変えたい場合はそのスクリプトを編集してください。
|
||||
- カメラ用途の説明(`NSCameraUsageDescription`)は Player Settings の「Camera Usage Description」で設定してください。
|
||||
- iOS は `jp.yourname.unity.nativeshare` を実際には使いませんが、テンプレートの仮名のまま残っていると**ビルド時に警告(非ブロック)**でリネームを促します(`NativeSharePackageNameGuard`)。Android はビルドを停止します。
|
||||
|
||||
## ライセンス
|
||||
|
||||
MIT License([LICENSE](LICENSE) を参照)。
|
||||
MIT License。正式版は英語の [LICENSE](LICENSE) です。
|
||||
日本語の参考訳を [LICENSE.ja](LICENSE.ja) に併記しています(法的効力は英語版が優先)。
|
||||
|
||||
Reference in New Issue
Block a user