Android

DroidKaigi 2024 参加レポート

DroidKaigi 2024 参加レポート タクシーアプリ『GO』のAndroidアプリを開発している山本(@farundorl)です。 先日開催されたDroidKaigi 2024に参加してきました。本記事ではイベントの様子やスポンサーブースの様子などについてレポートします。 はじめに Dro…

GO TechTalk #27 タクシーアプリ『GO』AndroidでのreCAPTCHA導入・WebADBでの自動化

2024年6月18日に「GO TechTalk #27 タクシーアプリ『GO』AndroidでのreCAPTCHA導入・WebADBでの自動化」(connpass)を開催しました。 本記事では当日の内容を簡単に紹介します。 GO TechTalkとは? GO TechTalkは、GO株式会社のエンジニアたちが、タクシー…

実践 脱Modifier.composed

実践 脱Modifier.composed タクシーアプリ『GO』のAndroidアプリを開発している山本です。 Android アプリの UI 開発ツールキットである Jetpack Compose ライブラリでパフォーマンス向上のために既存の Modifier.composed を使った実装を Modifier.Node に…

SpekからKotestへのテストフレームワーク移行

タクシーアプリ『GO』のAndroidアプリを開発している祖父江です。 Androidアプリ開発で利用しているテストフレームワークをSpekからKotestへ移行した内容を紹介させていただきます。 Spek、Kotestとは? ともにKotlinのテストフレームワークで、Androidアプ…

TalkBack対応とJetpack Composeにおけるアクセシビリティ

タクシーアプリ『GO』のAndroidアプリを開発している石橋です。 Androidアプリのアクセシビリティ向上について興味を持ち、技術的にどのような対応ができるかを調べて検証してみました。 本記事ではAndroidのスクリーンリーダー機能である「TalkBack」の概要…

DroidKaigi 2023 参加レポート

タクシーアプリ『GO』のAndroidアプリを開発している石橋です。 先日開催されたDroidKaigi 2023に参加してきました。 GO株式会社はゴールドスポンサーとしてスポンサーブースを出展させていただきました。 本記事ではイベントの様子やスポンサーブースの様子…

ARCore Geospatial APIで任意の地点に3Dモデルを表示する

はじめまして。 タクシーアプリ『GO』のAndroidアプリを開発している石橋です。 GO株式会社には半年に2週間、業務を離れて自分の興味のある内容に取り組むことができる「Engineer Challenge Week (ECW)」という制度があります。 ECWで、ユーザー課題を解決す…

Androidアプリの依存性管理をGradle Version Catalogに乗り換える

タクシーアプリ『GO』のAndroidアプリを開発している山本です。 Androidアプリ開発に必要なライブラリの定義方法をGradleのVersionCatalogに乗り換えるときに調べたことと利点を紹介します。 Gradleと依存関係の定義 Androidのビルドツールとして採用されて…

OpenAIのAPIを使って、Kotlin Multiplatform Mobile(KMM) で API周りの共通化を学んでみる

Kotlin Multiplatform Mobile(KMM)を使ってコアロジック部分を共通化してAndroid/iOSで共通なコアを使ったアプリをそれぞれつくってみた。という記事です。 はじめまして。もしくはおひさしぶりです。タクシーアプリ「GO」の開発や技術研究調査などをしてい…

MoT TechTalk タクシーアプリ『GO』Androidの新ネタ2週間でいろいろ試してみた! #mot_tech_talk

2023年1月19日に「MoT TechTalk #15 MoT TechTalk タクシーアプリ『GO』Androidの新ネタ2週間でいろいろ試してみた!」(connpass)を開催しました。 本記事では当日の内容を簡単に紹介します。 MoT TechTalkとは? MoT TechTalkは、Mobility Technologiesの…

FlutterのGoogle MapでMarkerを動かしてみる

Mobility TechnologiesでFlutterエンジニアとして働いているTomiと申します。 タクシーアプリ「GO」ではGoogle MapにMarker(Taxi)を動かす場合が多くあります。Flutterではどのように動かせるのかを調査しましたので、この内容を共有します。 目標 Google Ma…

Flutter moduleのAARをGitHubレポジトリにデプロイする

こんにちは、Mobility TechnologiesでFlutterエンジニアとして働いているTomiと申します。 以前ブログで書いた「Flutter moduleのAARをMaven + GitHub ActionsでGitHub Packagesにデプロイする」ではFlutter v3.3.0より前のバージョンで動作する方法を紹介し…

Flutter moduleのAARをMaven + GitHub ActionsでGitHub Packagesにデプロイする

Mobility TechnologiesでFlutterエンジニアとして働いているTomiと申します。 今回AndroidアプリケーションにFlutterを組み込む方法について調べてみました。調査した内容の中でFlutter moduleのAAR(Android ARchive)をMavenとGitHub Actionsを利用してGitHu…

アプリのストアレビューから改善の種を見つける

タクシーアプリ「GO」の iOS アプリを開発している今入です。本記事ではアプリのストアレビューをチームメンバと一緒に定期的に確認して改善に繋げている取り組みについて紹介します。 はじめに App Store や Google Play にアプリの評価(ストアレビュー)…

タクシーアプリ「GO」に Jetpack Compose を部分導入している話

タクシーアプリ「GO」のAndroidアプリを開発している山本です。本記事ではAndroid アプリの UI 開発ツールキットである Jetpack Compose ライブラリをプロダクトの機能開発を進めながら導入している事例をご紹介します。 はじめに Jetpack Compose は新しく …

バグバッシュをアプリ開発のプロセスに組み込んだ話

この記事はMobility Technologies Advent Calendar 2021の14日目です。 タクシーアプリ「GO」の iOS アプリを開発をしている古屋です。 この記事では GO でなぜバグバッシュを開発のプロセスに組み込んだか、やってどうだったかについて紹介します。 バグバ…

Androidエンジニア必見!タクシーアプリGOのUXを高める工夫

2021年5月27日に「MoT TechTalk #4 Androidエンジニア必見!タクシーアプリGOのUXを高める工夫」(connpass)を開催しました。 本記事では当日の内容を簡単に紹介します。 当日のスライド MoT TechTalkとは? MoT TechTalkは、Mobility Technologiesのエンジ…

車載Androidシステムの技術と開発チーム #mot_tech_talk

2021年3月9日に「MoT Online Tech Talk Vol.2 車載Androidシステムの技術と開発チーム」(connpass)を開催しました。 本記事では当日の内容を簡単に紹介します。 当日のスライド MoT TechTalkとは? MoT TechTalkは、Mobility Technologiesのエンジニアたち…

AndroidアプリのJCenter閉鎖の影響調査と暫定対応

こんにちは。 車載システム第二グループの空中です。Twitter等では @soranakk で活動しているのでそちらの方がわかるかもしれません。普段はタクシー車両に搭載された専用端末上で動作するAndroidアプリ開発をしています。 さて、唐突ですがJCenterが閉鎖さ…

spek2+mockkでLiveData+Coroutineをテストする

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 「JapanTaxi」アプリの Android版では、Coroutineを導入して使っています。それでCoroutineが入ったロジ…

AndroidのE2Eテストの自動化を安定させるためにやったこと

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 今年はAndroid・iOSのE2Eテスト自動化を中心に進めてきました。進める中でいろいろ思考錯誤してきたTIPS…

AppiumでAndroid・iOSアプリのテスト実行動画をエビデンスとして残してみよう

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 Software Engineer in Testチーム(通称:SET)でスマホアプリの自動化をすすめている笠間です。現在、SE…

Google I/O 2019に参加しました

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 先日アメリカで開催されたGoogle I/Oに参加してきたので、初参加の目線で気になったセッションを紹介して…

DroidKaigi 2019に参加してきました

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 DroidKaigiとは2019年2月7日(木)〜2月8日(金)に開催されたAndroidに関するカンファレンスです。Japan…

UIテストを作ってFirebase Test Labで実行してみた話

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 はじめに JapanTaxiのアプリにはたくさんの機能があります。リリース前のテストは全て手動で行っているの…

ファイルディスクリプタリークの事例紹介

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 本記事では Android アプリケーションの開発中に見つかったファイルディスクリプタリークの事例をご紹介…

他のアプリに「バックグラウンドで動く処理をやるService」を提供する方法

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 この記事は「JapanTaxiアドベントカレンダー 」21日目の記事です。 はじめに 他のアプリとActivityを使っ…

Android DataBindingで連打防止カスタムセッターを作る

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 最近、広告タブレットに kotlin + MVVM + LiveData を導入しました。レイアウトxmlでButtonに紐づけたア…

特別連載|5. JapanTaxiアプリAndroidの開発裏話

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 これはJapanTaxi AdventCalendar 11日目の記事です。 JapanTaxiアプリのリニューアル時に新たに取り入れ…

タクシーに乗ると自動で流れる広告タブレット、その仕組みをご紹介します

※本記事は Mobility Technologies の前身である JapanTaxi 時代に公開していたもので、記事中での会社やサービスに関する記述は公開当時のものです。 皆さんは、日本交通のタクシーに乗車したことはありますでしょうか?もしまだ日本交通のタクシーに乗車し…