Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MultiWindowあれこれ

 MultiWindowあれこれ

2016.06.17 umeda.apk #1 用資料です。
MultiWindowについて。

50a1ae3d2f81998c69a579daeb59f055?s=128

masanori_msl

June 17, 2016
Tweet

Transcript

  1. MultiWindow あれこれ 2016.06.17 @umeda.apk

  2. Who? Twitter: @masanori_msl vaguely: http://mslgt.hatenablog.com/ SearchWakayamaToilet: https://play.google.com/store/apps/details? id=jp.searchwakayamatoilet Name: Masui

    Masanori
  3. MultiWindow  Android Nから正式に採用される予定の、1つの画面で 2つのアプリを同時に表示する機能。  MultiWindowで表示される両方のアプリが同時にアク ティブになることはなく、片方は表示されているがPause 状態となる。

  4. Sample andCameraTest https://github.com/masanori840816/andCameraTest Android-MultiWindowPlayground - GoogleSamples https://github.com/googlesamples/android- MultiWindowPlayground ▪参考

  5. MultiWindowを有効にする AndroidManifest.xmlのapplicationまたはactivityに 「resizeableActivity」をTrueを指定して追加する。 <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:resizeableActivity="true" android:supportsRtl="true" android:theme="@style/AppTheme">

    ※この要素が無いとMultiWindowで開く時に 「App may not work with split-screen.」とToast が表示される。
  6. MultiWindowを無効にする 1. 「resizeableActivity」をFalseで指定する。 2. 「screenOrientation」を縦横どちらかに固定する。 3. 「immersive」をTrueで指定する。 ※startActivityによって他のアプリから起動したい場合は、MultiWindowに 対応させる必要がある。

  7. Lifecycle  基本的に端末を回転させた時と同じで、MultiWindow モードのOn/OffやWindowサイズを変更した場合 は、Activityが破棄される。  ConfigrationChangedを設定している場合は破棄さ れない。  MultiWindowモードに切り替わった場合に、

    「onMultiWindowChanged」が呼ばれる。  「isInMultiWindowMode」で、MultiWindowモード かどうかの確認ができる。
  8. Size 16:9 1:1 34.15%

  9.  Phone、TabletともにPortraitモードでは3種類のサイズ に変更可能。  Landscapeモードでは、Phoneは1種類(1:1)、Tablet はPortraitモードと同じく3種類のサイズに変更可能。  Tabletを34.15%サイズに変更した時、ウインドウのアス ペクト比はディスプレイのアスペクト比によって変化する。 Size

  10. Layout  Windowのサイズによって表示上の画面の向きが変わっ てしまうため、以下の値 (端末・画面の向き) が異なる場 合がある。 // 例: 端末が縦向きならWindowサイズによらず0°となる.

    int displayOrientation = getWindowManager().getDefaultDisplay().getRotation(); // 例: 端末が縦向きでもWindowサイズによって // Landscape、Portraitの値が変わる. Configuration config = getResources().getConfiguration(); int configOrientation = config.orientation;
  11. Layout Windowが横長の場合 Windowが縦長の場合

  12. Testについて  現状ではコードからMultiWindowモードを開始できない らしく、自動Testに組み込むのは難しそう (GoogleSamplesのEspressoにMultiWindowと名 付けられたプロジェクトがあるが、別物)。  MultiWindowモードの確認はエミュレータ上でも可能。  Testでは以下のような点に注意する。

    1. MultiWindowモードのOn/Offやリサイズでクラッシュしないか 2. ボタンなどが画面外にはみ出て押せなくなっていないか 3. 特に動画再生中にバックグラウンドにまわったときの表示が正しいか
  13. 正直一般ユーザーにどの程度使われるかは不明。 PCと違ってユーザーが意識的にMultiWindowモードを開 始する必要があるため、存在に気づかれない恐れも。 ただ、同時に発表されたDrag&Dropと合わせると便利 そうで、これらを組み合わせて、新しく便利なデザインが現 れることに期待。 最後に

  14. 参考 android-MultiWindowPlayground - googlesamples - GitHub マルチ ウィンドウに対応したデザイン - Google

    Developers Japan Multi-Window Support - Android Developers 5 tips for preparing for Multi-window in Android N - Google Developers - Medium https://developer.android.com/preview/features/multi- window.html https://github.com/googlesamples/android- MultiWindowPlayground http://googledevjp.blogspot.jp/2016/06/blog-post.html https://medium.com/google-developers/5-tips-for-preparing-for- multi-window-in-android-n-7bed803dda64
  15. 参考 Android N で注意すること その3 (Multi Window その1) - Qiita

    Android N のマルチウインドウ対応について調べて驚いたところ - Qiita Android N で注意すること その4 (Multi Window その2) - Qiita http://qiita.com/takahirom/items/6efc39a7bfe00144ff32 http://qiita.com/hidenorly/items/456b4dd725875b776d9a http://qiita.com/hidenorly/items/72a659438126a8457715 [AndroidN] Multi-Window で対応しなければいけないところ - Qiita http://qiita.com/ozyozyo/items/66106a2be92dd66c26f3
  16. Credit Google Noto Fonts  Main Page:  License: Material

    icons  Main Page:  License: https://www.google.com/get/noto/ SIL Open Font License (OFL) https://design.google.com/icons/ CC-BY License
  17. Thank you.