OpenTHOS Multi-window Introduction Chen Gang - - PowerPoint PPT Presentation

openthos multi window introduction
SMART_READER_LITE
LIVE PREVIEW

OpenTHOS Multi-window Introduction Chen Gang - - PowerPoint PPT Presentation

OpenTHOS Multi-window Introduction Chen Gang <chengang@emindsoft.com.cn> 2016-09-24 Android Architecture Application Level Normal Apps packages Externals (java) Frameworks Level frameworks/base/packages frameworks/base frameworks/*


slide-1
SLIDE 1

OpenTHOS Multi-window Introduction

Chen Gang <chengang@emindsoft.com.cn> 2016-09-24

slide-2
SLIDE 2

Android Architecture

Kernel Level Middle Level Middle Library Virtual Machine HAL Frameworks Level frameworks/native frameworks/base frameworks/base/packages Application Level libcore packages Externals (java) Normal Apps frameworks/* ...

slide-3
SLIDE 3

Runtime environments

zygote

SystemServer Application Application

resources java obj virtal machine libraries resources java obj virtal machine libraries resources java obj virtal machine libraries resources java obj virtal machine libraries AM WM APP APP

slide-4
SLIDE 4

AMS WMS APP ActivityDisplay ActivityStack TaskRecord ActivityRecord <AppTaskImp> DisplayContent TaskStack Task AppWindowToken WindowState Session TaskGroup ActivityManager WindowManagerGlobal WindowManager ViewRootImp Window (PhoneWindow) View ViewGroup StackInfo <AppTask> Activity (mToken, mWindow) ... ...

Multiwindow Related Objects

slide-5
SLIDE 5

Multiwindow implementation

  • 1. Originally support:

PhoneWindow::Decor ViewRootImp::mWinFrame TaskStack::mBounds WindowState::mContainingFrame

  • 2. Implementation(500 lines patch):

PhoneWindow:: DecorMW, TouchListener, mStackId DisplayContent:: relayoutWindow(), stackIdFromPoint()

  • 3. Notice:

Home stack (launcher) Window/View styles (fullscreen, floating, dialog, rotation …) Display metrics and dpi (not implement).

slide-6
SLIDE 6

Multiwindow Relate Features

  • 1. Shadow:

transparent surface. setbounds for Drawable. Draw shadow image in template layout with clearing dirty contents.

  • 2. Dialog:

WMS catch and process messages. Adjust dialog size to avoid overriding application window header. half-transparent black view between dialog and application window.

  • 3. Auto-hide header:

WMS catch and process messages. Decor customize the layout dynamically.

slide-7
SLIDE 7

Frameworks related features

  • 1. SystemUI

StartupMenu, StatusBar, NotificationBar, Alt+Tab ...

  • 2. System Applications

Launcher, Settings, FileManager, Brower, Auto-Update, AppStore ...

  • 3. User Applications

WPS, WeChat, QQ, Player, Camera …

slide-8
SLIDE 8

Global Related Features

  • 1. Mainly in Frameworks

Animation, Video, Capture ...

  • 2. Related with Frameworks

Ethernet, Resolution, Shadow/Extend Display ...

  • 3. Almost Independent from Frameworks

Printer, Run Linux GUI application ...

slide-9
SLIDE 9

Desktop OS

  • 1. Framework Level:
  • 2. All Features Level:
  • 3. Stability and Performance Level:
  • 4. Architecture Level:
slide-10
SLIDE 10

Thanks