『eureka Meetup #01 -Android DroidKaigi再演-』の参加メモ

eureka Meetup #01 -Android DroidKaigi再演-』に参加してきました。
その時に興味のあった内容を備忘録的にメモしています。
ハッシュタグは、「#eureka-meetup」です。

  • 事業成長にフォーカスする開発組織 by 金子 慎太郎
  • トークアプリで絵文字を実装した話 by 二川 隆浩
  • Error Handling in RxJava by 海藤 優弥

事業成長にフォーカスする開発組織 by 金子 慎太郎

まずは会社的な歴史と概要とCTOの概要。

  • PairsとCupplesを開発しているが、特にPairsに注力している
  • 前CTO元CEOから継いで、CTOになって半年。
  • 自社サービスする、VC入れないを方針に広告事業でキャッシュをためて、受託開発をしてナレッジをためて、そしてPairsをリリース。3年後に完全に受託開発から撤退した。
  • 2016年に会員数500万人

開発組織はどうやっていくのかというお話。

  • 事業成長とブレンドイメージの向上を技術を通して支援・加速させるのがエンジニア戦略
  • プロダクトを早く届けることに注力している。早く注力するために技術負債の低減を進めてスピード感を維持している
  • 古いOSを使用しているユーザーにも配慮したアプリ開発をしている
  • UI/UX大切。マネタイズがトガりすぎると結局金儲けアプリかと思われる。不正ユーザー(業者)をいかに取り除くか。

Androidアプリ:トークアプリで絵文字を実装した話 by 二川 隆浩

@futabooo
サーバーサイドはPHPからGolangにフルリニュアルしました。
フロントはTypeScriptとAngularJS。
Androidは、Kotlin・DataBinding・ButterKnife・Picasso・RxKotlin・Retrofit2・OkHttp3を使っています。

アプリ独自絵文字を最初は用意してなかったが、「自分が送った通りの絵文字が表示されない」という問い合わせを受けた。
しっかりとコミュニケーションできるようにアプリ独自絵文字を追加することを決意。
どうやるのかは他社アプリの独自絵文字を研究しました。

他社のアプリで実装されていた機能には次のようなものがあった。

  • 絵文字を表示できる
  • 絵文字のコピー&ペーストができる
  • アプリ外にペーストすると代替テキストで表示される
  • 絵文字1つだけの時はスタンプになる

String message = "こんにちは{{sticon(1,10)}}今日はいい天気ですね{{sticon(2,20)}}"
「{{sticon(1,10)}}」というような記法で独自アイコンを表示する。

裏の実装は、正規表現で頑張る感じ。Stringの拡張は、SpannableStringで実施。

コピーアンドペーストは、
コピーすると、アプリの方では「こんにちは{{sticon(1,10)}}」を保持して、クリップボードでは代替文字列「こんにちは(sunny)」をコピーする。
ペーストは、クリップボードの文字列とアプリの文字列を比較して対応する。

実装してみたら、大量の絵文字を表示するとスクロールがカクついたのでキャッシュで対応することにした。
最初はLruCacheを使って解決。
絵文字のコピペをすると文字れが切れる問題が発生した。
絵文字をコピーすると「{」しかコピーされなかったので、「{{sticon(1,10)}}」までコピーするように実装した。

Error Handling in RxJava by 海藤 優弥

@yuyakaido
スライド

RxJava(Reactive Extension for Java)のエラーハンドリングはCatchとRetryの2種類。
Retrofitで共通処理を仕込むのにコピペを減らすためにCallAdapterインターフェイスを継承して、
RxJavaCallAdapterWrapperを実装してaddCallAdapterFactoryで呼び出して対応。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です