LoginSignup
1
0

More than 5 years have passed since last update.

Chrome Custom Tabsの実装を追ったときのメモ

Last updated at Posted at 2019-01-25

Chrome Custom Tabsとは?

対象環境

  • Android 4.0以降
    • (Google I/O 2015で発表があった)Android M以降である必要はない。
    • Android 5.0まで/Android 5.1以降でプロセス管理方法が異なるようなので注意。
  • Chrome 45以降にアップデートすると使える

ブラウジング方式比較

  • 3が追加になった。
    1. WebViewを組み込む。
    2. 標準ブラウザ or Chromeを起動する。
    3. Chrome Custom Tabsにより連携する。
  • 簡単にいえば、1,2のいいとこ取りをしようとしている。
    • 1はアプリ内コンポーネントなので、シームレスなページ遷移が実現できる。だがWebView特有の脆弱性が懸念。
    • 2のChromeのユーザビリティ/セキュリティを引き継ぐことが可能。ただアプリが分離されるため、元のアプリへ遷移を戻したい場合の使い勝手はよくない。

活用シーン

  • 2,3は要調査。
    1. Webアプリのネイティブアプリ化
    2. Webフィルタリング
    3. ポイント・課金システム構築

コード調査

ライブラリ・サンプルコード

連携方法

  • AIDL連携によりChromeのActivityを呼び出す。
  • 以下のパッケージ名が連携対象となる。
    • com.android.chrome(Google Play版)
    • com.google.android.apps.chrome(プリイン版)
    • com.chrome.beta(Beta版)
    • com.chrome.dev(Developer版)

セキュリティ検討事項

  • 呼び出し元のチェック(偽のChromeでないか)はきちんとチェックしたほうがよさそう。
    • KeepAliveServiceがBinderの検証を行わず素通ししているので、不正にKeepAliveの延長などが行われる可能性があるかもしれない。

参考

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0