MTGのカード検索アプリを作る with AAC
はじめに
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を意識してみました。
できたもの
学べたこと
- REST APIの結果をGsonを用いてパースする際のモデルを一から作成できた
- Android Architecture Componentsでの設計
今後の拡張予定
-
AWS Lambda, Firebaseとの組み合わせ
実はAWS Lambdaとの組み合わせは途中まで作っていたのですが、実際の作成物に組み込むまで進めることができず...
これは完成まで持っていきたい
-
検索方法の自由度アップ
今回はREST APIをAndroidから呼び出し -> 結果をパースして表示をメインにしていたのでカード名のみでの検索になりましたが、他の条件(マナコスト、色との組み合わせで検索とか)でも自由に検索できるようにしたい
-
多言語設定
日本語に特化したものを作ってしまったので、クライアント側から言語切り替えしたりできたら楽しそう...
-
デザイン
後回しにしすぎてほぼデフォルト状態。せっかくなので新しいMaterial Designであるandroidx.componse.material3
をフルに使ったものにしたい
-
AWS Lambda, Firebaseとの組み合わせ
実はAWS Lambdaとの組み合わせは途中まで作っていたのですが、実際の作成物に組み込むまで進めることができず...
これは完成まで持っていきたい -
検索方法の自由度アップ
今回はREST APIをAndroidから呼び出し -> 結果をパースして表示をメインにしていたのでカード名のみでの検索になりましたが、他の条件(マナコスト、色との組み合わせで検索とか)でも自由に検索できるようにしたい -
多言語設定
日本語に特化したものを作ってしまったので、クライアント側から言語切り替えしたりできたら楽しそう... -
デザイン
後回しにしすぎてほぼデフォルト状態。せっかくなので新しいMaterial Designであるandroidx.componse.material3
をフルに使ったものにしたい
Author And Source
この問題について(MTGのカード検索アプリを作る with AAC), 我々は、より多くの情報をここで見つけました https://qiita.com/t_nana/items/894ffb3d959844f51eda著者帰属:元の著者の情報は、元の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 .