2023-01-01から1ヶ月間の記事一覧

ちょっと考えてみた31

ここでは用語を整理してみます。『シリアライゼーション』『エンコード』『パース』 さて、ミステリー小説はよく読むでしょうか。そこに暗号というものが出てくることがあります。これは、あることを伝えたいが、ほかの人には知られたくないために、特定の人…

ちょっと考えてみた30

Androidスマホで、メモ帳とか使っていても、保存したテキストファイルがどこに保存されているかが不明である件について調べてみました。 スマホ使い始めから、パソコンのように使いたいので、エクスプローラは常時インストールしてました。Astroファイルマネ…

ちょっと考えてみた29

Android SDKのAPIレベルとバージョンについて調べてみました。 新型コロナウイルス接種証明書アプリも、Android11では使えなかった。[Aques sense3 basicは、Android11までしかアップデートできない。] Androidアプリを作成し、公開する場合、どのAPIレベ…

AS Jackson編⑤解答~ObjectMapper(Jackson)を使う~APIレスポンス(一つの場合)をJSON形式で受け取り、それをログに通常表示する~

MainActivity.java import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import java.io.IOException;public class MainActivity extends AppCompatActivity { @Override pro…

Google Cloud APIを見てみる

cloud.google.com 上記ホームページで、すべてのプロダクトを見るを押せば、すべてのプロダクトおよびサービスが出てきます。 無料版(トライアル版)があるものや、トライアル版は無く条件付き有料版(ある一定以上使用すると料金が発生)があるものなどが…

ちょっと考えてみた28

スレッドについてはわかっているようでわかっていないところがあるので再度みてみました。 重要なポイントは、プログラマが自分でrunを呼び出すのではないということです。スレッドがいつrunを呼び出すかは指示できず、スレッドの準備が終わったタイミングで…

WebAPIにおけるコールバックという仕組みについて

まず、クライアントがリクエストを行います。Webサーバを介して、相手先のサーバーにリクエストが届き、処理され、そのレスポンスが、Webサーバを介して、返ってきます。これがWebサービスです。 リクエストしたが、相手のサーバーで処理に時間がかかってい…

パーサーとは?

パーサーという用語を聞いたことがあるかもしれません。 どういうものでしょうか。 e-words.jp JSON形式で受け取っても、それを、JavaあるいはAndroidのプログラムでそのまま使えるわけではありません。 ちなみに、 JSON = JavaScript Object Notation こう…

AS Jackson編⑤問題~ObjectMapper(Jackson)を使う[APIレスポンス(一つの場合)をJSON形式で受け取り、それをログに通常表示する]

Try1.ジョークAPIを使って、APIレスポンスをJSON形式で受け取り、それをログに、JSON形式ではなく普通に出力・表示させてください。 ジョークAPIのURLは、下記です。 https://official-joke-api.appspot.com/jokes/random これを叩くと、下記のようなレス…

ちょっと考えてみた27

7グローバル変数という聞きなれない用語が出てきたので、Android、Javaでの変数について考えてみる。 少し復習。 Javaでは、フィールドという名称が出てくるが、これはすこし混乱するもとだとおもってます。メンバー変数と呼んだほうがしっくりきます。 ロー…

ちょっと考えてみた26

そもそもResponseBodyというのは、Objectを継承したものなのか?という疑問がわいてきたが、下記のように特に特別なものではない様子である。 ResponseBody (Nablarch-API)

ちょっと考えてみた25

沼の原因は、一つは、 ResponseBodyのstring()メソッドで返ってくるString型のオブジェクトが、ログには出力できるがウィジェット(EditTextなど)に出力できないということでした。なぜ、toString()ではないのでしょうか? もう一つは、HTTP通信のリ…

ちよっと考えてみた24

昨日は沼りました。 しばらくプログラミングせず、ゆっくり理由を考えたいと思います。 その間、いろいろ楽しそうなAPI探しします。 それについては、ちょっと考えてみた に書いていこうと思います。

ちょっと考えてみた23

郵便検索APIはGET方式で、ジョークAPIはPOST方式のようです。 GET方式のようが扱いやすいですが、多くはPOST形式なようです。URLを表示した際に、?以下の文字列がついているほうがGET方式で、?以下の文字列がないものがPOST方式です。

AS API編①~簡単な内容のJSONファイルで返ってくるWeb APIを探してみる~

下記はかなり簡単なレスポンスが返ってきます。 15Dkatz/official_joke_api: 公式ジョークAPI! (github.com) コマンドプロンプトで下記入力しEnterし、JSONファイルの中身を確認します。 curl -i https://official-joke-api.appspot.com/jokes/random

AS API編②~GitHub のWeb APIを使う~

GitHubのWeb APIについては、特にAPIキーの取得や権限は必要ないようです。 コマンドプロンプトで curl -i https://api.github.com/users/(ユーザーのアカウント名) を入れて、叩くと、APIレスポンスが、JSONファイルで返ってきて表示されます。 下記を参考…

ちょっと考えてみた23

Android Studioは、重いし、ビルド時間も長い。 現在はデスクトップPCでやっているので、そこまで不便は感じないですが、ノートパソコンでやろうとすると、ビルド時間がかなりかかり、快適ではないです。 現在のデスクトップパソコンのCPUはRyzenです。Ryzen…

AS Room編③問題~DataPicker/TimePickerの使用および、時間順に並べ替え、ExecutorSerVice使用~

日付を入力するときにカレンダーが、時刻を入力するときに時計のようなものが出てきますが、あれです。それを使えるようなユーザーインターフェースを作れます。 Try1. タスクと、それを行う日付を変数とするTaskクラス作成する。それらのデータをデータベー…

AS中級 フラグメント編③~Fragmentの真骨頂、同じフラグメントを異なるアクティビティに配置する~

MainActivity.java package com.example.realfragmentdemo;import androidx.appcompat.app.AppCompatActivity;import androidx.fragment.app.FragmentManager;import androidx.fragment.app.FragmentTransaction;import android.content.Intent;import andro…

ちょっと考えてみた22

コレクションのMapおよびListを使えば、Jacksonにより変換することでJSONファイルの内容と同等になる、ということですね。 なかにはMapのListが必要な内容もありそうです。郵便検索のAPIレスポンスがまさにそれです。これらの場合は、大枠のMapのジェネリク…

ちょっと考えてみた21

Android Studio内には、Webサーバーが内蔵されているのだろうか? ApacheというWebサーバーが入ってそうであり、また、apache httpクラス群が存在する。 HTTP通信とは、Webサーバーを介してWebAPIリクエストを送り、返ってきたWebAPIレスポンスを、Webサーバ…

AS Jackson編④~ObjectMapper(Jackson)を使う[JavaクラスからJSONファイルへ変換]

style.potepan.com これについては、あまり使うつもりはないですが、上記にうまく説明およびサンプルコードあります。

AS Jackson編③~ObjectMapper(Jackson)を使う[Map、Listを使って、少し複雑なJSONファイルを作成する]

MainActivity.java package com.example.maplistjsondemo;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;public class MainActivity ex…

AS Jackson編②~ObjectMapper(Jackson)を使う[MapをJSONファイルへ変換]

MainActivity.javaと、activity_main.xmlは前回(ObjectMapperを使う①)と同じです。 SecondActivity.java package com.example.mapjsondemo;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import com…

AS Jackson編①~ObjectMapper(Jackson)を使う[JSON文字列をMapへ変更する]

MainActivity.java package com.example.jsonmapdemo;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;public class MainActivity extend…

HTTP通信を行い、レスポンスをJSON形式で受け取る~OkHttp3を使う~

下記を参考にしてます。 OkHttpを初めて使ってみた話 - Qiita

Jacksonを使う

qiita.com まずは、JSONファイルというのがどのようなものかですが、ある形式で書かれたテキストファイルです。 { "name":"山田", "age" : 42, "job" :"警察官"} というのが基本です。 少し複雑だと下記のようなものになります。 { "message": null, "result…

Mapについて

Androidでも、JavaのMapの仕組みをよく利用してます。 「キー」と「値」の組み合わせで要素を管理するコレクションのことです。Mapは、1つの「キー」に対して、1つの「値」が存在する。 重複する「キー」は存在できません。 Mapを作成するときは、ジェネリ…

標準ライブラリにないライブラリを追加する~Jacksonというライブラリを追加する~

調べるべきは、Jacksonというライブラリファイルを、①どこからダウンロードして、②それをどのディレクトリに入れればよいのか、あるいは③パスを通しておく必要があるか、ということですが、Eclipseではこのような考え方でライブラリを追加しますが、Android …

AS初級[メモ帳]ファイル入出力編①解説

MainActivity.java package com.example.frg;import androidx.appcompat.app.AppCompatActivity;import android.content.Context;import android.os.Bundle;import android.view.Menu;import android.view.MenuInflater;import android.view.MenuItem;import…