橋田レポート

Unity Xcode Android 関連のEtc...

ERROR ITMS-90087:"Unsupported Architectures.The executable for XXX.app/Frameworks/xxx.framework contains unsupported architectures'[x86_64,i386]'."【解決方法】

Error内容

f:id:KojiroHashida:20171221100333p:plain

解決方法

1 : Carthageをインストール
2 : XcodeShell Scriptを設定する

原因

Xcodeのバグです

http://www.openradar.me/radar?id=6409498411401216

※URL先はOpenRadar( AppleのBug報告)です。

解説

1 : Carthageをインストール

1 . sudoでディレクトリーを作成

$ sudo mkdir /usr/local/Frameworks

 

2 . 所有者を自分に変更

$ sudo chown -R  kojiro_hashida:staff /usr/local/Frameworks

 

3 . インストール

$ brew install carthage

 

 

2 : XcodeShell Scriptを設定する

1 . Xcode -> TARGETSからプレジェクトを選択 -> BuildPhasesタブで「+」を選択 -> 「New Run Script Phase」をクリック 

f:id:KojiroHashida:20171221110054p:plain

1 . 新しく出来た「Run Script」にスクリプトを記入

f:id:KojiroHashida:20171221112644p:plain

記入するスクリプト

※自分で構築した部分のみFrameworkの存在を確認しています。 

補足

発生した環境 : Xcode9.2
発生した状況 : opencv2.frameworkを使用したアプリをiTunesConnectへアップロードしようとした時

 

You are not authorized to use this service for provider 【 解決方法 】( Xcode -> iTunesConnect( ipa ) )

Error内容

f:id:KojiroHashida:20170923154025p:plain

解決方法

1 : Xcode最新のバージョンに更新
2 : Xcodeipaを作成
3 : ipaApplicationLoaderを使用してアップロードする

※ ApplicationLoader は Xcode のタブから起動してください。

解説

ipaの作成方法

f:id:KojiroHashida:20170923161513p:plain

ApplicationLoaderの起動方法

f:id:KojiroHashida:20170923154837p:plain

補足

上記のエラーは Xcode8.3.3 の時に遭遇したエラーです。
Xcode9 と ApplicationLoader を使用することで解決しました。

 

Apple Mach-O Linker (ld) Error Group : Linker command failed with exit code 1 (use -v to see invocation) 解決策 ( Unity Build -> Xcode )

Error内容

Apple Mach-O(ld) Error Group
Linker command failed with exit code 1 (use -v to see invocation)

f:id:KojiroHashida:20170903032332p:plain

解決方法

ビルド設定の"Other Linker Flags"から"-l"z"}" を削除する

Xcodeの階層 : Build Setting > Linking > Other Linker Flags > -l"z"}

f:id:KojiroHashida:20170903033731p:plain

原因

存在しないオブジェクトファイルのリンカを促している

解説

"Report navigator"から詳細を表示して原因を特定できます。

f:id:KojiroHashida:20170903041944p:plain

f:id:KojiroHashida:20170903042009p:plain

補足

上記の解決方法(原因)以外にも以下の解決方法(原因)が存在します
  • ファイル名が重複している
  • 必要なフレームワークが追加されていない
  • HeaderSearchPathに"\"が挿入されている
  • libGoogleAnalyticsServices.aが不足している
  • .mファイルをimportしている

iTunesConnect の TestFlight に 「ベータ版AppReviewへの送信」が見当たらない問題

解決策

以下のリンク先で新しいベータ版の申請方法が解説されています。(2017/4/26現在)
※リンク先は英語解説の動画が流れます。

itunespartner.apple.com

  2017/3/27 に iTunesConnect の仕様 が変更され
  以前の場所から「ベータ版AppReviewへの送信」ボタンがなくなったみたいですね(推測)

 

簡単な解説

Xcodeからアプリをビルド〜iTunesConnectでマイAppを登録 まで作業が終わっている前提

TestFlightタブ内のテスト情報を全て埋めて 保存して下さい。

f:id:KojiroHashida:20170426181649p:plain

 

 

TestFlightタブ内で 「 新規グループ 」を作成して外部テスターを追加してください。

f:id:KojiroHashida:20170426182054p:plain

 

作成したグループにテストを行うビルドを選択して「 次へ 」を押して下さい。
※輸出関連法コンプライアンス提出必須

f:id:KojiroHashida:20170426182723p:plain

f:id:KojiroHashida:20170426182807p:plain

 

 

外部テスターに通知する説明を記入してください。

ようやくここで 「 審査へ提出 」 ボタンが現れます!!

「審査へ提出」を押してください。
※あくまでもベータ版の審査です。
※「審査へ提出」を押した後先に進まなくなる場合があります。
私の場合はipaのversionを 0.1 から 1.0.0 に変更して上げ直したら先へ進めました。
↑Version1.0の審査が通ってからVersion0.1を上げ直したら審査へ提出できました(2017/5/8改正)
単にテスト情報の反映に時間がかかっただけかもしれません(謎)

f:id:KojiroHashida:20170426183220p:plain

 

後は審査結果を待ちましょう。
審査は24時間程で終わります。

 

Blender 主要ショートカットキー

「 Control + E 」 シーム 

f:id:KojiroHashida:20170425174642p:plain

 

「 P 」分離

f:id:KojiroHashida:20170425174748p:plain

 

「 Shift + A 」 追加

f:id:KojiroHashida:20170425174824p:plain

 

「 Shift + S 」 カーソル位置

f:id:KojiroHashida:20170425174901p:plain

 

「 W 」 細分化、面を反転

f:id:KojiroHashida:20170425174925p:plain

 

「 U 」UV展開

f:id:KojiroHashida:20170425182952p:plain

 

「 Control + P 」ウェイト

f:id:KojiroHashida:20170425195244p:plain

 

「 Auto IK 」親と子のポーズ連携

f:id:KojiroHashida:20170425211258p:plain

 

「 Alt + , 」原点での「 R ( Rotation ) 」操作 を有効にする

f:id:KojiroHashida:20170425211701p:plain

 

※随時追加予定

【Unity5】PlayerPrefsの容量上限について

PlayerPrefsの容量上限

iOS 無限
Android 無限
Web Player 1MB

解説

1MBを文字数にすると

全角 : 524,288 文字
半角 : 262,144 文字

上記はKeyとValueを合わせた文字数になります。

例 :
PlayerPrefs.SetString( "神代Kojiro" , "橋田Hashida" );
これは 17文字 になります。

以上。

 

 

※以下ソース

f:id:KojiroHashida:20170308055426j:plain

How to Cheat in Unity 5: Tips and Tricks for Game Developmentの123ページのTipです。

 

 

 

【Unity / C# 】 Random.Rangeの挙動について

intの場合の範囲

Random.Range( 0 , 100 );

0   : 含む
100 : 含まれない

floatの場合の範囲

Random.Range( 0f , 100f );

0f   : 含まれない
100f : 含まれない

longの場合の範囲

Random.Range( 0L , 100L );

0L   : 含まれない
100L : 含まれない