【Android】個人開発で使ってるツールやサービス

これは[個人開発 Advent Calendar 2017](https://qiita.com/advent-calendar/2017/private-development)の18日目の記事です。

## はじめに
普段Androidアプリの個人開発で使ってるツールやサービスの紹介です。
個人的に使ってるものなので、これが必ずしもベストというわけではないです。
[【Android】個人アプリ開発のススメ](https://qiita.com/rkowase/items/f7518fe7eae2492f7adc)と被ってる内容もあります。

## 基本方針
極力、お金と手間をかけない。

## アイデア編
### メモ: Google Keep
![](https://qiita-image-store.s3.amazonaws.com/0/123122/14c2fcc7-b5f4-b9f4-c1ed-4f588180ac2c.png)

色々な環境で使えるので重宝してます。
出先ではAndroid端末のウィジェットから手入力するか、音声入力でメモしています。
Google Keepはテキストのバージョン管理がないので、メモが長くなってきたらメモを分けたり念のためGoogle Docsにバックアップしてます。

### マーケット調査: Google Play
![](https://qiita-image-store.s3.amazonaws.com/0/123122/7c46dfd4-a2c7-17cf-d0b2-a86539d46549.png)

カテゴリ別のランキングをひたすら見てます。
狙い目は以下の条件に当てはまるようなアプリです。（全部満たしてなくてもOK）

- 個人が作ってる
    - 企業が作ってるアプリより個人が作ってるアプリのほうが勝てる余地がある。
    - 企業が作ってるアプリでも出来が悪ければ十分狙い目。
- 上位50位以内くらいに入っている
    - 上位にいるということは少なくとも需要があるということ。
    - 同じようなアプリが上位に複数入ってる = 需要大、競合多い。
- デザインが古い
    - Lollipop以前のデザイン（マテリアルデザイン前）ならデザイン（UI）とUXを磨けば使ってもらえる（気がする）。
- レビューが良くない
    - レビュー平均点が低かったり、レビューで指摘されているところを改善したアプリを作れるかどうかという観点で見る。
- 最終更新が古い
    - 数年前で更新が止まっていてランキング上位にいるアプリは使われている理由があるのでそこを掘り下げて考察する。
- 使いにくい
    - 気になったアプリは実際にインストールして、起動速度、通信周り、導線、広告位置などを意識して使ってみる。

## 開発準備編
### ソースコード管理: BitBucket
![](https://qiita-image-store.s3.amazonaws.com/0/123122/50689d7d-f4d9-a36d-03a8-f3d890d7539f.png)

GitHubでprivateリポジトリを使うには$7/monthかかるのでとりあえずBitBucketに置いてます。
UIは慣れているGitHubと比べると大分使いにくい気がします。良くも悪くもAtlassian製品。

### タスク管理: Google Keep
![](https://qiita-image-store.s3.amazonaws.com/0/123122/14c2fcc7-b5f4-b9f4-c1ed-4f588180ac2c.png)
とりあえず使い慣れてるGoogle Keepのチェックリスト機能を使ってます。
TrelloはBitBucket連携もできるらしいのでタスク多くなってきたら移行するかもしれません。
もしくはリポジトリに紐づくタスクはBitBucketにIssueを立てて管理でもいいかもしれません。

### マネタイズ: AdMob
![](https://qiita-image-store.s3.amazonaws.com/0/123122/4b04ea87-3c85-e623-dd63-8ecf4f47e853.png)

AndroidStudioの`Tool` > `Firebase` > `AdMob`から簡単に導入できます。

## 開発編
### 開発環境: Android Studio
Androidアプリなので書く必要ないかもですが一応。

## リリース準備編
### アプリアイコン: Android Studio + Google Slides
![](https://qiita-image-store.s3.amazonaws.com/0/123122/71e00b1f-868b-fdfd-ce26-49ca4c06707b.png)

まず、Android StudioのAsset Studio（Image Assetを作れるウィザード）でアイコンの原型となる画像を作ります。

![](https://qiita-image-store.s3.amazonaws.com/0/123122/b195b40c-3e70-9ccf-7a4d-87eca4020531.png)

次にGoogle Slidesで適当に編集します。
高解像度なアイコンができたら https://araishi.com/icon-resize/ で各解像度毎に出力して完成です。

### ストア画像: Device art generator + Google Slides
![](https://camo.qiitausercontent.com/85ac20d5bbfb9316234ff6ea10df5fc806f57942/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3132333132322f63363566323031632d656138652d396437662d383166382d3865373931366332636232632e706e67)

まず、Googleが提供している [Device art generator](https://developer.android.com/distribute/marketing-tools/device-art-generator.html) でデバイスはめ込み画像を用意します。

![](https://qiita-image-store.s3.amazonaws.com/0/123122/b195b40c-3e70-9ccf-7a4d-87eca4020531.png)

その後Google Slidesでアプリアイコンやアプリ名のテキストなどを適当に配置して作ります。

### 鍵管理: Google Drive
![](https://qiita-image-store.s3.amazonaws.com/0/123122/aa8eabc1-ed79-1fa9-26eb-f479b10a3e23.png)


[アプリの署名 | Android Studio]
(https://developer.android.com/studio/publish/app-signing.html) や [【Android】Google Play App Signingのススメ](https://qiita.com/rkowase/items/90cdc4e8c6fc449d8276)を参考にリリース用の鍵を作って、念のためGoogle Driveに入れておきます。
バックアップできればいいのでDropboxなどでもOKです。

## リリース後
### レビュー確認: Google Play Console
![](https://qiita-image-store.s3.amazonaws.com/0/123122/77e4cacd-4315-7e16-9442-d6a277c47c9c.png)


Consoleの`ユーザーフィードバック` > `レビュー`から確認できます。
Consoleアプリを入れておけば新着レビューをプッシュ通知で受け取ることもできます。

### クラッシュ検知: Crashlytics
![](https://qiita-image-store.s3.amazonaws.com/0/123122/2b7d2e7b-e1fe-c56f-711c-a4322c29c90f.png)

[Firebase Crashlytics](https://firebase.google.com/docs/crashlytics/) を使います。
Google Play Console の `Android Vitals` > `ANRとクラッシュ` の項目からもクラッシュレポート確認できます。

## その他
### プロトタイプ: POP or Prott
![](https://qiita-image-store.s3.amazonaws.com/0/123122/c5a3cca3-b439-dedc-4d3b-ee54037df3b7.png)

以下のペーパープロトタイピングの印刷用テンプレートでざっくり書いてます。
https://marvelapp.com/static/site/downloads/devices.pdf

その後、[POP](https://marvelapp.com/pop/)や[Prott](https://prottapp.com/ja/)で遷移や操作感を確認します。

## 補足
お金があればアプリアイコンやUIデザインを外注するというのも良いかもしれません。

## 参考
【Android】個人アプリ開発のススメ - Qiita
https://qiita.com/rkowase/items/f7518fe7eae2492f7adc