テクノモンキーのアプリ開発日記

テクノモンキーの開発ブログです。iOS、Android、Unity、Cocos2d-xなどアプリ開発関連のTipsやアプリ開発に役立つ情報を発信します。

Unity

【Unity】アダプティブアイコンに対応する方法

AndroidはAndroidOS8.0以上からアダプティブアイコンが採用されるようになりました。今まではアプリアイコンに関してそこまでこだわりないので対応しなくていいかなと思ってましたが、どうやらAndroid9.0以上の端末ではアダプティブアイコンに対応していない…

【Unity】カラーコードで色を指定する方法

Unityでカラーコードで色を指定する方法に関するメモ。カラーコードで色を指定したい場合は、UnityEngine.ColorUtilityを使えば良さそうです。 RGB値で色指定すると、コードを結構書かないといけないですが、上記のようにカラーコードで指定すれば簡単だし入…

【Unity】 Social ConnectorがiPadで動作しない場合の対処法

最近作ったUnityアプリでSocialConnector(TwitterやLineなどのSNS共有用プラグイン )を使用しているのですが、 iPhone(iOS13.3)では正常に動作するものの、iPad(iPadOS13.3)では共有アクティビティ(UIActivityViewController)が開かない現象が発生しま…

【Unity】iOSのバイナリアップロードで「ITMS-90809: Deprecated API Usage」(UIWebView)のエラーが出る場合の対処法

先日、Unityで作ったアプリをiOSのAppStoreConnectにアップロードしたら、AppStoreConnectから上記の通知がきて、バイナリが無効になりました。調べた結果、UIWebView関連のエラーだったようなので、対処法をメモしておきたいと思います。 ITMS-90809: Depre…

【iOS】App Store Connectへアプリアップロード時に「ERROR ITMS-90339」のエラーが出る場合の対処法(Unity)

最近Unityで作ったアプリをApp Store Connectにアップロードしようとした際に上記のようなエラーが発生したので今後の為にメモ。ERROR ITMS-90339:"This bundle is invalid. The Info.plist contains an invalid key 'UIApplicationExitsOnSuspend' in bundle…

【Unity】枠画像を綺麗に引き延ばす方法(スライス)

Unityで作るアプリで、ゲーム内のキャラが会話するシーンとか、ダイアログが表示されたりするシーンを作ることが結構あるのですが、上記のようなフレームを表示させたい場合、今までは原寸大のフレームを用意して使ってました。原寸大のフレームを用意する場…

【Unity】Gifアニメを再生する方法

UnityでGifアニメを再生させようとしたら意外と厄介だったので今後の為にメモ。iOSやAndroidのネイティブ開発ではGifアニメ再生で詰まった記憶がなかったのでUnityでも簡単に再生できると思ってましたが、UnityではGifアニメの再生を標準サポートしていない…

【Unity】画像のファイルパスからSpriteを作成する方法

Unityで画像のファイルパスからSpriteを作成し、使用する場合に関するメモ。 今まではUnityで画像を表示する場合、Scene上にImageオブジェクトを設置して、画像ファイル名を指定していましたが、 画像を一覧で使用する場合などで結構面倒な場合が多くありま…

【Unity】アプリバージョンをコードから取得する方法

Unityで作ったアプリでアプリのバージョンを取得する方法に関するメモ。 Unityで作ったアプリのバージョンは、BuildSettingのPlayerSettingから確認、変更ができますが、コードから取得する方法がわからなかったのでメモ。

【Unity】ScrollViewの表示位置をコードから一番上に設定する方法

UnityでScrollViewを使ってリストを表示する場合、一回表示した後にリストの中身を入れ替えてもう一度表示すると最初に表示した位置で表示されてしまう場合があったので、もう一度表示する場合、スクロールの表示位置をコードで一番上に持っていく方法に関す…

【Unity】ネットワーク状態をチェックする方法

Unityで端末のネットワーク接続状態をチェックする方法に関するメモ。Unityで端末のネットワーク状態をチェックしたい場合は「Application.internetReachability」を使えばできます。ネットワーク接続が必要な処理を行う場合、「Application.internetReachab…

Unityで宴(うたげ)を使った時につまずいた所についてのメモ

最近、仕事でUnity用ビジュアルノベルツール「宴」 |を使いました。宴はキャラクター同士の会話シーンが簡単に作れたりするので、今後自分でアプリを作る時にも使えそうな便利なツールだと思いました。今回は、宴を使った際に遭遇したエラーやつまずいた点な…

【Unity】テキストにURLリンクを実装する方法

Unityアプリ開発の仕事で「テキスト内のURLをタップしたらブラウザ起動する」っていう要件がありました。Unityの既存のuGUIの「Text」ではURLリンクに対応してなかったので、多少手を加える必要があるようです。今回は「UnityでテキストにURLリンクを実装す…

【Unity】Androidの64bit対応版アプリをアップロードしても32bitアプリとして認識される場合の対処法

2019年8月1日からGoogle Playで公開するアプリは64bit対応が必須になったらしいです。Googleが以前から告知していたことや、ちょっと前にapkアップロード時に警告が出るようになってきたこともあり、ちょっと前にUnityで作ったAndroidアプリを64bit対応にす…

【Unity】Buttonが反応しない場合に確認すべきことまとめ

Unityで設置したButton(ボタン)が反応しない場合っていくつかの原因が考えられますが、今回、今までに経験していないボタンが反応しないパターンに遭遇したのでメモとして残しておきたいと思います。状況・現象としては、Buttonをタップしても反応しない(…

【Unity】プレイヤーでどのシーンから再生しても最初のシーンから起動するようにする設定

Unityアプリ開発での効率化に関するメモ。Unityで複数のシーンを使ったアプリを作る場合、他の画面でも使うようなGameObjectを「DontDestroyOnLoad」で永続化させることが結構あります。他のシーンでも使うオブジェクトは、だいたいアプリを起動するシーンで…

【Unity】DateTimeクラスにnullを設定したい場合の対処法(C#)

Unityでカレンダー画面を実装するためにDateTimeクラスを使用したのですが、 DateTimeクラスはそのままだとnullが設定できないっぽいです。 今回はDateTimeクラスにnullを設定する方法に関するメモです。DateTimeクラスにnullが設定できれば何も問題なかった…

【Unity】Imageのスプライトをスクリプトで切り替えるとアスペクト比がおかしくなる場合の対処法

UnityでImageのSpriteをコードで切り替える処理を行ったのですが、画像自体は切り替えられるけど、アスペクト比がおかしくなる現象が発生しました。やりたいこととしては、シーンにImageを配置して、カレンダーの日付に応じてスクリプトでImageのSpriteを切…

【Unity】アプリのFPSを確認する・FPS設定を変更する方法

Unityで作ったアプリでクライアントから「Android版の動作がもっさりしている」という指摘を受けたので、高速化する方法を色々調べていたら、FPS(Flames Per Seconds)を変更する方法があったので試してみました。【Unity】FPSを確認する方法まず、現状のア…

【Unity】ランダムな値を生成する方法と、UnityEngine.RandomとSystem.Randomの競合について(C#)

Unityでランダムな値を生成する方法に関するメモ。ランダムな値を生成したい場合はUnityEngine.Random.Rangeを使用します。上記の例だと、0以上100未満(99まで)の値の中からランダムで値を生成します。第2引数の値はランダムな値に含まないのがポイントで…

【Unity】ゲームオブジェクトの表示順(レイヤーの重ね順)の問題を解決する方法

Unityでアプリを作っている時に、UIのImageとSpriteの表示順(レイヤーの重ね順)が意図した順番にならなくて困ったので今後の為にメモ。ゲームオブジェクトの重ね順が意図した表示にならない。Hierarchy上で順番を変更してみたり、ゲームオブジェクト毎にレ…

【Unity】iOSのステータスバーの文字色を変更する方法

Unityで作ったアプリでステータスバーを表示する方法を以前書いたのですが、ステータスバーの文字色を変更する必要も出てきました。上記の設定によりステータスバーを表示することはできますが、iOSの場合、ステータスバーのデフォルトの文字色は黒なのでUni…

【Unity】intの値が5の倍数かを判定する方法(C#)

Unityアプリ開発で「リスト表示でアイテム5個毎に線を引く」という実装をする時に リストのindexの値が5の倍数かどうかを判定する必要があったのでメモ。〇〇の倍数かを判定する。まずコードを書く前に5の倍数かどうかを判定するロジックを理解する必要があ…

【Unity】2つのList配列から共通する値を探す方法(C#)

最近仕事で作っているアプリで「2つの配列から共通する値を探して処理する」場面があったのですが意外とはまってしまいました。慣れてくるとなんてことはないので他のList配列の処理方法と一緒に今後の為にメモ。2つの配列から共通する値を探す方法。配列…

【Unity】Androidアプリビルド時にライブラリの競合エラーが発生した際の対処法に関するメモ

D8: Program type already present: android.arch.core.internal.SafeIterableMap Unityで作ったアプリに広告SDKをいれたらAndroidアプリビルド時に上記のようなエラーでビルド出来ない状態になってしまいました。エラー内容や変更点から考えるとSDK追加時に…

【Android】アルファ版をリリースする場合に登録しなきゃいけない項目まとめ

Unityで作ったアプリのAndroid版をアルファ版としてリリースしようとしたのですが、アルファ版をリリースする場合でも登録しなきゃいけない項目が結構あったので備忘録として残しておきます。Androidアプリをアルファ版として公開するためにGoogle Play Cons…

【Unity】CodelessIAPは結構罠が多いから自分でスクリプト書いた方が確実で速いと思うよ

最近Unityでアプリ内課金を実装するために「CodelessIAP」を使ってみました。簡単に実装できそうということで試してみましたが、結構罠があるので注意が必要そうです。今回はUnityのCodelessIAPでアプリ内課金を実装した感想、つまづきポイントをまとめてお…

【Unity】Android版の64bit対応でやるべきこと

Googleによると2019年8月1日以降、Google Playで公開するアプリには64bit対応が必須になるそうです。最近Google Playにアップしたアプリでも、64bit対応を勧める警告が表示されるようになってしまったので、今のうちに対応しておくことにしました。今回は、U…

UnityのIAPでGoogleの公開鍵(ライセンスキー)が登録できない場合の対処法

Unityのアプリ内課金機能(Unity IAP)を実装中なのですが、Unity上でGoogleの公開鍵(ライセンスキー)を登録しようとしたけどエラーが出て登録できない状況に陥ったので今後の為にメモ。Unity IAPで公開鍵(ライセンスキー)が登録できない。UnityのIAPの…

【Unity】iOS版をシミュレーターで動作確認したい場合にやるべきこと

この前、Unityで作ったアプリで特定の端末のレイアウト崩れが起きていないか確認したい状況がありました。Unityで画面サイズを確認したい端末と同じにすれば大体は確認できるのですが、ステータスバーの表示を含めたレイアウトを確認したかったので、手元な…