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

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

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

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

【Android】アプリ内課金をテストする為の手順

Androidアプリでアプリ内課金をテストする方法に関するメモ。アプリ内課金は今まで何回もやってますが、結構忘れてしまうことが多いのでまとめておきます。定期的なGoogle Play側のアップデートにより手順が変更される為、もしうまくいかない場合は手順をア…

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

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

【iOS】TestFlightで配信したアプリでアプリ内課金のテストを行う手順

iOS

アプリ内課金のあるiOSアプリを開発してTestFlightでアプリを配信してテストしたのですが、アプリ内課金テスト手順がややこしかったので、うまくできたパターンをメモしておきます。iOSアプリのアプリ内課金テストを行う場合、まず以下の準備を行います。開…

【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】TestFlightのプッシュ通知はApnsの本番サーバーに向いているっぽい

最近、iOSアプリ開発で自社サーバーを使ったプッシュ通知を実装しました。 今まではFCM(Firebase Cloud Messaging)使った一斉配信ばかり使っていたのであまり気にしたことなかったのですが、今回自社サーバーを使ったプッシュ通知を実装してみて、TestFlig…

Firebase Crashlyticsはリリース後のアプリ不具合調査にかなりおすすめ!

最近、FirebaseのCrashlyticsをアプリに導入してみたら、リリース後の不具合調査でかなり使えることがわかったので、メモとして残しております。最近、受託開発しているアプリの大幅リニューアルを行いました。状況的には以下のような感じでした。社内デバッ…

【Android】アプリ内で端末の操作音(カチカチ音)を鳴らさないようにする設定

私が開発しているAndroidアプリで一部のユーザーから「アプリの操作中にカチカチ音がなる」「変な音が出るので止めて欲しい」というようなレビューがありました。カチカチ音が再現できるか試してみたのですが、私の端末では再現できませんでした。気持ち悪い…

【iOS】Content and frame layout guides before iOS11.0のエラーの対処法

iOS

iOSアプリのプロジェクトをいつも通りビルドしたら、下記のようなエラーが出てビルドが通らない状況があったので今後の為にメモ。ScrollViewに設定してある「Content Layout Guide」でエラーが出てるっぽいのですが、対処法がわからなかったので調べてみまし…

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

【Android】「The application may be doing too much work on its main thread.」の対処法

Androidアプリを開発していて、どうもアプリの挙動がおかしいので、Logcatをみてみたら、以下のようなログが出力されていました。The application may be doing too much work on its main thread. 調べてみると、このようなログが出力される場合、メインス…

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

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

【iOS】CocoaPodsのバージョンを調べる方法

iOS

仕事でiOSのバージョン管理ツール「CocoaPods」のバージョンを調べる機会があったので今後の為にメモ。CocoaPodsのバージョンを調べるにはターミナルを使えば簡単に確認できます。ターミナルを起動して、以下のコマンドを入力すれば、CocoaPodsのバージョン…

【Android】HttpClientをAndroid9以上(targetSDK28)で使う方法

ogle Playの規約変更により2018年11月からAndroidアプリをアップデートする場合、targetSDK28以上にしないといけなくなりました。初版リリースから1年くらいのアプリであれば大した話ではないかと思うのですが、仕事で運用しているアプリは5年前くらいに作ら…

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

【iOS】ipaファイルの作成方法

今までは開発中のiOSアプリをチームに共有したい場合、TestFlightにアップロードして共有していましたが、最近ipaファイルを渡す方法を試してみたのでやり方をメモしておきたいと思います。 (Xcode Ver 11.2.1) Xcodeでipaファイルを作成する方法 Xcodeでi…

【iOS】ITMS-90683: Missing Purpose String in Info.plistのエラーの対処法

最近、ビルドしたアプリをApp Store Connectにアップロードしたところ、アップロードは成功したのですが、しばらくしてAppleから「ITMS-90683: Missing Purpose String in Info.plist」という内容のメールが届きました。今回はこの対処法についてメモとして…

Xcode11.2でApp Store Connectへのアップロードエラー(Invalid Toolchain)が発生した場合の対処法

iOS

昨日、Xcode (version11.2)でビルドしたアプリをApp Store ConnectへアップロードしようとしたらInvalid Toolchainのエラーが出てアップロードできませんでした。試行錯誤の結果、ようやく解決できたので、今後の為に対処法を残しておきたいと思います。いつ…

グローバルIPアドレス、プライベートIPアドレスを調べる方法

アプリ開発の仕事で、IP制限のかかったサーバーへアクセスする際にグローバルIPアドレスを調べる必要があったので、今後の参考の為に残しておきたいと思います。まず、IPアドレスは、グローバルIPアドレスとプライベートIPアドレスがあります。グローバルIP…

Macで開発元を検証できないため開けません。と表示されるファイルを開く方法

最近久しぶりのcocos2d-xアプリの開発を行ったのですが、ビルドする際に上記のようなダイアログが出てビルドエラーになってしまいました。今回はこのエラーの対処法についてメモとして残しておこうと思います。

iOS13のダークモードの罠【iOSアプリ開発】

iOS

AppleがiOS13をリリースしてから1ヶ月程度経ちましたが、 iOS13リリース後、初めてアプリをアップデートした際に遭遇した問題に関するメモ。Xcode11でアプリをビルドする場合、設定を追加しておかないとダークモード時に表示がおかしくなるので注意が必要で…

【PHP】定義した定数や文字列を使い回す方法

phpで定義した定数や文字列を他の場所で使い回す方法。javaやswiftでは結構やってましたが、phpではやったことなかったので今後の為にメモ。定義した定数や文字列を使い回す場合、まず別のところからも参照できるようなクラスを作っておく必要があります。

【PHP】画像の縦横サイズを取得する方法

PHPで画像ファイルの縦横サイズを取得する方法に関するメモ。画像の縦横サイズを取得する方法。サーバー上にある画像ファイルの画像サイズを取得したい場合は「getimagesize」を使用すればできるっぽい。

【iOS】Xcode11でRealmのエラー「Terminating app due to uncaught exception 'RLMException」が発生する場合の対処法

iOS

日記アプリ「Nikky」を久しぶりにアップデートしようとしたらXcode11でRealm関連のエラーが出てビルドできなかったので対処法をメモ。先日、iOSの最新版「iOS13」が公開されたこともあり、XcodeもXcode11になりました。Xcodeを11にアップデート後、iOSプロジ…