Difference between revisions of "Architecture"

From WebOS-Ports
Jump to navigation Jump to search
(→‎APIs: Send URL)
m (Logging Infrastructure)
 
(4 intermediate revisions by 2 users not shown)
Line 6: Line 6:
  
 
[[Luna Next|Luna Next]]
 
[[Luna Next|Luna Next]]
 +
 +
[[Logging Infrastructure|Logging Infrastructure]]
  
 
[[Galaxy Nexus Communication Infrastructure|Galaxy Nexus Communication Infrastructure]]
 
[[Galaxy Nexus Communication Infrastructure|Galaxy Nexus Communication Infrastructure]]
Line 35: Line 37:
 
[[System_Upgrade|System Upgrade]]
 
[[System_Upgrade|System Upgrade]]
  
[[Enyo Ports UI|Enyo Ports UI]]
+
[[Human Interface Guidelines]]
 
 
  
 
== API Design ==
 
== API Design ==
Line 44: Line 45:
 
These must be carefully thought out, so they improve the environment for app developers and user.
 
These must be carefully thought out, so they improve the environment for app developers and user.
  
When designing new APIs and data structures, favor URLs. For example, an attachment could be pulled from the net (http: or git: URL schemes) as easily as a file (file: URL scheme) or immediate data (data: URL scheme).
+
When designing new APIs and data structures, favor URLs. For example, an avatar or attachment could be pulled from the net (http: or git: URL schemes) as easily as a file (file: URL scheme) or immediate data (data: URL scheme).
 
A contact URL could be an email (mailto: URL scheme), IM address (im:, aim:, sms:, gg:, irc: URL schemes) telephone (tel:, skype: or rtsp: URL schemes) or a web page (http: URL scheme).  Only schemes that make sense in a given context need to be supported.  This will make our APIs and data structures more future-proof.
 
A contact URL could be an email (mailto: URL scheme), IM address (im:, aim:, sms:, gg:, irc: URL schemes) telephone (tel:, skype: or rtsp: URL schemes) or a web page (http: URL scheme).  Only schemes that make sense in a given context need to be supported.  This will make our APIs and data structures more future-proof.
  
 
== APIs ==
 
== APIs ==
 
Various info bits that still need further working out and documentation:
 
Various info bits that still need further working out and documentation:
 +
 +
[[Permission_Service|Proposed Permission Service]]
  
 
[[OTA API Blueprint|OTA API Blueprint]]
 
[[OTA API Blueprint|OTA API Blueprint]]
Line 59: Line 62:
  
 
=== Send URL ===
 
=== Send URL ===
A replacement for the Touch-to-share API is needed, which accommodates various transmission media, such as Bluetooth, ZeroConf (Bonjour), QR codes and [https://chrome.google.com/webstore/detail/google-tone/nnckehldicaciogcbchegobnafnjkcne Google Tone] or Chirp for iOS.  The send side is probably best handled via the Share Intent.[[Intents]]  The receive side requires some thought: always-on is a security risk and wasteful of power, while activating a receive mode needs to be easy.  It might or might not be useful to send or listen using several media at once.
+
A replacement for the Touch-to-share API is needed, which accommodates various transmission media, such as Bluetooth, ZeroConf (Bonjour), QR codes and [https://chrome.google.com/webstore/detail/google-tone/nnckehldicaciogcbchegobnafnjkcne Google Tone] or Chirp for iOS.  The send side is probably best handled via the [[Intents|Share Intent]].   The receive side requires some thought: always-on is a security risk and wasteful of power, while activating a receive mode needs to be easy.  It might or might not be useful to send or listen using several media at once.

Latest revision as of 20:25, 7 June 2020

WebOS Ports Design Architecture

Here will be a description of the architecture of WebOS Ports. How all bits and pieces interact with each other.

WebOS Ports Architecture

Luna Next

Logging Infrastructure

Galaxy Nexus Communication Infrastructure

Building Custom LunaSysMgr for Open webOS

GPU Drivers

Commits History

OE Benchmark

Porting Guide for new devices

Chinese, Japanese, Korean Input Methods

Submitting Contributions

Schedules/Beta Feature Plan

Secrets

WallpaperContest

LS2 Debug Commands

Upstream Submission Status

System Upgrade

Human Interface Guidelines

API Design

Initially, we'll re-implement the webOS APIs. We'll need some new APIs that are straightforward extensions of existing APIs (for example, Proposed Synergy for Tasks). Other new APIs could substantially alter the app environment and user experience (for example, Proposed Lune OS Intents). These must be carefully thought out, so they improve the environment for app developers and user.

When designing new APIs and data structures, favor URLs. For example, an avatar or attachment could be pulled from the net (http: or git: URL schemes) as easily as a file (file: URL scheme) or immediate data (data: URL scheme). A contact URL could be an email (mailto: URL scheme), IM address (im:, aim:, sms:, gg:, irc: URL schemes) telephone (tel:, skype: or rtsp: URL schemes) or a web page (http: URL scheme). Only schemes that make sense in a given context need to be supported. This will make our APIs and data structures more future-proof.

APIs

Various info bits that still need further working out and documentation:

Proposed Permission Service

OTA API Blueprint

Proposed Lune OS Intents

Proposed Synergy for Tasks

Proposed Swipe UI Convention

Send URL

A replacement for the Touch-to-share API is needed, which accommodates various transmission media, such as Bluetooth, ZeroConf (Bonjour), QR codes and Google Tone or Chirp for iOS. The send side is probably best handled via the Share Intent. The receive side requires some thought: always-on is a security risk and wasteful of power, while activating a receive mode needs to be easy. It might or might not be useful to send or listen using several media at once.