Kotlinで地図アプリ(ゴミ拾いアプリ)作成。(5日目)
Kotlinで制作している、GoogleMapを使った、自作のゴミ拾いアプリ。制作5日目。
これまでの経過
1日目:Android Studio + Kotlin で開発環境作成。GoogleMapAPIアクセスキー取得。エミュで動作。
2日目:地図にマーカー表示・カスタム方法。マップ表示形式の変更。
3日目:現在地を取得し、地図上に表示。クリックイベント。
4日目:移動する際にマップがスクロールしなかった問題を修正。
※毎日やってる事
・Kotlin言語の勉強
・Android Studioの使用方法
・アイコンの作成方法など基本的なアプリの作り方など
本日の課題
回収したゴミの種類を大まかに「大」「中」「小」に分け、ボタンクリックで、位置情報を表示し、GETメソッドで、サーバーへデータを送信。
通信ライブラリとしてとりあえずvolleyを使用。
スマホから送信されたデータを、受信するサーバーは、有料契約済みのロリポップを使用。
通信ライブラリ volley
Volleyの利点
・ネットワーク リクエストの自動スケジューリング。 ・複数のネットワークの並行接続。 ・標準の HTTP キャッシュ コヒーレンシを備えた透過的ディスク / メモリ レスポンス キャッシュ。 ・リクエストの優先順位付けのサポート。 ・Cancellation request API。単一のリクエストのキャンセル、ブロックの設定、キャンセル リクエストの範囲の設定ができます。 ・容易なカスタマイズ(再試行、バックオフなど)。 ・強力な順序付けにより、ネットワークから非同期に取得されるデータを UI に正しく簡単に入力できます。 ・デバッグツールとトレースツール。
公式マニュアルに従い、build.gradleにimplementation を追加
dependencies {
implementation 'com.android.volley:volley:1.1.1'
Volleyでシンプルな処理を実行テスト
マニフェストに android.permission.INTERNET パーミッションを追加
<uses-permission android:name="android.permission.INTERNET" />
プロジェクトのクリーンアップ
[Build] -> [Clean Project]
import com.android.volley.Response
import com.android.volley.toolbox.JsonObjectRequest
import com.android.volley.toolbox.StringRequest
import com.android.volley.toolbox.Volley
....
val queue = Volley.newRequestQueue(this)
val url = "https://www.xxxxxxx.com/p/index.php?DATA=ゴミ拾いアプリ"
lateinit var ResError:String
val stringRequest = StringRequest(Request.Method.GET, url,
Response.Listener<String> { response ->
// Display the first 500 characters of the response string.
//textView.text = "Response is: ${response.substring(0, 500)}"
},
Response.ErrorListener { ResError = "That didn't work!" })
queue.add(stringRequest)
とりあえず、GETデータ受信側のサーバで、リクエストデータを受け取り、記録するだけのシンプルなコードを作成。
<?php
if(isset($_GET['DATA']) && $_GET['DATA'] != ''){
file_put_contents("./data.txt", $_GET['DATA']);
?>
実行後、サーバー上のファイルを確認
ゴミ拾いアプリ
今日はここまで。
Author And Source
この問題について(Kotlinで地図アプリ(ゴミ拾いアプリ)作成。(5日目)), 我々は、より多くの情報をここで見つけました https://qiita.com/fix/items/5724f2a21f936f819c10著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .