[PDF] Multiwindow support on Android





Previous PDF Next PDF



Bookmark File PDF Android 40 User Guide Tablet Copy - covid19

how to make the most of the new features of Android 9 on the Galaxy Tab A with clear explanations and video demos to help you along the way.



Sample Design Ument For Android Application

Other key features of Android Studio 3.3 and Android 9 are Chapters also cover advanced features of Android Studio such as App Links Dynamic.



HANSATON stream remote App

HANSATON stream remote App. User Guide. App overview. Active hearing aid program. Battery state. Advanced features. Mute / unmute volume. Volume slider.



Download File PDF Android 40 User Guide Tablet Copy - covid19

In addition you will learn how to make the most of the new features of. Android 9 on the Galaxy Tab s4 with clear explanations and video demos to help you 



Download Ebook Sample Design Ument For Android Application

Mobile Design and Administration Guide for MicroStrategy 9. Chapters also cover advanced features of Android Studio such as App Links Dynamic Delivery



Download Free Java Pocket Guide Apps Android [PDF] - covid19

Other key features of Android Studio 3.3 and Android 9 are also covered in detail including are new to Android smartphone and tablet apps development.



EMDK for Xamarin Fact Sheet

advanced enterprise features that Zebra's Android mobile computers offer — from barcode scanning to automatic population of forms — into your Xamarin apps.



Multiwindow support on Android

Port to 4.2.2. “Running on latest”. Add float mode. Settings



Access Free Samsung Galaxy Tab 77 User Manual ? - covid19.gov.gd

In addition you will learn how to make the most of the new features of Android 9 on the Galaxy Tab s4 with clear explanations and video demos to help you 



Sample Design Ument For Android Application

Chapters also cover advanced features of Android Studio such as App Links Instant Apps

© Tieto Corporation

Multiwindow support on Android

Andrzej Wieczorek Mikel Echegoyen

Tieto Product Development Services

About us...

• Andrzej Wieczorek

• Business Development Manager • responsible for Android product creation and connectivity areas for

mobile and embedded devices • Mikel Echegoyen (@echegmik)

• Business Development Director, Semiconductors • 14 years in Mobile R&D on multiple roles from development to sales

• Tieto Product Development Services

• R&D in communications and embedded technologies • Part of Tieto, 14000 employees, headquarters in Finland • More at www.tieto.com/pds

2

60 second demo = a thousand words

Déjà Vu, Much?

4 Samsung Rockchip Cornerstone Omnirom Sony Multitasking Apps and more...

Don't reinvent the wheel...

rather inflate & add more! 5 "It's dead, Jim" Cornerstone ICS (4.0/4.1) Cornerstone Port to 4.2.2 "Running on latest"

Add float mode, Settings, features

"Racing ready"

Re-architect for KitKat 4.4

"Get new tires!" "came back to life!"

Multiwindow feature overview

6 Focus, Move, Resize, Close Window Docked Windows Area Home Screen area Move window to Home Screen area, Close Windows Manager application § Show/hide/edit windows (e.g. resize) § Move Window Manager (left, right) § Toggle floating/docked windows UX § Add new Window § Add new tab (group windows)

Floating windows Docked windows

7

Feature Tieto MW Cornerst. Rockchip Ixonos Samsung Sony Basic features: open, close, move, resize, maximize, etc.

Advanced features: group windows, swap

Docked windows UX

Super window

Floating windows UX

MultiInstance for Apps

dedicated CTS

Coming soon

OpenSource

Transparent for apps

"Flag req. " Android Version 4.2.2, 4.4 4.0, 4.1, 4,3 4.2.2 4.2.2 4.2+ 4.0+

Feature comparison

Application Framework

Architecture changes for multiwindow

8

Activity Manager Window Manager Content Providers View Systems Package Manager Resources Manager Location Manager Notification Manager Telephony Manager Applications Phone Home Browser Contacts .... Libraries Linux Kernel Android Runtime

Multiple Activity stacks

9

Activity stack

Panel Stack2 Panel Stack 1 Cornerstone Stack Main Stack (Home) Activity Stack Activity Stack Window Manager Stack Main Stack (Home) Activity Stack

Cornerstone Tieto

How it works

10

ActivityManagerService § Activities management § Stacks management § Resume state WindowManagerService § Window positions management § Activity - window relationship § Windows state management PhoneWindow Add decors for swap, maximize, close, resize Manage windows Multiwindow Application Start activity Manage windows Relayout Start activity Manage

ActivityManagerService changes

Jelly Bean (4.2)

11

ActivityManagerService

void startCornerstoneApp( intent, stackId);! StackAdapterContainer StackAdapter ActivityStack ActivityRecord Added 2 classes introducing multiple activity stacks

!int initWindow(Rect position) - creates new stack and window!void relayoutWindow(int stackId, Rect position) - changes position!void removeWindow(int stackId) remove window from a screen!

ActivityManagerService changes

KitKat

12 ActivityManagerService ActivityStackSupervisor ActivityStack ActivityRecord Removing stack adapters since KitKat introduces the supervisor Changes as in JB

WindowManagerService changes

Jelly Bean (4.2)

13 WindowPanel WindowManagerService WindowList DisplayContent

Created by Cornerstone Tieto modified to have multiple panels Changes to have floating windows, Z-order and manage inputs

WindowManagerService changes

KitKat

14 StackBox WindowManagerService WindowList DisplayContent

"Migration" from WindowPanel to StackBox introduced in KitKat Removed "only 2 stack boxes" constraint As in JB

Use cases

New activity, KitKat

15

[Launcher] Start activity AMS creates a new stack using stack supervisor WMS assigns window for the activity on the stack

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RUN_IN_WINDOW); startActivity(app.intent);!int stackId = mService.createStack(-1, parentStackId, isMultiwindow ?

StackBox.TASK_FLOATING : StackBox.TASK_STACK_GOES_OVER, 1.0f);!StackBox newBox = new StackBox(mService, this, position, null);!

Launcher StackSupervisor WindowManagerService

Use cases

Resize or move, KitKat

16

Active window sends relayout command to AMS AMS passes command to WMS WMS updates StackBox's position or size WMS recalculates all widows positions or sizes

ActivityManagerNative.getDefault().relayoutWindow (getStackBoxId(), mNewFrame);!mWindowManager.relayoutWindow(stackID, r);!for (StackBox sb : mStackBoxes) {! if ((sb.getStackId() == stackBoxId) && ! (sb.relayoutStackBox(pos))) {

layoutNeeded = true; return true; }!performLayoutAndPlaceSurfacesLocked()! PhoneWindow ActivityManagerService WindowManagerService WindowManagerService

Multiwindow support in KitKat

Status

• AOSP re-design work ongoing • Visible today:

• ActivityStackSupervisor • StackBoxes • Screen split functionality - early stage • Move windows, resize • New activity manager API (not public for apps)

17

adb shell> am stack boxes ... adb shell> am stack create

At this stage SDK level accesses to the classes would enable developers to create their own "multiwindow layout managers"

Lessons learned

User experience

• Reload config (layout resources) files when resizing? How often? • Yes à possible flickering • No à graphics not adjusted to a size • Many apps don't look perfect when resized, duh! • No wonder Samsung has a whitelist • Hard to get back when experiencing multiwindow J 18

Lessons learned

Resources and performance

• Small performance penalty [1-3%] • About 20 apps running when OOM killer activates • CPUs don't break a sweat (Dual core, Quad Core, ARM & X86)

• Redrawing complex apps is slow, option is to show only borders when resizing • Potential conflicts when accessing resources • Multi-Instance behavior is different across applications

19 vs

Browser Chrome

Lessons learned

New opportunities

20

Dual screen, dual OS "Debian on Android" Social TV "Watch and chat" Remote control Using Multiwindow API

"Talk is cheap, show me the code" • https://github.com/tieto/multiwindow_for_android/tree/tieto_multiwindow (4.2.2)

• https://github.com/tieto/multiwindow_for_android (4.4) • All needed code as well instructions to build and run

available • Licenses: • Apache 2.0 (frameworks, AOSP apps) • GPLv3 (Tieto reference apps) 21

Git activity summary *

22

Package Changes Author frameworks/base 39 files changed, 9443 insertions(+), 133 deletions(-) !Cornerstone frameworks/base 51 files changed, 2587 insertions(+), 5369 deletions(-) Tieto packages/apps/ TietoLauncher 20 files changed, 947 insertions(+) packages/apps/ TietoMultiWindow 50 files changed, 2658 insertions(+) packages/apps/Launcher2 4 files changed, 30 insertions(+), 20 deletions(-) packages/apps/Settings 9 files changed, 344 insertions(+)

* Numbers for Jelly Bean For KitKat approx. 1000 lines changed

Project FAQ

23

Questions Answers

How to build & use it?

Instructions in readme and project wiki!

Where is my ROM?

We don't provide ROMS, sorry. You can build your own J

Can I contribute?

Sure, pull requests welcomed.

How do I get support?

Create github "issues" in Multiwindow project. We'll do our best.

Will you support Device X?

The solution is HW agnostic (device, architecture). We test in a wide numbers of devices (nexus, Xperia, x86 bay trail, ..)

Is the solution CTS compliant?

Not at this time

What next?

• Follow up upstream 4.4 and next • New Launcher • Optimizations • CTS compliancy • Collaborate with you J 24

© Tieto Corporation

That was all folks, Thanks! Questions ?

Andrzej Wieczorek andrzej.wieczorek@tieto.com Mikel Echegoyen mikel.echegoyen@tieto.com

quotesdbs_dbs17.pdfusesText_23
[PDF] android advanced concepts tutorial

[PDF] android api

[PDF] android app convert pdf to jpg

[PDF] android app development course syllabus pdf

[PDF] android app development in android studio: java android edition for beginners pdf

[PDF] android app development lecture notes

[PDF] android app development masterclass using kotlin

[PDF] android app development masterclass using kotlin download

[PDF] android app development pdf 2017

[PDF] android app development syllabus

[PDF] android app development syllabus pdf

[PDF] android app development with kotlin tutorial

[PDF] android app development: design patterns for mobile architecture

[PDF] android app pdf editor free

[PDF] android app pdf to jpg