0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

MTGのカード検索アプリを作る with AAC

Last updated at Posted at 2022-03-30

はじめに

MTG(Magic: The Gathering)のAPIを使うことで、カードデータを取得することができます。
今回はそのAPIを使ってカード検索をするAndroidアプリを作りました。
ついでに一からアプリを作るということで、Android Architecture Components(AAC)での設計、実装をしました。

使ったAPI

Magic: The Gathering API
MTGのカードやフォーマット等の情報を取得することが出来るAPI。
取得できる情報量が多い + 多言語のカードも取得できるAPIになっています。

このAPIはhttps://api.magicthegathering.io/<version>/<resource>の形式でのREST APIを提供しているので、今回はこちらを使って以下のリクエストでカード検索を行いました。

https://api.magicthegathering.io/v1/cards?language=japanese&name=$カード名

設計

全体の設計は以下のような形になっています。AACを意識してみました。
スクリーンショット 2022-03-31 1.33.14.png

できたもの

スクリーンショット 2022-03-31 2.18.17.png

学べたこと

  • REST APIの結果をGsonを用いてパースする際のモデルを一から作成できた
  • Android Architecture Componentsでの設計

今後の拡張予定

  • AWS Lambda, Firebaseとの組み合わせ
    実はAWS Lambdaとの組み合わせは途中まで作っていたのですが、実際の作成物に組み込むまで進めることができず...
    これは完成まで持っていきたい

  • 検索方法の自由度アップ
    今回はREST APIをAndroidから呼び出し -> 結果をパースして表示をメインにしていたのでカード名のみでの検索になりましたが、他の条件(マナコスト、色との組み合わせで検索とか)でも自由に検索できるようにしたい

  • 多言語設定
    日本語に特化したものを作ってしまったので、クライアント側から言語切り替えしたりできたら楽しそう...

  • デザイン
    後回しにしすぎてほぼデフォルト状態。せっかくなので新しいMaterial Designであるandroidx.componse.material3をフルに使ったものにしたい

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?