Android
opengraph
OGP

OpenGraphでURLをリッチに表示する

More than 1 year has passed since last update.


kaelaela(Yuichi Maekawa)

Qiitaのプロフィール参照

@kaelaela

Cyberagent

LTなので簡潔に



Open Graphとは


  • The Open Graph protocol

  • HTMLに決まったフォーマットでmetaタグを追加する

  • FacebookとかGoogle+とかでURLを貼るとリッチに表示される

  • 基本はog:title|iamge|type|urlの四つ
    スクリーンショット 2016-07-21 19.46.15.png



OpenGraphに対応しているwebは多くない


  • タグがないときもある(古いwebは大抵ない)

  • あっても不完全


  • urlタグはほぼ入っていない&表示しているページのものでないことがほとんどなので危険

  • Twitterは独自だがほぼ同じ



Custom Viewで作ってみた

Custom viewの作り方は公式



Androiderは依存関係にシビア


  • method数65k上限の闇(黒魔法: multidex)

  • わかるけど車輪の再発明はとにかく面倒

  • ライブラリに依存しているライブラリはクソ

  • ライブラリのパーツを作るのがこれからのライブラリ作りかもしれない

  • Androiderはbuild.gradleを毎日磨いている



HTMLのパース



  • jsoupでウェイ 依存関係に入れずに自作

  • 涙ぐましい文字列処理: OGParser


  • metaタグのみなのでスピードはそんなに悪くない



通信処理



  • Retorofitでウェイ 依存関係に入れずに自作

  • 現在はAsyncTask...

  • 師(wasabeefさん)曰く、


executorでthread数も原始的に管理してほしい


御意(次回やります)



画像のCache


  • 今日実装した

  • LRUでbitmapを管理

  • RecyclerViewで実験して大丈夫そう

  • zissouha公式: Caching Bitmaps



これからのライブラリ開発


  • 小さなパーツを用意していくのがよい?


    • HTMLパーサー

    • もっと小さな通信ライブラリ

    • キャッシュ



などなど



会場の方と話したいこと


  • キャッシュならDiskかMemory?(何基準?)

  • HTMLのイケてるパース処理方法

  • リクエストのキュー管理に関する知見

  • CustomViewに関するtipsなんでも



まとめ


  • OpenGraph表示に対応したら華やぐ

  • Androidは依存関係にシビア

  • OpenGraphView使ってみてください



thx ;-)