Android アプリ開発した際の躓きポイントを纏めてみた

#概要
とあることから、Google Maps APIを使用したAndroidアプリを作成することになったので、
参考にしたリンクを備忘録のために纏めました。

#環境編
##前提
[Androidコードディング規約](https://qiita.com/Reyurnible/items/2de397b80391189af8e4)
[もしあなたが急にAndroidアプリを業務で作るはめになった場合の選択肢(2021年初頭版)](https://qiita.com/Gazyu/items/dafdb74c4aadf722da92?utm_source=Qiita%E3%83%8B%E3%83%A5%E3%83%BC%E3%82%B9&utm_campaign=d50d3688f4-Qiita_newsletter_440_12_09_2020&utm_medium=email&utm_term=0_e44feaa081-d50d3688f4-33582113)

##Android Studio
[Android studio の Gradleについて調べてみた](https://qiita.com/190yamashita/items/f00d8b2f908dd754c506)
[Android Studioでの外部ライブラリの読み込み方と注意点](https://qiita.com/icchi_h/items/8ce738ce8511ef69c799)

##ドキュメント
[Javadocの作成方法を現役エンジニアが解説【初心者向け】](https://techacademy.jp/magazine/22227)


#設計編
[Android アプリ設計パターン入門](https://peaks.cc/books/architecture_patterns)


#コーディング編
## コンテクスト
[Androidの勉強：Contextについて](https://qiita.com/iduchikun/items/34b3ae26cfc438e7e5dc)
[整理できない底辺プログラマのメモブログ : Contextとは？](http://individualmemo.blog104.fc2.com/blog-entry-41.html)

##パーミッション
[Androidパーミション別－何してんの？#5 NETWORK編](http://workpiles.com/2014/08/android-permission-network/)
[設定画面のインテントアクションまとめ](https://qiita.com/nein37/items/087ef3ab6a11d6bbf9e6)

##画面遷移
[[Android] 10分で作る、Navigationによる画面遷移](https://qiita.com/tktktks10/items/7df56b4795d907a4cd31)
[最初のActivityに戻る](https://qiita.com/naoty_k/items/f733ff8a69a141331bba)
[Fragmentによる画面遷移でハマった](https://qiita.com/tomo1139/items/62902093d1850085742d)
[Fragmentで、パラメータ付きの画面遷移を実装する](https://tech.mokelab.com/android/Fragment/argument.html)

##View要素
###Button
[[Android] Button のonClickListenerの設定が色々できる件](https://akira-watson.com/android/button-onclicklistener.html)
###Fragment
[Fragment自身を終了させる](https://qiita.com/petitviolet/items/9a8302d1f08fbde1fc65)
[AndroidStudioの標準デザインパターンで分かるFragment入門](https://qiita.com/Hoshi_7/items/bee2588397348a4e0105#activity%E3%81%A8%E3%83%95%E3%83%A9%E3%82%B0%E3%83%A1%E3%83%B3%E3%83%88)
[AndroidでFragmentの結果をActivityで受け取る](https://araramistudio.jimdo.com/2018/03/01/android%E3%81%A7fragment%E3%81%AE%E7%B5%90%E6%9E%9C%E3%82%92activity%E3%81%A7%E5%8F%97%E3%81%91%E5%8F%96%E3%82%8B/)

##HTTP通信
[AndroidでHTTP通信したいときの手段まとめ](https://qiita.com/riversun/items/5f78d47a3d95f857d34f)

##GPS関連
[[Android] GPSで位置情報を取得するアプリを作る](https://akira-watson.com/android/gps.html)
[FusedLocationProviderClientを用いた位置情報の取得](https://qiita.com/maebaru/items/ba821938e66498d6ae76)

##Callback・マルチスレッド・タスク
[プロセスとスレッドの概要](https://developer.android.com/guide/components/processes-and-threads?hl=ja)
###Handler
[Handler と Looper](http://mixi-inc.github.io/AndroidTraining/fundamentals/2.12.handler-and-looper.html)
[Handlerの使い方を紹介する](https://qiita.com/8yabusa/items/f8c9bb7eb81175c49e97)
[AndroidでTimerを使わずHandlerだけでお手軽に定期実行してあげる](https://qiita.com/aftercider/items/81edf35993c2df3de353)
[Handlerクラスの正しい使い方（Androidでスレッド間通信）](https://sankumee.hatenadiary.org/entry/20120329/1333021847)
[幸せな非同期処理ライフを満喫するための基礎から応用まで](https://qiita.com/KeithYokoma/items/4e6e9bd4e44aab63424d)
[【Java】Handlerクラスについてまとめてみました](https://re-engines.com/2019/12/19/%E3%80%90java%E3%80%91handler%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%81%BE%E3%81%A8%E3%82%81%E3%81%A6%E3%81%BF%E3%81%BE%E3%81%97%E3%81%9F/)
[【Android】HanlderとMessageを使ってマルチスレッドの処理結果を受け取る](https://phicdy.hatenablog.com/entry/2014/09/02/220457)
###Task
[【Java】定期的にタスクを実行する方法](https://qiita.com/yacchi1123/items/958c908d8c9018c1eba4)
###スレッドセーフ
[排他制御のあれこれ](https://qiita.com/opengl-8080/items/fa22f46d7bf35fa45c21)

##ライフサイクル
[onCreate と　onStart と onResume の違い](https://qiita.com/m2mtu/items/ac0d61e884519a4c61bb)
[知らずに作って大丈夫？Androidの基本的なライフサイクルイベント31選](https://www.atmarkit.co.jp/ait/articles/1604/04/news011_2.html)
[Androidの画面設計や遷移に関して整理してみる](https://qiita.com/teradonburi/items/24f25a7c6590c8acad71)

##その他
###プログレスバー
[Androidでプログレスダイアログを使用して、処理を行う](https://gist.github.com/dotroidxx/879315)
[【Android】ProgressDialogがDeprecatedになっている理由、正しく理解してます？](https://chikach.net/android-app/pd-deprecated/)

### スマホセンサ類
[Androidデベロッパー.位置センサー](https://developer.android.com/guide/topics/sensors/sensors_position?hl=ja#sensors-pos-orient)
下のリンクは少し古かったようなので取り消します。Androidデベロッパーサイトを参考にした方が良いです。
~~[Android:端末の傾きと方位を、センサーを利用して取得する](https://taiyoproject.com/post-118#:~:text=%E5%82%BE%E3%81%8D%E3%80%81%E6%96%B9%E4%BD%8D%E3%81%AE%E5%8F%96%E5%BE%97%E6%96%B9%E6%B3%95&text=%E7%AB%AF%E6%9C%AB%E3%81%AE%E5%82%BE%E3%81%8D%E3%81%AFX,%E8%A5%BF%E3%80%8D%E3%81%A8%E3%81%AA%E3%81%A3%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82)
[Androidで世界座標系の加速度と方位を取得する](https://qiita.com/ryskiwt/items/f6d98c0a82ba7e31c9b3)~~

#Maps API編
##GoogleMapsAPI
[Google Maps Platform ドキュメント](https://developers.google.com/maps/documentation)
[地図オブジェクト](https://developers.google.com/maps/documentation/android-sdk/map)
[AndroidのアプリにGoogle Mapを組み込む](https://blog.cfm-art.net/archives/616#toc8)
[Android - Polyline encoding algorithm?](https://stackoverflow.com/questions/10379870/android-polyline-encoding-algorithm/35445389)

#まとめ
とりあえず、リンクを羅列しましたが、各リンクから何が得られるのか、余裕があり、気力が沸いたら書こうとおもいます。