tomoima525's blog

Androidとか技術とかその他気になったことを書いているブログ。世界の秘密はカレーの中にある!サンフランシスコから発信中。

android

React Nativeの次世代アーキテクチャTurboModuleとJSIの話

stand.fm 社が主催する React Native 勉強会にて Catching up with TurboModules という題名で未だ全容がはっきりしない TurboModules について発表しました。 speakerdeck.com この記事は発表では伝えきれない部分を補うものとなっています。 現状の Native…

海外の国際デベロッパーカンファレンスに採択されるまでの道のりと登壇のノウハウ

11月にアメリカでDroidconと呼ばれるAndroidのデベロッパーカンファレンスに初めて登壇しました。この記事では海外(日本国外)カンファレンスの選択、採択されるまでの道のり、発表までどのような準備が必要かをまとめてみました。

Android App Bundle/Dynamic feature modulesにみるモジュール化の未来

Google I/O 2018で発表された新機能であるAndroid App BundleとDynamic feature modulesが大規模アプリのペインポイントを解決しそうなので、早速利用/サンプルプロジェクトを触ってみた所感などを書きます。(5/9Dynamic featureのテスト方法について更新し…

「Android アプリ設計パターン入門」でReactNativeハイブリッドアプリやMVVMアプリ設計について執筆しました

本を書きました! ひょんな経緯から、クラウドファンディングによるAndroid設計本「Android アプリ設計パターン入門」の執筆に携わりました。 自分が担当した章は「7章 チームとアーキテクチャ」になります。クラウドファンディングの本で手にとっていただく…

Dagger2 + KotlinでEspressoのInstrumentation test を書く

Instrumentation Testを書く時、実際にAPIリクエストは行わせず、APIレスポンスをmockしたいですよね。方法としては2通りはあるかと思います。 Gradleで Test flavorを作り、APIを差し替える Dagger2を使い、mockをinjectする mockの値を変更するのが容易な…

React Nativeハイブリッドアプリケーション開発ことはじめ

React NativeとNativeのハイブリッドアプリケーションはFacebookやAirbnbなど大企業がを積極的に導入していることやNativeアプリを部分的にリプレイスできる利便性から今後も採用が増える分野と考えられます。本記事ではハイブリッドアプリを開発した自分の…

Android Payの実装話とかWebViewの話で発表してきた

先月日本に出張した際に potatotips #35 (iOS/Android開発Tips共有会) と Shibuya.apk #11 にて発表してきました。

バックアップ機能がついたTwitCal 3.4.0をリリースしました

Android向けのカレンダー形式TwitterClient TwitCalの最新版をリリースしました。 今回はいつものバグ修正と合わせて、バックアップ機能を追加しました。 TwitCal Free ツイートをカレンダーでふりかえろう 開発元:tomoima@kumonos 無料 posted with アプリ…

Firebase Test Lab使ってみた雑感

Google IO 2016にて発表されたFirebase Test Labを試してみました。メリデメ、感じたことなどまとめました。 (6/2/2016 追記しました) tl;dr 2016年5月時点では、サポート端末の観点からアメリカ以外で使うにはまだ早そう。またネットワーク通信エラーでテス…

RxJavaで再帰処理をする、あるいは集合知は素晴らしいという話

先日、TwitterSDKのTwitterApiClientについてちょっとしたTipsを書こうと思い、サンプルアプリを作り始めました。当初はシンプルなものにする予定だったのですが、RxJavaを勉強中ということもあり、RxJavaで再帰処理を実装してみることにしました。この実装…

個人でサービス、OSS開発をする時にモチベーションを継続させるノウハウ

個人で(≒会社とは別に)サービスやOSS開発することは、会社で身につけられる以上のスキル、実績が得られたり、コミュニティを広げたりするなどメリットが多くあります。 tomoima525.hatenablog.com 自分自身もこれまでいくつかサービスやOSSを開発してきたの…

Rxjavaで川をズンドコする

Javaの講義、試験が「自作関数を作り記述しなさい」って問題だったから「ズン」「ドコ」のいずれかをランダムで出力し続けて「ズン」「ズン」「ズン」「ズン」「ドコ」の配列が出たら「キ・ヨ・シ!」って出力した後終了って関数作ったら満点で単位貰ってた—…

第2回 Roppongi.aar (英語推奨なAndroid勉強会)を開催しました #roppongi_aar

11/17に六本木界隈のAndroidエンジニア勉強会である Roppongi.aarを開催しました。第2回は株式会社メルカリで開催されました。参加者は36名で、8人の発表がありました。 クラフトビール好きにはたまらないAndroid勉強会@メルカリ #roppongi_aar pic.twitter.…

プレゼンスライド英語化のススメ

ここ数ヶ月勉強会などで発表する機会がいくつかあったのですが、最近は技術系スライドをなるべく英語で作るようにしています。そこで英語でスライドを作るメリット・デメリットとちょっとしたコツについて、書きます。

Debotというデバッグメニューを簡単に追加できるライブラリを作りました

先日Debotという名前のライブラリをリリースし、勉強会で発表したりしたのですが、主に英語で書いたりしていたので、ブログにも書こうと思います。 デバッグ用ライブラリとしての特徴 youtu.be

第一回 Roppongi.aar(Android勉強会)を開催しました #roppongi_aar

9/29に六本木界隈のAndroidエンジニア勉強会である Roppongi.aarを開催しました。今回は発起人である @petitviolet が勤めてらっしゃいますFringe81さんが勉強会会場でした。 Fringe81さんステキな会場を提供いただきありがとうございました! テンション冷…

AndroidオールスターズでClean Architectureについて発表してきた&参考リンク集

先日dots.さんが主催するAndroidオールスターズという勉強会で、"Android Clean Architectureことはじめ"と題して発表してきました。 資料はこちらになります。 Android cleanarchitecture from Tomoaki Imai www.slideshare.net また資料でお見せしたサンプ…

Android Best Practices のディレクトリ構成を作れるテンプレート作った

Android Studioでプロジェクトを新規で作る時、テンプレートは何を選択していますか? テンプレートには自動でNavigation Drawerを生成してくれるものや、最近だと広告をつけてくれるものなど色々ありますが、実際のところ、Add No Activityを選択するか、Bl…

RealmDBでEndlessListView、あとMVPアーキテクチャ

自分の過去のツイートをカレンダーでふりかえることができるTwitCalというツイッタークライアントアプリを作っています。このアプリではデータのキャッシュ、ロードにRealmというモバイル向けDBを利用しています。 Realmは高速なので、Listviewで3000件のデ…

サンフランシスコに来たらスマホに入れるべきアプリランキング

5/6/2018 更新しました これからGoogle I/Oや WWDCなどでサンフランシスコにくる方も多いと思うので、サンフランシスコに来たらこれは絶対いれておけ、というアプリ(Android, iOS共通)をランキング形式でまとめました。アメリカの都市部だったらどこでも通用…

DroidKaigiにスタッフとして参加しました&その感想

以前こちらの記事でも紹介したDroidKaigiが4/25に開催され、自分も当日スタッフとして参加しました。 400人のAndroidエンジニアが一同に介し、デベロッパー目線で技術的なトークをするイベントは日本で今までなかったのではないでしょうか。当日の熱狂っぷり…

自分のツイートをカレンダー形式で振り返ることができるAndroidアプリTwitCalをリリースしました

大変久しぶりにAndroidアプリをリリースしました!のでその紹介をします。 TwitCal 自分のツイートをカレンダーでふりかえろう 開発元:tomoima@kumonos 無料 posted with アプリーチ 概要 カレンダーとTwitterの自分のツイートタイムラインが一体化したアプ…

DroidKaigi、開催されます(登壇者募集!)

自分もスタッフとしてちょっと関わっている、Androidデベロッパー向けのイベントDroidKaigiが4/25(土)に開催されます。 元々DroidConというデベロッパーイベントが世界各国で開催されていて、日本でもそういうイベントやりたいよね、という経緯でAndroid開発…

Google IO 2014公式アプリのソースコード公開されてたのでビルドしてみた

Google IO 2014公式アプリのソースコードが公開されてました。 このアプリはAndroid Lで採用されるマテリアルデザインが導入されてます。現状Android Lで作られたアプリはリリースできないので、実質このアプリが唯一のマテリアルデザインということになりま…

Google play PLAYTIME参加してきた

Google play PLAYTIMEに参加してきたのでそのレポート。Googleのスマホ戦略が垣間見えました。 Google play PLAYTIMEとは Google playでゲームやアプリを配信しているデベロッパー向けのイベントです。 Google playの最新動向や最新機能、アプリ品質をあげる…

Androidで縦向き正方形撮影する時の苦労あれこれ(その2)

Androidで縦向き正方形撮影する時は色々面倒です。面倒なポイントと、解決方法について書いてみました。 今回はカメラで撮影した画像をinstagramなどのように正方形にする方法です。 カメラのプレビュー(surface view)と取得画像の撮影範囲が変わってしまう…

Androidで縦向き正方形撮影する時の苦労あれこれ(その1)

Androidで縦向き正方形撮影する時は色々面倒です。面倒なポイントと、解決方法について書いてみました。

Androidの加速度センサー(Accelerometer)から重力の影響を省いて値を取得する(ローパスフィルタでノイズも除去)

Android端末では加速度センサーで加速度値(m/s^2)を取得できます。 ところが精度が良すぎるのか、ものすごい値がぶれます。また、重力の値までとれちゃいます。 例えば加速度をベクトル値にしたい場合、値は頻繁にぶれるんでこのままではとても使い物になり…

EclipseでビルドしたapkにDidn't find class "...." on path: のエラーがでた場合の対処

Android Developerでダウンロードしてきたサンプルコードの動作を確認したくて、Eclipse上でコンパイルしたapkを実行したときにエラーがでたので、その対処方法について書いときます。 ダウンロードしたのはマルチスレッドで処理して画像を表示するサンプル…

初めてのアプリ公開とそこから学んだこと

初めてandroidでアプリをリリースしたことから学んだこと