AppSeedのアプリ開発ブログ

アプリ開発会社AppSeed(アップシード)開発担当のブログです。iOS、Android、Unity、Cocos2d-xなどアプリ開発関連のTipsや備忘録、アプリ開発に役立つ情報を発信します。

【Unity】英数文字列を半角全角、大文字小文字区別なく比較する方法

最近、Unityでテキストを入力してもらって答えの判定を行うアプリを作ったんですが、英数字が答えの場合、半角で入力された場合と全角で入力された場合、小文字で入力された場合、大文字で入力された場合で文字列が異なるため、正しい答えのはずなのに不正解…

【iOS】縦画面固定アプリがiPadで回転してしまう場合にチェックすべき点

iOS

iOSアプリのユーザーさんから、「アプリの起動中に画面が回転して表示がおかしくなってしまう」という報告を受けました。調査したところ、手持ちのiPhoneでは再現できず、iPadで再現できました。(報告をしてくれたユーザーもiPadユーザー)調査の結果、対処…

App Store Small Business Programの申請、通ったっぽい!

App Store Small Business Programの申請を2週間くらい前に行なったのですが、先日Appleより審査完了?っぽいメールが届いたので、それまでの経緯含めてまとめておきたいと思います。

【Unity】デバッグログを出力しないようにする簡単な方法

最近知ったのですが、Unityではデバッグログ出力の有無を以下の方法で簡単に切り替えられるっぽいです。開発中はログをできるだけ出力したいけど、リリース時にはログが出ないようにしたいと思う人が多いと思いますが、Unityでは「Debug.unityLogger.logEnab…

個人開発アプリのプレスリリースに関するメモ

先週末(12月5日)に脱出ゲームアプリMEMORYをリリースしたのですが、今回、初めての試みとして、プレスリリースをやってみることにしました。やってみた感想としては、やる価値結構あるなと感じたので、今後の為にメモとして残しておきたいと思います。

iOSアプリのリジェクトGuideline 5.2.1 - Legal - Intellectual Propertyに関するメモ

最近、脱出ゲームアプリMemoryをリリースしたのですが、不具合修正の為にアップデート申請を行ったところ、「Guideline 5.2.1 - Legal - Intellectual Property」のリジェクトを受けました。対策を行った結果、無事アップデート審査が通ったので今後の為にメ…

AdMobのポリシー違反はマジで気をつけた方がいい

今回、MEMORYのリリースにあたり色々と準備を進めていたのですが、AdMobのポリシー違反の影響をかなり受けてしまったので、今後の参考のために教訓を残しておきたいと思います。最初に結論を言っておくと、「AdMobのポリシー違反はマジで気をつけた方がいい…

【Unity】iOSのアプリ内レビューをUnityで実装する方法

UnityでiOSのネイティブ機能を使いたい場合、通常はUnityからiOSのメソッドを呼び出せるようにPluginを作る必要があるので、レビュー依頼機能もPlugin作らなきゃいけないなーと思っていたのですが、 Unity側でiOSレビュー依頼機能を呼び出せるようになったら…

【Unity】カスタムクラスのpublic変数がInspector上で表示されない場合の対処法

UnityでScrollRectをカスタマイズした際に、Inspector上でpublic変数の値を変更しようと思ったら、Inspector上で表示されない状態になり一時的に困ってしまったので今後のためにメモ。

【Unity】Android11対応中に遭遇したエラーと対処法に関するメモ

Android11がリリースされてから結構時間が経ってしまっていますが、最近ようやくAndroid11対応を行いました。今週1週間はほぼAndroid11対応に時間を割いてしまったので、今後の為に遭遇したエラーや、対処法などについてメモしておきたいと思います。Android…

Macで内部音声だけを収録する方法

Macの内部音声だけを収録したい場面があったのですが、やり方がわからなかったので今後の為に調べて試した結果をまとめておきたいと思います。やりたいこととしては以下です。・Macで再生した音楽や効果音を収録したい・収録した音をMP3ファイルにしたい。試…

【Unity】GUI Textの一部を別の色に変更する方法

UnityでGUI Textの一部の色を別の色に変更する方法について最近知ったのでメモ。まず、Hierarchyで、一部を別の色に変更したいTextのコンポーネントの「Rich Text」にチェックを入れます。 そして、以下のように別の色に変更したい箇所でhtmlで書くように指…

iOSアプリ開発でipaファイルをAppStoreConnectにアップロードする場合は「Transporter」が便利!

最近、別のエンジニアさんが作成したipaファイルをAppStoreConnectにアップロードするということがありました。これまではipaファイルのアップロードはXcodeの Application Loaderを使って行っておりましたが、Application Loaderは廃止されたらしいので、今…

iOS14リリース後にXcodeで「Undefined symbol: _OBJC_CLASS_$_ATTrackingManager」のエラーが出る場合の対処法

iOS

AppleがiPhoneの最新OS「iOS14」を正式リリースしました。アプリ開発をしている人にとってiOSのメジャーアップデートは嬉しい反面、今まで動いていたアプリが動かなくなる怖さもあります。iOS14リリース後、アプリをビルドしたらエラーに遭遇して1時間くらい…

【Unity】Android SDK絡みでエラーが出てビルドできない場合の対処法に関するメモ

UnityでAndroid版をビルドした際に遭遇したAndroid SDK絡みのエラーに関するメモ。Unity バージョン2019.1.0f2を2019.3.12f1にアップデート。target SDK Android 9.0。min SDK Android 6.0。Unityバージョンアップデートによる影響なのか、しばらくビルドし…

Apple Developer Programを個人から法人に切り替える方法に関するメモ

今までAppStoreで個人開発アプリとして配信していましたが、今年法人化したこともあり、Apple Developer Programを個人名義から法人名義に最近切り替えました。ネットで調べてもあまり多くはヒットしなかったので、今後の為にログとして残しておきたいと思い…

【Unity】Google PlayのAndroidアプリ100MB制限の対処方法に関するメモ

最近Unityで開発したAndroidアプリがGoogle Playの100MB制限に引っかかってしまい、apkのアップロードに失敗してしまいました。調べた結果、対処方法があったので今後の為にメモとして残しておきたいと思います。最近知ったのですが、Google Play Consoleに…

iOSアプリのリジェクトGuideline 4.2.3 - Design - Minimum Functionalityはかなり厄介

最近、iOSアプリの申請で久しぶりに厄介なリジェクト(Guideline 4.2.3 - Design - Minimum Functionality)を受けました。 (数回リジェクトされ、現在進行中)今後のためメモとして残しておこうと思います。

iOSアプリの審査でAppleからリジェクト時にクラッシュログが送られてきた場合の不具合調査方法

最近、僕の開発したアプリがAppleからリジェクトをくらったのですが、リジェクトと一緒にAppleからクラッシュログが送られてきました。今回は、Appleからクラッシュログが送られてきた場合に不具合の原因を調査する方法に関するメモをまとめておきたいと思い…

【Unity】PlayerPrefsでBool型の値を保存する方法

Unityで開発したアプリで、設定ON・OFFのパラメータを保存したい場面があったのですが、Unityアプリのセーブデータ保存や読み込みに便利なPlayerPrefsではBool型の値は保存できないということがわかったので、どうにかPlayerPrefsでBool型を保存する方法がな…

iOSとAndroidで非同期処理する方法

iOSとAndroidで非同期処理する方法に関するメモ。重い処理や画像の読み込みを行う場合、メインスレッドで行うと固まって見えたり、メモリリークが発生する可能性があるので、そうゆう処理は非同期で処理した方がよさげ。

【Unity】アプリアイコンを綺麗に表示する為の設定

Unityで開発したアプリにアイコンを設定してビルドしたところ、端末に表示されるアイコンがぼやけて表示されることがありました。設定を変更したころ改善されたので、今後の為にメモとして残しておきたいと思います。

【iOS】アプリのバックグラウンドで音楽再生中にAVAudioPlayerを再生させると音楽が止まる現象の対処法

iOS

僕が開発したiOSアプリにユーザーから「AppleのMusicアプリをバックグラウンド音楽再生中にアプリを使用したらAppleMusicの音楽が止まってしまう」という問い合わせがありました。 実際に確認してみると、確かにAppleMusicアプリで音楽のバックグラウンド再…

【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…