SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
开放原码手机操作系统 Ubuntu Phone 
架构、移植与刷机 
2014-09-20 Rex Tsai <rex.tsai@canonical.com> 
Software Freedom Day @ Chinese Academy Of Sciences, Beijing 
© 2014 Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd.
Introducing Canonical and Ubuntu 
600+ 
London 
EMPLOYEES 
Boston Beijing 
30+ 
COUNTRIES 
2004 
FOUNDED 
Canonical has been developing operating 
systems since 2004, and is now extending 
the Ubuntu OS on mobile devices. 
Ubuntu is an open-source operating 
system, currently established on server, 
cloud, desktop and thin client. 
Taipei
各种屏幕,优雅体验 
融合的操作系统 
支持桌机、智慧型手机、平板等 
单一开发平台 
支持跨产品应用与服务 
以及 
嵌入系统安全 
用户认证系统 
交易服务 
完单一平台 
多种大小、功能的硬件外貌
桌机版本与行动版本差异性 
软件包 
Rootfs is still debian package 
New click packages 
安全性OTA 升級 
Readonly rootfs 
Upgrading the whole system image. 
app confinemen environment and security 
policies. 
Sandboxing by Apparmor 
• 
软件架构 
Mir display server 
Qt-based software framework 
HTML5
Ubuntu Phone支持以下开发方式 
Scopes 
C++ backend code (no UI) 
Lowest effort 
Greatest visibility 
HTML5 
Native/QML 
Declarative Language (C++ optional) 
Great developer support/Documentation (Digia) 
High Developer productivity 
Aligned with HTML5 developer critical mass : 
• Chrome, Android, iOS 
• Webkit/Blink rendering engine 
• Apache/Cordova API for offline
Scope
Scopes terminology 
Scope 
The search engine itself, talking to a web service or a local database. Its visible representation is a 
Dash page. 
Standalone scope 
A scope that presents a single set of results and queries one single source 
Aggregating scope 
A scope that acts as a container for multiple standalone scopes. Every scope can be an aggregating 
scope, which enable richer content on their Dash pages 
Dash page 
The visible part of the scope: dash pages present the scope’s search interface and its results. Dash 
pages can be marked as favourites, so that they are always pinned in the Dash.
Differentiate where it matters with Ubuntu 
Ubuntu is designed to allow for OEM and 
Operator differentiation, at the default 
service layer, without fragmentation 
Ubuntu enables partners to build their own 
footprint on Ubuntu devices, creating a rich 
core OS experience with scopes 
Unprecedented customization capabilities 
in comparison to Android and other platforms: 
● user account - own user identity 
● default UX - with scopes and default apps 
● branding and theming - own visual identity 
● backend integration -i.e. carrier billing 
1 
2 
3
Scopes | A New UI Paradigm 
A user experience where content is front and center 
Scopes are a a UI toolkit to present 
local or remote content and services 
in the home screen 
Differentiate your device with scopes 
to deliver your own default experience 
Discoverability of apps, services and 
content from multiple sources: 
● users are no longer forced to decide 
which store to use 
● users can focus on finding content 
quickly
Scopes are fast and engaging 
Scopes are a fast and engaging way to embed your services in Ubuntu 
Self Service Deal finder LBS Service
Scopes expose content and services in a rich and engaging 
way - allowing OEMs and Operators to differentiate their 
offerings in an unprecedented fashion. 
Scopes are the tool that defines the core OS experience 
delivering content as part of the device UI - a direct channel 
to the user. 
● The default pages use Scopes to deliver music, video and 
apps curated from a number of different sources. 
● A scope can deliver information and content to existing 
pages or can exist as dedicated device pages. 
● Harness the power of Scopes to mix and match a variety of 
content to create targeted services (e.g. dedicated pages 
for sports fans, city guides, operator self-service etc.) 
● Scopes are a breeze to develop. Through a common UI 
toolkit, pages are easy to design and layout and the results 
are always elegant. 
Scopes explained
Scopes registry
Scopes data flow
架构概览
Ubuntu 软件堆栈
High level architecture using ARM or x86 Android chipset 
Using Android BSP 
We recommend choosing 
a stable and proven 
hardware platform 
Hardware bring up and validation 
significantly shortened due to 
common architecture 
1 2 
Apps Scopes Shell, Home 
Unity 8, QT, Application Services 
Ubuntu Platform 
Linux Kernel 
AAL 
Libraries: OpenGL ES, WiFi, Sensors 
Android Devices Drivers
Ubuntu License
List of ports by community 
● Acer Iconia A700 
● AT&T S3 
● Dell Streak 7 
● Desire HD 
● Droid 3 
● Droid bionic 
● Galaxy Nexus 4/7/10 
● Galaxy Note N700 port 
● Galaxy R 
● Galaxy S 
● Galaxy s2 
● Galaxy s2 skyrocket [AT&T] 
● Galaxy s3[sprint] 
● Galaxy s3 [Verizon] 
● Galaxy tab 2 
● HP Touchpad 
● HTC Desire 
● HTC Desire S 
● HTC EVO 4G LTE 
● HTC one X+ AT&T 
● HTC Sensation 
● HTC Vision Desire Z/G2 
● Huawei mediapad 
● Iconia A500 
● Infinity tf700 
● Kindle fire 
● Kindle fire 2 
● Kindle fire HD 8.9 
● LGE Optimus Black 
● LG optimus 2x 
● LG Optimus L9 
● LG P930 NITRO HD 
● Micromax Canvas HD 
● Motorola Defy/ DEfy+ 
● Motorola droid razr 
● Motorola zoom 
● My touch 4g 
● Nexus One 
● Nexus S 
● Note 10.1 N8000 
● Note 2 
● One X 
● RK2918 Tablets 
● S3 International i9300 
● Samsung Galaxy Tab 7 inch (original) 
● TF101 Eee Pad Transformer 
● T-Mobile s3 
● Verizon Galaxy Nexus 
● Wave and wave 2 (yes bada) 
● Xperia Neo V 
● Xperia S 
http://forum.xda-developers.com/showthread.php?t=2182442 
https://wiki.ubuntu.com/Touch/Devices
Hardware enablement
Boot process
Stages 
1. Kernel enablement & Ubuntu core. 
o A busybox shell through adb 
console 
o Test disk I/O using gzip 
compression/decompression on 
various partitions. This process can 
help find driver level errors 
2. Integrate LXC & Android system service. 
o A Ubuntu prompt through adb, and 
LXC is running properly 
o Observe upstart-property-watcher 
running in the background 
3. Full system integration. 
o Ubuntu Unity UI appears on the 
screen 
o Start verifying higher level 
functionality such as Wifi, 
telephony, etc.
Image Components 
Device tarball 
The Device tarball contains the Ubuntu equivalent of an Android BSP. Each individual mobile device 
will have its own specific device tarball. 
Ubuntu tarball 
The Ubuntu tarball is considered the “standard” Ubuntu Touch image. As much as possible, it is 
common across all Ubuntu Touch devices. This design helps to prevent fragmentation of deployed 
devices. 
Custom tarball 
The Custom tarball is the officially supported method for all Ubuntu Touch downstream consumers, 
ranging from commercial OEMs to community remixes, to modify the look, feel, and behavior of 
Ubuntu Touch.
Deployment
Images 
– Boot imageThis is flashed to the boot partition and is given control by the bootloader in ROM. 
This is a device dependent image containing the kernel and the initramfs needed to boot 
Ubuntu. The initramfs userland bits follow the armhf ABI since it is built from Ubuntu sources. 
The kernel is ABI agnostic since it does not use floating point functionality. 
– Recovery (Clockworkmod Recovery image)Optional for running the device but necessary for 
OTA upgrades and also usually a good first step when porting Android to a device. This is a 
Clockworkmod Recovery image with Ubuntu patches, so it is built from the Android tree. 
git://phablet.ubuntu.com/CyanogenMod/android_bootable_recovery 
– System images This is built from the Android source tree and contains only the bare 
minimum needed for Ubuntu (Android HAL, initramfs, bionic, vendor blobs and daemons). 
Building Android apps, assets and the Dalvik runtime are disabled among other things. 
This image is mounted inside an LXC container in the Ubuntu host filesystem and it contains 
the Android proprietary drivers and is running the Android helper daemons needed to have 
proper support for all the hardware peripherals that are not natively supported by Ubuntu and 
open source drivers. Executables in this image use the armel ABI. 
– The Ubuntu root file system imageThis is a device independent image containing the Ubuntu 
Touch userland, the closes equivalent to a regular Ubuntu Desktop filesystem. This gets 
booted to, and in turn mounts and runs the Android system image inside an LXC container. 
This is built from the official Ubuntu package archives and by adding a few prebuilt Click 
packages.
Deploying Ubuntu system 
Recovery utils 
● ubuntu-device-flash (lp:/ubuntu/goget-ubuntu-touch) 
o File upload & config protocol - adb 
Recovery system 
o based on CWM. 
o adb is always on. 
o system-image-upgrader 
 /cache 
● Read restore script from /cache/recovery/ubuntu_command 
o GPG verification 
 archive-master.tar.xz 
 archive-master.tar.xz.asc
Dual boot 
● Ubuntu Dual Boot Installer is provided to developers who want 
to contribute to development of Ubuntu Touch and give them 
an ability to run Ubuntu and Android on a single device. 
● Installer script to deploy apk 
● Replace the original recovery image as boot image. 
● An Android app to manage image and reboot to right O.S. 
https://wiki.ubuntu.com/Touch/DualBootInstallation 
https://launchpad.net/humpolec
Easy customization of look, feel, and 
behavior
Image Components 
Device tarball 
The Device tarball contains the Ubuntu equivalent of an Android BSP. Each individual mobile device 
will have its own specific device tarball. 
Ubuntu tarball 
The Ubuntu tarball is considered the “standard” Ubuntu Touch image. As much as possible, it is 
common across all Ubuntu Touch devices. This design helps to prevent fragmentation of deployed 
devices. 
Custom tarball 
The Custom tarball is the officially supported method for all Ubuntu Touch downstream consumers, 
ranging from commercial OEMs to community remixes, to modify the look, feel, and behavior of 
Ubuntu Touch.
Customization 
● Backgrounds 
Normal Unity Shell background and the Welcome Screen background. 
o Shell background 
o Welcome Screen background 
● Color Schemes 
o Customized themes 
o Infographic color scheme 
the series of circles on the Welcome Screen that displays user’s data 
● Audio 
● Default Browser settings 
o Bookmarks 
o home page 
● Preinstalling Content 
o click packages 
o sample content.
References 
● Ubuntu Developer http://developer.ubuntu.com/ 
o Scope http://developer.ubuntu.com/scopes/overview/ 
● Mir: Welcome to Mir http://unity.ubuntu.com/mir/ 
● Touch - Ubuntu Wiki https://wiki.ubuntu.com/Touch 
o Touch/Porting https://wiki.ubuntu.com/Touch/Porting 
o Touch/Deploying https://wiki.ubuntu.com/Touch/Deploying 
● OEM Customization http://developer.ubuntu.com/resources/oem/ 
o Ubuntu Image Architecture http://developer.ubuntu.com/resources/oem/architecture/ 
● Ubuntu Touch Ports http://forum.xda-developers.com/ubuntu-touch/android-ports 
● Ubuntu Phone - https://lists.launchpad.net/ubuntu-phone/
开放原码手机操作系统 Ubuntu Phone 架构、移植与刷机

Mais conteúdo relacionado

Mais procurados

Introduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux FrameworkIntroduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux FrameworkBenjamin Zores
 
Headless Android at AnDevCon3
Headless Android at AnDevCon3Headless Android at AnDevCon3
Headless Android at AnDevCon3Opersys inc.
 
Droidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded SystemsDroidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded SystemsBenjamin Zores
 
Ubuntu Core 技术详解
Ubuntu Core 技术详解Ubuntu Core 技术详解
Ubuntu Core 技术详解Rex Tsai
 
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets AnsibleCloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets AnsibleBenjamin Zores
 
如何在 Ubuntu 上更快、更便捷地部署物联网设备
如何在 Ubuntu 上更快、更便捷地部署物联网设备如何在 Ubuntu 上更快、更便捷地部署物联网设备
如何在 Ubuntu 上更快、更便捷地部署物联网设备Rex Tsai
 
Android OTA updates
Android OTA updatesAndroid OTA updates
Android OTA updatesGary Bisson
 
BeagleBoard Workshop ESC Boston 2011
BeagleBoard Workshop ESC Boston 2011BeagleBoard Workshop ESC Boston 2011
BeagleBoard Workshop ESC Boston 2011Opersys inc.
 
Developing FOSDEM Companion
Developing FOSDEM CompanionDeveloping FOSDEM Companion
Developing FOSDEM Companioncbeyls
 
Android Internals at Linaro Connect Asia 2013
Android Internals at Linaro Connect Asia 2013Android Internals at Linaro Connect Asia 2013
Android Internals at Linaro Connect Asia 2013Opersys inc.
 
ABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded SystemsABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded SystemsBenjamin Zores
 
Working with the AOSP - Linaro Connect Asia 2013
Working with the AOSP - Linaro Connect Asia 2013Working with the AOSP - Linaro Connect Asia 2013
Working with the AOSP - Linaro Connect Asia 2013Opersys inc.
 
Memory Management in TIZEN - Samsung SW Platform Team
Memory Management in TIZEN - Samsung SW Platform TeamMemory Management in TIZEN - Samsung SW Platform Team
Memory Management in TIZEN - Samsung SW Platform TeamRyo Jin
 
Android Things Internals
Android Things InternalsAndroid Things Internals
Android Things InternalsOpersys inc.
 
Android Platform Debugging and Development
Android Platform Debugging and DevelopmentAndroid Platform Debugging and Development
Android Platform Debugging and DevelopmentOpersys inc.
 
ROS2 on WebOS - Brian Shin(LG)
ROS2 on WebOS - Brian Shin(LG)ROS2 on WebOS - Brian Shin(LG)
ROS2 on WebOS - Brian Shin(LG)AI Robotics KR
 
Android beyond the smartphone
Android beyond the smartphoneAndroid beyond the smartphone
Android beyond the smartphoneChris Simmonds
 
Andreas Jakl, Qt Symbian Maemo Quickstart
Andreas Jakl, Qt Symbian Maemo QuickstartAndreas Jakl, Qt Symbian Maemo Quickstart
Andreas Jakl, Qt Symbian Maemo QuickstartNokiaAppForum
 

Mais procurados (20)

Android Internals
Android InternalsAndroid Internals
Android Internals
 
Introduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux FrameworkIntroduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux Framework
 
Headless Android at AnDevCon3
Headless Android at AnDevCon3Headless Android at AnDevCon3
Headless Android at AnDevCon3
 
Droidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded SystemsDroidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded Systems
 
Ubuntu Core 技术详解
Ubuntu Core 技术详解Ubuntu Core 技术详解
Ubuntu Core 技术详解
 
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets AnsibleCloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
 
如何在 Ubuntu 上更快、更便捷地部署物联网设备
如何在 Ubuntu 上更快、更便捷地部署物联网设备如何在 Ubuntu 上更快、更便捷地部署物联网设备
如何在 Ubuntu 上更快、更便捷地部署物联网设备
 
Android OTA updates
Android OTA updatesAndroid OTA updates
Android OTA updates
 
BeagleBoard Workshop ESC Boston 2011
BeagleBoard Workshop ESC Boston 2011BeagleBoard Workshop ESC Boston 2011
BeagleBoard Workshop ESC Boston 2011
 
Developing FOSDEM Companion
Developing FOSDEM CompanionDeveloping FOSDEM Companion
Developing FOSDEM Companion
 
Internet of Smaller Things
Internet of Smaller ThingsInternet of Smaller Things
Internet of Smaller Things
 
Android Internals at Linaro Connect Asia 2013
Android Internals at Linaro Connect Asia 2013Android Internals at Linaro Connect Asia 2013
Android Internals at Linaro Connect Asia 2013
 
ABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded SystemsABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded Systems
 
Working with the AOSP - Linaro Connect Asia 2013
Working with the AOSP - Linaro Connect Asia 2013Working with the AOSP - Linaro Connect Asia 2013
Working with the AOSP - Linaro Connect Asia 2013
 
Memory Management in TIZEN - Samsung SW Platform Team
Memory Management in TIZEN - Samsung SW Platform TeamMemory Management in TIZEN - Samsung SW Platform Team
Memory Management in TIZEN - Samsung SW Platform Team
 
Android Things Internals
Android Things InternalsAndroid Things Internals
Android Things Internals
 
Android Platform Debugging and Development
Android Platform Debugging and DevelopmentAndroid Platform Debugging and Development
Android Platform Debugging and Development
 
ROS2 on WebOS - Brian Shin(LG)
ROS2 on WebOS - Brian Shin(LG)ROS2 on WebOS - Brian Shin(LG)
ROS2 on WebOS - Brian Shin(LG)
 
Android beyond the smartphone
Android beyond the smartphoneAndroid beyond the smartphone
Android beyond the smartphone
 
Andreas Jakl, Qt Symbian Maemo Quickstart
Andreas Jakl, Qt Symbian Maemo QuickstartAndreas Jakl, Qt Symbian Maemo Quickstart
Andreas Jakl, Qt Symbian Maemo Quickstart
 

Semelhante a 开放原码手机操作系统 Ubuntu Phone 架构、移植与刷机

BKK16-406 Ubuntu Core - a snappy platform for Embedded, IoT and 96boards!
BKK16-406 Ubuntu Core - a snappy platform for Embedded, IoT and 96boards!BKK16-406 Ubuntu Core - a snappy platform for Embedded, IoT and 96boards!
BKK16-406 Ubuntu Core - a snappy platform for Embedded, IoT and 96boards!Linaro
 
IoT - Innovating without compromising security
IoT - Innovating without compromising securityIoT - Innovating without compromising security
IoT - Innovating without compromising securityVictor Tuson Palau
 
Kerja Kursus ICT(open source)
Kerja Kursus ICT(open source)Kerja Kursus ICT(open source)
Kerja Kursus ICT(open source)Zul Azmi
 
Droidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform AnatomyDroidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform AnatomyBenjamin Zores
 
IRJET - Development of Embedded Linux System from Bare Board
IRJET - Development of Embedded Linux System from Bare BoardIRJET - Development of Embedded Linux System from Bare Board
IRJET - Development of Embedded Linux System from Bare BoardIRJET Journal
 
Ubuntu - Industrial Internet of Things Intro
Ubuntu - Industrial Internet of Things IntroUbuntu - Industrial Internet of Things Intro
Ubuntu - Industrial Internet of Things IntroMaarten Ectors
 
Android 110521210945-phpapp01
Android 110521210945-phpapp01Android 110521210945-phpapp01
Android 110521210945-phpapp01Mona AlRekabi
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)ijceronline
 
Android Meetup, Илья Лёвин
Android Meetup, Илья ЛёвинAndroid Meetup, Илья Лёвин
Android Meetup, Илья ЛёвинGDG Saint Petersburg
 
Open source and_latest_development_in_ict
Open source and_latest_development_in_ictOpen source and_latest_development_in_ict
Open source and_latest_development_in_ictKanisRauKing
 
Introduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxIntroduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxaparna14patil
 
First Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting IntroductionFirst Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting IntroductionCesar Augusto Nogueira
 
Webapps development on ubuntu
Webapps development on ubuntuWebapps development on ubuntu
Webapps development on ubuntuXiaoguo Liu
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application DevelopmentRamesh Prasad
 

Semelhante a 开放原码手机操作系统 Ubuntu Phone 架构、移植与刷机 (20)

BKK16-406 Ubuntu Core - a snappy platform for Embedded, IoT and 96boards!
BKK16-406 Ubuntu Core - a snappy platform for Embedded, IoT and 96boards!BKK16-406 Ubuntu Core - a snappy platform for Embedded, IoT and 96boards!
BKK16-406 Ubuntu Core - a snappy platform for Embedded, IoT and 96boards!
 
IoT - Innovating without compromising security
IoT - Innovating without compromising securityIoT - Innovating without compromising security
IoT - Innovating without compromising security
 
Kerja Kursus ICT(open source)
Kerja Kursus ICT(open source)Kerja Kursus ICT(open source)
Kerja Kursus ICT(open source)
 
Ubuntu-Overview
Ubuntu-OverviewUbuntu-Overview
Ubuntu-Overview
 
Droidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform AnatomyDroidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform Anatomy
 
IRJET - Development of Embedded Linux System from Bare Board
IRJET - Development of Embedded Linux System from Bare BoardIRJET - Development of Embedded Linux System from Bare Board
IRJET - Development of Embedded Linux System from Bare Board
 
Android OS
Android OSAndroid OS
Android OS
 
Android
Android Android
Android
 
Ubuntu - Industrial Internet of Things Intro
Ubuntu - Industrial Internet of Things IntroUbuntu - Industrial Internet of Things Intro
Ubuntu - Industrial Internet of Things Intro
 
Lucidlynxslides
LucidlynxslidesLucidlynxslides
Lucidlynxslides
 
Android 110521210945-phpapp01
Android 110521210945-phpapp01Android 110521210945-phpapp01
Android 110521210945-phpapp01
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
Android technology
Android technology Android technology
Android technology
 
Android Meetup, Илья Лёвин
Android Meetup, Илья ЛёвинAndroid Meetup, Илья Лёвин
Android Meetup, Илья Лёвин
 
Open source and_latest_development_in_ict
Open source and_latest_development_in_ictOpen source and_latest_development_in_ict
Open source and_latest_development_in_ict
 
Introduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxIntroduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptx
 
First Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting IntroductionFirst Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting Introduction
 
Webapps development on ubuntu
Webapps development on ubuntuWebapps development on ubuntu
Webapps development on ubuntu
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
 
Usb Drive Protector
Usb Drive ProtectorUsb Drive Protector
Usb Drive Protector
 

Mais de Rex Tsai

登山步道開放資料格式標準化
登山步道開放資料格式標準化登山步道開放資料格式標準化
登山步道開放資料格式標準化Rex Tsai
 
Building a developer community with containers
Building a developer community with containersBuilding a developer community with containers
Building a developer community with containersRex Tsai
 
台灣開源社區淺談 (Open Source and Free Software community in Taiwan)
台灣開源社區淺談 (Open Source and Free Software community in Taiwan)台灣開源社區淺談 (Open Source and Free Software community in Taiwan)
台灣開源社區淺談 (Open Source and Free Software community in Taiwan)Rex Tsai
 
以 Leaflet 濫用^H^H呈現開放街圖資料
以 Leaflet 濫用^H^H呈現開放街圖資料以 Leaflet 濫用^H^H呈現開放街圖資料
以 Leaflet 濫用^H^H呈現開放街圖資料Rex Tsai
 
Everest basecamp & gokyo trekking
Everest basecamp & gokyo trekkingEverest basecamp & gokyo trekking
Everest basecamp & gokyo trekkingRex Tsai
 
Oepn Street Map Batch edting via API
Oepn Street Map Batch edting via APIOepn Street Map Batch edting via API
Oepn Street Map Batch edting via APIRex Tsai
 
以開源軟體與 Open Street Map 規劃登山行程
 以開源軟體與 Open Street Map 規劃登山行程 以開源軟體與 Open Street Map 規劃登山行程
以開源軟體與 Open Street Map 規劃登山行程Rex Tsai
 
Modern Linux Desktop Stack
Modern Linux Desktop StackModern Linux Desktop Stack
Modern Linux Desktop StackRex Tsai
 
Get your FLOSS problems solved
Get your FLOSS problems solvedGet your FLOSS problems solved
Get your FLOSS problems solvedRex Tsai
 
遺失的時代精神 - Zeitgeist and GNOME Activity Journal
遺失的時代精神 - Zeitgeist and GNOME Activity Journal遺失的時代精神 - Zeitgeist and GNOME Activity Journal
遺失的時代精神 - Zeitgeist and GNOME Activity JournalRex Tsai
 
Layer 8 - Open source communities and your product
Layer 8  - Open source communities and your productLayer 8  - Open source communities and your product
Layer 8 - Open source communities and your productRex Tsai
 
A Study of SVG-based Application Development @ OSDC 2010
A Study of SVG-based Application Development @ OSDC 2010A Study of SVG-based Application Development @ OSDC 2010
A Study of SVG-based Application Development @ OSDC 2010Rex Tsai
 
OpenWrt Case Study 2008
OpenWrt Case Study 2008OpenWrt Case Study 2008
OpenWrt Case Study 2008Rex Tsai
 
OpenWrt101 2007
OpenWrt101 2007OpenWrt101 2007
OpenWrt101 2007Rex Tsai
 
OpenLab.Taipei #2 PORTA2030 Extra
OpenLab.Taipei #2 PORTA2030 ExtraOpenLab.Taipei #2 PORTA2030 Extra
OpenLab.Taipei #2 PORTA2030 ExtraRex Tsai
 
OpenLab.Taipei #2 PORTA2030
OpenLab.Taipei #2 PORTA2030OpenLab.Taipei #2 PORTA2030
OpenLab.Taipei #2 PORTA2030Rex Tsai
 
OpenWRT, A value-add base solution for your product. (1st part, chihchun)
OpenWRT, A value-add base solution for your product. (1st part, chihchun)OpenWRT, A value-add base solution for your product. (1st part, chihchun)
OpenWRT, A value-add base solution for your product. (1st part, chihchun)Rex Tsai
 

Mais de Rex Tsai (17)

登山步道開放資料格式標準化
登山步道開放資料格式標準化登山步道開放資料格式標準化
登山步道開放資料格式標準化
 
Building a developer community with containers
Building a developer community with containersBuilding a developer community with containers
Building a developer community with containers
 
台灣開源社區淺談 (Open Source and Free Software community in Taiwan)
台灣開源社區淺談 (Open Source and Free Software community in Taiwan)台灣開源社區淺談 (Open Source and Free Software community in Taiwan)
台灣開源社區淺談 (Open Source and Free Software community in Taiwan)
 
以 Leaflet 濫用^H^H呈現開放街圖資料
以 Leaflet 濫用^H^H呈現開放街圖資料以 Leaflet 濫用^H^H呈現開放街圖資料
以 Leaflet 濫用^H^H呈現開放街圖資料
 
Everest basecamp & gokyo trekking
Everest basecamp & gokyo trekkingEverest basecamp & gokyo trekking
Everest basecamp & gokyo trekking
 
Oepn Street Map Batch edting via API
Oepn Street Map Batch edting via APIOepn Street Map Batch edting via API
Oepn Street Map Batch edting via API
 
以開源軟體與 Open Street Map 規劃登山行程
 以開源軟體與 Open Street Map 規劃登山行程 以開源軟體與 Open Street Map 規劃登山行程
以開源軟體與 Open Street Map 規劃登山行程
 
Modern Linux Desktop Stack
Modern Linux Desktop StackModern Linux Desktop Stack
Modern Linux Desktop Stack
 
Get your FLOSS problems solved
Get your FLOSS problems solvedGet your FLOSS problems solved
Get your FLOSS problems solved
 
遺失的時代精神 - Zeitgeist and GNOME Activity Journal
遺失的時代精神 - Zeitgeist and GNOME Activity Journal遺失的時代精神 - Zeitgeist and GNOME Activity Journal
遺失的時代精神 - Zeitgeist and GNOME Activity Journal
 
Layer 8 - Open source communities and your product
Layer 8  - Open source communities and your productLayer 8  - Open source communities and your product
Layer 8 - Open source communities and your product
 
A Study of SVG-based Application Development @ OSDC 2010
A Study of SVG-based Application Development @ OSDC 2010A Study of SVG-based Application Development @ OSDC 2010
A Study of SVG-based Application Development @ OSDC 2010
 
OpenWrt Case Study 2008
OpenWrt Case Study 2008OpenWrt Case Study 2008
OpenWrt Case Study 2008
 
OpenWrt101 2007
OpenWrt101 2007OpenWrt101 2007
OpenWrt101 2007
 
OpenLab.Taipei #2 PORTA2030 Extra
OpenLab.Taipei #2 PORTA2030 ExtraOpenLab.Taipei #2 PORTA2030 Extra
OpenLab.Taipei #2 PORTA2030 Extra
 
OpenLab.Taipei #2 PORTA2030
OpenLab.Taipei #2 PORTA2030OpenLab.Taipei #2 PORTA2030
OpenLab.Taipei #2 PORTA2030
 
OpenWRT, A value-add base solution for your product. (1st part, chihchun)
OpenWRT, A value-add base solution for your product. (1st part, chihchun)OpenWRT, A value-add base solution for your product. (1st part, chihchun)
OpenWRT, A value-add base solution for your product. (1st part, chihchun)
 

Último

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 

Último (20)

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

开放原码手机操作系统 Ubuntu Phone 架构、移植与刷机

  • 1. 开放原码手机操作系统 Ubuntu Phone 架构、移植与刷机 2014-09-20 Rex Tsai <rex.tsai@canonical.com> Software Freedom Day @ Chinese Academy Of Sciences, Beijing © 2014 Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd.
  • 2. Introducing Canonical and Ubuntu 600+ London EMPLOYEES Boston Beijing 30+ COUNTRIES 2004 FOUNDED Canonical has been developing operating systems since 2004, and is now extending the Ubuntu OS on mobile devices. Ubuntu is an open-source operating system, currently established on server, cloud, desktop and thin client. Taipei
  • 3. 各种屏幕,优雅体验 融合的操作系统 支持桌机、智慧型手机、平板等 单一开发平台 支持跨产品应用与服务 以及 嵌入系统安全 用户认证系统 交易服务 完单一平台 多种大小、功能的硬件外貌
  • 4. 桌机版本与行动版本差异性 软件包 Rootfs is still debian package New click packages 安全性OTA 升級 Readonly rootfs Upgrading the whole system image. app confinemen environment and security policies. Sandboxing by Apparmor • 软件架构 Mir display server Qt-based software framework HTML5
  • 5. Ubuntu Phone支持以下开发方式 Scopes C++ backend code (no UI) Lowest effort Greatest visibility HTML5 Native/QML Declarative Language (C++ optional) Great developer support/Documentation (Digia) High Developer productivity Aligned with HTML5 developer critical mass : • Chrome, Android, iOS • Webkit/Blink rendering engine • Apache/Cordova API for offline
  • 7. Scopes terminology Scope The search engine itself, talking to a web service or a local database. Its visible representation is a Dash page. Standalone scope A scope that presents a single set of results and queries one single source Aggregating scope A scope that acts as a container for multiple standalone scopes. Every scope can be an aggregating scope, which enable richer content on their Dash pages Dash page The visible part of the scope: dash pages present the scope’s search interface and its results. Dash pages can be marked as favourites, so that they are always pinned in the Dash.
  • 8. Differentiate where it matters with Ubuntu Ubuntu is designed to allow for OEM and Operator differentiation, at the default service layer, without fragmentation Ubuntu enables partners to build their own footprint on Ubuntu devices, creating a rich core OS experience with scopes Unprecedented customization capabilities in comparison to Android and other platforms: ● user account - own user identity ● default UX - with scopes and default apps ● branding and theming - own visual identity ● backend integration -i.e. carrier billing 1 2 3
  • 9. Scopes | A New UI Paradigm A user experience where content is front and center Scopes are a a UI toolkit to present local or remote content and services in the home screen Differentiate your device with scopes to deliver your own default experience Discoverability of apps, services and content from multiple sources: ● users are no longer forced to decide which store to use ● users can focus on finding content quickly
  • 10. Scopes are fast and engaging Scopes are a fast and engaging way to embed your services in Ubuntu Self Service Deal finder LBS Service
  • 11. Scopes expose content and services in a rich and engaging way - allowing OEMs and Operators to differentiate their offerings in an unprecedented fashion. Scopes are the tool that defines the core OS experience delivering content as part of the device UI - a direct channel to the user. ● The default pages use Scopes to deliver music, video and apps curated from a number of different sources. ● A scope can deliver information and content to existing pages or can exist as dedicated device pages. ● Harness the power of Scopes to mix and match a variety of content to create targeted services (e.g. dedicated pages for sports fans, city guides, operator self-service etc.) ● Scopes are a breeze to develop. Through a common UI toolkit, pages are easy to design and layout and the results are always elegant. Scopes explained
  • 16. High level architecture using ARM or x86 Android chipset Using Android BSP We recommend choosing a stable and proven hardware platform Hardware bring up and validation significantly shortened due to common architecture 1 2 Apps Scopes Shell, Home Unity 8, QT, Application Services Ubuntu Platform Linux Kernel AAL Libraries: OpenGL ES, WiFi, Sensors Android Devices Drivers
  • 18. List of ports by community ● Acer Iconia A700 ● AT&T S3 ● Dell Streak 7 ● Desire HD ● Droid 3 ● Droid bionic ● Galaxy Nexus 4/7/10 ● Galaxy Note N700 port ● Galaxy R ● Galaxy S ● Galaxy s2 ● Galaxy s2 skyrocket [AT&T] ● Galaxy s3[sprint] ● Galaxy s3 [Verizon] ● Galaxy tab 2 ● HP Touchpad ● HTC Desire ● HTC Desire S ● HTC EVO 4G LTE ● HTC one X+ AT&T ● HTC Sensation ● HTC Vision Desire Z/G2 ● Huawei mediapad ● Iconia A500 ● Infinity tf700 ● Kindle fire ● Kindle fire 2 ● Kindle fire HD 8.9 ● LGE Optimus Black ● LG optimus 2x ● LG Optimus L9 ● LG P930 NITRO HD ● Micromax Canvas HD ● Motorola Defy/ DEfy+ ● Motorola droid razr ● Motorola zoom ● My touch 4g ● Nexus One ● Nexus S ● Note 10.1 N8000 ● Note 2 ● One X ● RK2918 Tablets ● S3 International i9300 ● Samsung Galaxy Tab 7 inch (original) ● TF101 Eee Pad Transformer ● T-Mobile s3 ● Verizon Galaxy Nexus ● Wave and wave 2 (yes bada) ● Xperia Neo V ● Xperia S http://forum.xda-developers.com/showthread.php?t=2182442 https://wiki.ubuntu.com/Touch/Devices
  • 21. Stages 1. Kernel enablement & Ubuntu core. o A busybox shell through adb console o Test disk I/O using gzip compression/decompression on various partitions. This process can help find driver level errors 2. Integrate LXC & Android system service. o A Ubuntu prompt through adb, and LXC is running properly o Observe upstart-property-watcher running in the background 3. Full system integration. o Ubuntu Unity UI appears on the screen o Start verifying higher level functionality such as Wifi, telephony, etc.
  • 22. Image Components Device tarball The Device tarball contains the Ubuntu equivalent of an Android BSP. Each individual mobile device will have its own specific device tarball. Ubuntu tarball The Ubuntu tarball is considered the “standard” Ubuntu Touch image. As much as possible, it is common across all Ubuntu Touch devices. This design helps to prevent fragmentation of deployed devices. Custom tarball The Custom tarball is the officially supported method for all Ubuntu Touch downstream consumers, ranging from commercial OEMs to community remixes, to modify the look, feel, and behavior of Ubuntu Touch.
  • 24. Images – Boot imageThis is flashed to the boot partition and is given control by the bootloader in ROM. This is a device dependent image containing the kernel and the initramfs needed to boot Ubuntu. The initramfs userland bits follow the armhf ABI since it is built from Ubuntu sources. The kernel is ABI agnostic since it does not use floating point functionality. – Recovery (Clockworkmod Recovery image)Optional for running the device but necessary for OTA upgrades and also usually a good first step when porting Android to a device. This is a Clockworkmod Recovery image with Ubuntu patches, so it is built from the Android tree. git://phablet.ubuntu.com/CyanogenMod/android_bootable_recovery – System images This is built from the Android source tree and contains only the bare minimum needed for Ubuntu (Android HAL, initramfs, bionic, vendor blobs and daemons). Building Android apps, assets and the Dalvik runtime are disabled among other things. This image is mounted inside an LXC container in the Ubuntu host filesystem and it contains the Android proprietary drivers and is running the Android helper daemons needed to have proper support for all the hardware peripherals that are not natively supported by Ubuntu and open source drivers. Executables in this image use the armel ABI. – The Ubuntu root file system imageThis is a device independent image containing the Ubuntu Touch userland, the closes equivalent to a regular Ubuntu Desktop filesystem. This gets booted to, and in turn mounts and runs the Android system image inside an LXC container. This is built from the official Ubuntu package archives and by adding a few prebuilt Click packages.
  • 25. Deploying Ubuntu system Recovery utils ● ubuntu-device-flash (lp:/ubuntu/goget-ubuntu-touch) o File upload & config protocol - adb Recovery system o based on CWM. o adb is always on. o system-image-upgrader  /cache ● Read restore script from /cache/recovery/ubuntu_command o GPG verification  archive-master.tar.xz  archive-master.tar.xz.asc
  • 26. Dual boot ● Ubuntu Dual Boot Installer is provided to developers who want to contribute to development of Ubuntu Touch and give them an ability to run Ubuntu and Android on a single device. ● Installer script to deploy apk ● Replace the original recovery image as boot image. ● An Android app to manage image and reboot to right O.S. https://wiki.ubuntu.com/Touch/DualBootInstallation https://launchpad.net/humpolec
  • 27. Easy customization of look, feel, and behavior
  • 28. Image Components Device tarball The Device tarball contains the Ubuntu equivalent of an Android BSP. Each individual mobile device will have its own specific device tarball. Ubuntu tarball The Ubuntu tarball is considered the “standard” Ubuntu Touch image. As much as possible, it is common across all Ubuntu Touch devices. This design helps to prevent fragmentation of deployed devices. Custom tarball The Custom tarball is the officially supported method for all Ubuntu Touch downstream consumers, ranging from commercial OEMs to community remixes, to modify the look, feel, and behavior of Ubuntu Touch.
  • 29. Customization ● Backgrounds Normal Unity Shell background and the Welcome Screen background. o Shell background o Welcome Screen background ● Color Schemes o Customized themes o Infographic color scheme the series of circles on the Welcome Screen that displays user’s data ● Audio ● Default Browser settings o Bookmarks o home page ● Preinstalling Content o click packages o sample content.
  • 30. References ● Ubuntu Developer http://developer.ubuntu.com/ o Scope http://developer.ubuntu.com/scopes/overview/ ● Mir: Welcome to Mir http://unity.ubuntu.com/mir/ ● Touch - Ubuntu Wiki https://wiki.ubuntu.com/Touch o Touch/Porting https://wiki.ubuntu.com/Touch/Porting o Touch/Deploying https://wiki.ubuntu.com/Touch/Deploying ● OEM Customization http://developer.ubuntu.com/resources/oem/ o Ubuntu Image Architecture http://developer.ubuntu.com/resources/oem/architecture/ ● Ubuntu Touch Ports http://forum.xda-developers.com/ubuntu-touch/android-ports ● Ubuntu Phone - https://lists.launchpad.net/ubuntu-phone/