【Androidアプリ】開発前に毎回設定・実施すること

プログラミング
スポンサーリンク

はじめに

今回の記事で記載するのは、
androidアプリを開発する際、最初に設定・実施することについてです。

具体的には環境構築以降で、各アプリを作成する始めに設定する内容です。
環境構築はPCに対して1回ですが、今回の内容はアプリ毎の作業となっています。

パッケージ名の決定

開始する際に一番最初に決めなければいけない内容です。
具体的に決める内容としては次の通りです。

最初の設定内容
  1. アプリ名
  2. パッケージ名
  3. 保存先
  4. 使用言語
  5. Minimum SDK
  6. Use legacy android.support library

3. ~6.については自分の環境に合わせてください。(6.は基本不要でよいはずです。)
2. パッケージ名についてはアプリ公開時にストアのURLとして使われるため、体系立てたものを使いたいところです。

パッケージ名例

com.zaqwerty67.【アプリ名】

取得したドメインを逆順にして、最後は英字アプリ名などとすると他人ともかぶらずに開発ができます。

補足① 【Qiita記事】Androidアプリ開発で取り返しがつかないことまとめ

https://qiita.com/ryo_mm2d/items/6da55b7801863562e7b3

Qiita記事を探してみたところ、パッケージ名について詳しい解説があったのでこちらもみてみてください!
その他の記載内容もとても参考になります。

エミュレータの動作確認

ある程度開発を進めてからエミュレータでテストしようとすると、バグのせいで起動しないのか、エミュレータの設定等が悪いのか切り分けができなくなってしまいます。

動作確認として、一度起動してみることをオススメします。
何かあればまずはエラーメッセージを確認し、検索して対処方法を探しましょう。

問題発生時のありがちな対処
  • ADV Managerから、エミュレータイメージを削除し作り直す
  • SDK Managerから、最新のSDKをインストールする

AndroidStudio画面上部のToolから実行できます。

Gitブランチ作成・動作確認

エミュレータの動作確認と同様ですが、開発している中で致命的なミスをしてしまったり、ライブラリのバージョンを変えたせいで動作しなくなってしまうことがります。

バージョン管理さえしていれば、、、ということにならないように初期段階で設定しておきましょう。

★手順★
上部メニューバー > VCS > Enable Version Control Integration…
を選択し出てきたポップアップで「git」を選択する。

gitでのバージョン管理が可能となるため、「Commit」を選択し、対象となるプログラムの確認を行う。

コミットメッセージを入力してコミットを実行すると、問題があるプログラムが表示可能となります。
(今回は確認を割愛しますが、IDEが問題点を指摘してくれているので見た方が良いです。)

ローカルでの作業が終わったので、リモートリポジトリと紐づけます。
上部メニューバー > VCS > Import into Version Control > Share Project on GitHub

GitHubでの設定をポップアップで行います。
(他の人から参照されたくないものは「Private」を設定)

設定が終わったらGitHubへログインし、リポジトリが作成できたかを確認しましょう。

ここまででリポジトリ作成、バージョン管理はできていますが、
masterブランチで開発することはオススメできないため、ブランチを作成します。

AndroidStudio右下の「Git:master」を選択 > 「New Branch」を選ぶ

新しく作るブランチ名として、「develop」を作成し、チェックアウト状態にします。

ここまでで開発の準備が完了しました。ブランチの使い分けのイメージとしては次の通りです。

ブランチの使い分け

develop : 普段の開発で使用するブランチ。機能ごとなどでコミット・プッシュして管理
master  : Playstoreにリリースする段階でマージするブランチ

Playstoreの状態のロジックがわからないと、バグの報告などがあった際に調査や再現確認ができなくなる可能性があります。
そのためリリースしている状態を保持しておくことを推奨します。

アプリの設定系ロジック

アプリ全体の動きに関わる設定で、忘れがちなものを記載します。

①画面の回転を固定する

画面の回転を固定するためにはactivity毎に定義する必要があります。
AndroidManifest.xmlで設定する場合は次の通りです。

<activity
 android:name=".MainActivity"
 android:screenOrientation="portrait">
. . .
</activity>

横画面に固定する場合は”landscape”を指定すればOKです。

Android デベロッパー  |  Android Developers
アプリのビジュアルユーザーインターフェースの一部を実装するアクティビティ(Activityサブクラス)を宣言します。アクティビティはすべて、マニフェストファイルの{@code}要素で表す必要があります。宣言されていないものはシステムで確認できません…

ロジック内で設定(動的に変えたい場合)はMainActivity.kt等それぞれのアクティビティで設定します。

// onCreate()内などで設定
requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
ActivityInfo  |  Android Developers

②同時タップを抑止する

同時タップを許容すると意図せぬ動きをしてしまう可能性があるため、抑止しておきます。
styles.xmlに以下を定義します。

<item name="android:splitMotionEvents">false</item>
<item name="android:windowEnableSplitTouch">false</item>

各画面によって、許容するかどうかを変える場合はそれぞれの画面のxmlに定義することで挙動を変えることができます。

③ビルド時のライブラリメソッドの上限を回避する

minSdkVersionが20以下に設定している場合、SDKをたくさん読み込もうとするとビルドエラーになります。(admob関連とか)

アプリ、およびアプリの参照するライブラリが 65,536 メソッドを超えると、ビルドエラーが発生し、Android ビルド アーキテクチャの制限に達したことが示されます。

s://developer.android.com/studio/build/multidex?hl=ja#kts

内容的にエラーにかかってからの対処でも問題ないですが、以前引っかかったことがあるので備忘として記載しておきます。

64K を超えるメソッドを使用するアプリ向けに Multidex を有効化する  |  Android デベロッパー  |  Android Developers
「multidex」というアプリの構成を有効にして、アプリが複数のDEXファイルのビルドと読み取りをできるようにする方法について説明します。

さいごに

最後までお読みいただきありがとうございました。
わからないことを検索しながら開発を進めていく力も必要だと思いますが、
体系立てて学ぶことも大事なので、ぜひ本も活用してみてください!

コメント

タイトルとURLをコピーしました