SlideShare uma empresa Scribd logo
1 de 38
Baixar para ler offline
What’s new in Tizen .NET?
Brandon Minnick
Developer Advocate, Microsoft
New Update for Galaxy Watch and Samsung TV
Hobum (Vincent) Kwon
Principal Engineer, Samsung Electronics
Questions:
• How many of you use Tizen SDK for making applications?
• How many of you use Xamarin & .NET for making applications?
From the title, you may ask …
• What is Tizen?
• What is Tizen .NET?
Including answers for the questions, let’s set the agenda first.
Agenda for this session:
• Introduction to Tizen Platform (5 min)
• Technical overview of Tizen .NET (5 min)
• Overview of Xamarin (15 min)
• New updates in Tizen .NET (5 min)
• Demo (5 min)
Tizen
• Linux-based open source platform
• Designed & optimized for CE devices
• 1 billion Tizen-based devices already
• Adopted to
• Samsung TVs
• Galaxy Watches
• Family-Hub
• Phones (Z1, Z3, Z4)
• …
• Current version: Tizen 5.0 M2 (Nov.1 2018 updated)
Tizen Application Models
• Tizen Native Application
(C/C++)
• Web Application
(HTML/CSS/JavaScript)
• Tizen .NET Application
(C#, .NET)
Introducing Tizen .NET
For high development productivity, powerful and
convenient .NET has been added. (since Tizen 4.0)
+
Tizen
• Experience productive and powerful .NET on Tizen
Tizen + .NET
Powerful as Java,
Object-oriented,
Strong community (8 million)
+
Open source on Linux, Mac, Windows
+100,000 foundation APIs (.NET standard)
High productivity (Intellisense)
Tons of extensions & tools
NuGet package managers
+
Tizen .NET + Xamarin
• Make native UI development much easier than Tizen native.
• Xamarin provides easy-to-use cross-platform APIs with tons of
developer references.
+
Tizen .NET
Xamarin
Brandon Minnick
Developer Advocate
Microsoft
10 New Updates
in Tizen .NET
Hobum (Vincent) Kwon
1. Watch, TV App Stores are ready to accept
• Ready to register Tizen .NET watch apps to the Galaxy Apps
• Ready to register Tizen .NET TV apps to the Samsung TV store.
• Learn Tizen .NET once, run on all the Samsung Tizen devices.
https://www.samsung.com/global/galaxy/apps/galaxy-apps/ https://seller.samsungapps.com/tv/portal/main#
2. .NET & Xamarin 3rd party libraries support
• Skiasharp
• FFImageLoading
• MicroChart
• Xamanimation
• CarouselView
• XamarinMediaMenager
• XamarinMediaMenager
• Xam.Plugins.Messaging
• SimpleAudioPlayer
• UserDialogs
• SharePlugin
• SettingPlugin
• SecureStorage
• Permissions
• Media Plugin
• DeviceInfoPlugin
• ConnectivityPlugin
• And so on
3. Tizen Circular UI for Galaxy Watch
• Enable easy watch app development with Tizen Circular UI APIs
Source code: https://github.com/Samsung/Tizen.CircularUI
Nuget: https://www.nuget.org/packages/Tizen.Wearable.CircularUI/
3. Tizen Circular UI for Galaxy Watch
• Just create a “Tizen Wearable App” from a project template
4. Tizen TV UI for Samsung Smart TV
• Enable easy smart tv app development with Tizen TV UI APIs.
Source code: https://github.com/Samsung/Tizen.TV.UIControls
Nuget : https://www.nuget.org/packages/Tizen.TV.UIControls/1.0.0-beta-00003
Browse Tizen.TV.UIControls from Nuget Package Manger in Visual Studio
4. Tizen TV UI for Samsung Smart TV
• Newly released Tizen TV UI APIs (UI Controlls) as below:
Media Player Drawer + ListView Focus Chain
RecycleItemsView Focus ManagementMedia Player + Embedding Controls
Entry and EditorImageCell with Text Popup
5. TizenFX Version 5
Pims
.Calendar
..CalendarViews
.Contacts
..ContactsViews
Tizen
- common
NUI
.BaseComponents
.Constants
.UIComponents
Account
.AccountManager
.FidoClient
.OAuth2
.SyncManager
Telephony
Security
.SecureRepository
..Crypto
.TEEC
Applications
.AttachPanel
.CoreBackend
.DataControl
.Exceptions
.Messages
.NotificationEvent
Listener
.Notifications
.Shortcut
.
Network
.Bluetooth
.Connection
.IoTConnectivity
.Nfc
.Nsd
.Smartcard
.WiFi
.WiFiDirect
Maps
Uix
.InputMethod
.InputMethodManager
.Stt
.SttEngine
.Tts
.TtsEngine
.VoiceControlSensorContent
.Download
.MediaContent
.MimeType
.AppHistory
Messaging
.Email
.Messages
.Push
System
.Usb
Location
.Geofence
PhonenumberUtils
Multimedia
.MediaCodec
.Remoting
.Util
.Vision
WebView
ElmSharp
.Accessible
.Wearable
+
+
+
+
Nlp
RPCPort
+
+
+
6. UI Test Automation using appium
• Write tests against multiple platform
• Run tests on multiple Tizen devices
appium Tizen .NET
Test scripts
6. UI Test Automation using appium
• We are contributing to appium for supporting Tizen
• Appium tizen drive
https://github.com/Samsung/appium-tizen-driver
• Appium client library (for C#)
https://github.com/appium/appium-dotnet-driver
• Tizen.Appium (for Tizen .NET apps using Xamarn.Forms)
https://github.com/Samsung/Tizen.Appium
6. Appium Sample
• Preparing your Tizen .NET app for test
• Running your test app with appium
TizenAppium.StartService(app);
DesiredCapabilities appCapabilities = new DesiredCapabilities();
appCapabilities.SetCapability("platformName", "Tizen");
appCapabilities.SetCapability("deviceName", "emulator-26101");
appCapabilities.SetCapability("appPackage", "ControlGallery.Tizen");
URL url = new URL("http://127.0.0.1:4723/wd/hub");
TizenDriver<TizenElement> driver = new TizenDriver<TizenElement>(url, desiredCapabilities);
• A single cross-platform device API
• works with any Android, iOS, and UWP application.
• can be accessed from shared code no matter how the user interface is
created.
• Developing 30+ modules
• accelerometer, battery, compass, ...
• https://github.com/xamarin/Essentials
7. Xamarin Essentials
7. Xamarin Essentials for Tizen
• Tizen backend added !
• Support multi profiles (Mobile, TV, Watch)
• Currently support 26 of 30 modules.
8. .NET Core Runtime for Tizen
• Microsoft Maintained Open-source CLR & .NET Class Libraries
• High Performance & Modular Design
• Supporting Linux, Mac, & Windows
• Compatible w/ .NET FW, Xamarin and Mono via .NET Standard
• Now .NET Core 2.1.5 & Upcoming Ship Dates Are:
INTRO & ROADMAP
*Common Language Runtime
Milestone Release Date
.NET Core 2.2 Q4 2018
.NET Core 3.0 Q1 2019
8. .NET Core Runtime for Tizen
• Performance (Galaxy Gear – Tizen 4.0)
• Version Mapping
• Tizen 4.0 : .NET Core 2.0.0
• Tizen 5.0 : .NET Core 2.1.4
PERFORMANCE& VERSION MAPPING
0
500
1000
1500
native ElmSharp Xamarin web
Application Startup Time
0
20000
40000
60000
80000
native ElmSharp Xamarin web
Memory Usage
Tested with
Simple Stopwatch App
• .NET Standard 2.0 has the set of 32k APIs
• CI for Functional Regression & Performance Statistics
• Test All APIs under Secure Application Environment
8. .NET Core Tests for Tizen
Total Pass Pass Ratio
CoreCLR Tests
Core managed library, Loader, GC, JIT,
Hosting, ReadyToRun, Base services, Exceptions
10,998 10,998 100 %
CoreFX Tests
System.IO, System.Collections, System.Xml, System.Globalization,
System.Net, System.Linq, System.Text, System.Threading, and more ...
492,943 492,943 100 %
9. Tools update
• Visual Studio Tools for Tizen
• Project Templates
• Manifest Editor
• Emulators and Emulator Manager
• Tizen Log Viewer
• Tizen API and Privilege Checker
Visual Studio
Tools for Tizen
Performance
Profiler
Development
Environment
(Visual Studio
2017)
Debugger & Utilities
Emulator
10. More Samples and More Documents
• For Wearable • For TV
https://developer.tizen.org/development/sample/.net-application
*https://github.com/Samsung/Tizen.TV.
UIControls/tree/master/sample/TMDb
Demo 1
A Tizen .NET TV app
SmartHotel 360 - E2E reference sample and Azure backend
• SmartHotel360 is a fictional smart hospitality company
showcasing the future of connected travel
• SmartHotel360 was shared as reference samples at Connect();
2017 Scott Guthrie’s keynote
SmartHotel 360 – How to launch SmartHotel360 on Tizen
1. Create SmartHotel.Tizen project on an original solution file
SmartHotel 360 – How to launch SmartHotel360 on Tizen
2. Add one sentence for initializing tizen backend of Xamarin.Forms
3. Install 3rd party libraries using nuget package manager
• SkiaSharp, FFImageLoading and so on
static void Main(string[] args)
{
var app = new Program();
Xamarin.FormsMaps.Init("HERE", "pE-W9LeqN7zB9RtnwgBN/tZuCgj-LtWQ4RWN56XrVpA");
global::Xamarin.Forms.Platform.Tizen.Forms.Init(app, true);
app.Run(args);
}
SmartHotel 360 – How to launch SmartHotel360 on Tizen
4. Initailize 3rd party libraries
5. Build, install and launch on an emulator and a target
 Reference example(https://github.com/yourina/SmartHotel360-mobile-desktop-apps)
static void Main(string[] args)
{
Xamarin.FormsMaps.Init("HERE", "pE-W9LeqN7zB9RtnwgBN/tZuCgj-LtWQ4RWN56XrVpA");
CarouselViewRenderer.Init();
CachedImageRenderer.Init(app);
global::Xamarin.Forms.Platform.Tizen.Forms.Init(app, true);
app.Run(args);
}
Demo 2
Tizen .NET Wearable Apps
Conclusion
Summary of Benefits of using Tizen .NET
• Tizen platform is being used on more than 1 billion devices
• Tizen .NET brings you
• High productivity when making applications for Tizen.
• Consistent development environment across any Tizen devices.
• Cross-platform capability to run apps on Tizen, Android, and iOS.
• You can develop possibly any kind of apps using Tizen .NET
• Watch apps (Producer-Consumer, Watch faces, Social Network)
• TV apps (media content apps, life, information, etc)
• Comprehensive samples you can run on emulators and devices.
• Wearable samples
• TV samples
Developing Tizen .NET Apps Today!!!
• Enable easy watch app development with Tizen Circular UI APIs.
• Check out easy-to-follow tutorial:
https://developer.tizen.org/development/training/.net-application
• Download Tizen .NET today:
https://developer.tizen.org/development/visual-studio-tools-tizen/installing-
visual-studio-tools-tizen
• Start with Youtube videos:
https://www.youtube.com/watch?v=NdvWwU0gKt8&t=20s
Questions?
To: hobum.kwon@samsung.com

Mais conteúdo relacionado

Mais de Brandon Minnick, MBA

Introduction to Serverless with AWS Lambda in C#.pptx
Introduction to Serverless with AWS Lambda in C#.pptxIntroduction to Serverless with AWS Lambda in C#.pptx
Introduction to Serverless with AWS Lambda in C#.pptxBrandon Minnick, MBA
 
Correcting Common .NET Mistakes in Async Await .pptx
Correcting Common .NET Mistakes in Async Await .pptxCorrecting Common .NET Mistakes in Async Await .pptx
Correcting Common .NET Mistakes in Async Await .pptxBrandon Minnick, MBA
 
Introducing .NET MAUI Toolkit.pptx
Introducing .NET MAUI Toolkit.pptxIntroducing .NET MAUI Toolkit.pptx
Introducing .NET MAUI Toolkit.pptxBrandon Minnick, MBA
 
Creating Apps With .NET MAUI for iOS, Android, macOS + Windows
Creating AppsWith .NET MAUIfor iOS, Android, macOS + WindowsCreating AppsWith .NET MAUIfor iOS, Android, macOS + Windows
Creating Apps With .NET MAUI for iOS, Android, macOS + WindowsBrandon Minnick, MBA
 
Creating iOS & Android Apps using Xamarin
Creating iOS & Android Apps using XamarinCreating iOS & Android Apps using Xamarin
Creating iOS & Android Apps using XamarinBrandon Minnick, MBA
 
Creating Native iOS & Android Apps in C#
Creating Native iOS & Android Apps in C#Creating Native iOS & Android Apps in C#
Creating Native iOS & Android Apps in C#Brandon Minnick, MBA
 
DevReach: Creating Xamarin.Forms UIs in C#
DevReach: Creating Xamarin.Forms UIs in C#DevReach: Creating Xamarin.Forms UIs in C#
DevReach: Creating Xamarin.Forms UIs in C#Brandon Minnick, MBA
 
Creating Serverless Apps without Writing Any Code
Creating Serverless Apps without Writing Any CodeCreating Serverless Apps without Writing Any Code
Creating Serverless Apps without Writing Any CodeBrandon Minnick, MBA
 

Mais de Brandon Minnick, MBA (20)

Creating Apps with .NET MAUI.pptx
Creating Apps with .NET MAUI.pptxCreating Apps with .NET MAUI.pptx
Creating Apps with .NET MAUI.pptx
 
Building GraphQL APIs in C#.pptx
Building GraphQL APIs in C#.pptxBuilding GraphQL APIs in C#.pptx
Building GraphQL APIs in C#.pptx
 
Introduction to Serverless with AWS Lambda in C#.pptx
Introduction to Serverless with AWS Lambda in C#.pptxIntroduction to Serverless with AWS Lambda in C#.pptx
Introduction to Serverless with AWS Lambda in C#.pptx
 
Consuming GraphQL APIs in C#.pptx
Consuming GraphQL APIs in C#.pptxConsuming GraphQL APIs in C#.pptx
Consuming GraphQL APIs in C#.pptx
 
Correcting Common .NET Mistakes in Async Await .pptx
Correcting Common .NET Mistakes in Async Await .pptxCorrecting Common .NET Mistakes in Async Await .pptx
Correcting Common .NET Mistakes in Async Await .pptx
 
Building GraphQL API in C#.pptx
Building GraphQL API in C#.pptxBuilding GraphQL API in C#.pptx
Building GraphQL API in C#.pptx
 
Introducing .NET MAUI Toolkit.pptx
Introducing .NET MAUI Toolkit.pptxIntroducing .NET MAUI Toolkit.pptx
Introducing .NET MAUI Toolkit.pptx
 
Building MAUI UI in C#.pptx
Building MAUI UI in C#.pptxBuilding MAUI UI in C#.pptx
Building MAUI UI in C#.pptx
 
Building GraphQL API in C#.pptx
Building GraphQL API in C#.pptxBuilding GraphQL API in C#.pptx
Building GraphQL API in C#.pptx
 
Creating Apps with .NET MAUI
Creating Apps with .NET MAUICreating Apps with .NET MAUI
Creating Apps with .NET MAUI
 
Creating Apps With .NET MAUI for iOS, Android, macOS + Windows
Creating AppsWith .NET MAUIfor iOS, Android, macOS + WindowsCreating AppsWith .NET MAUIfor iOS, Android, macOS + Windows
Creating Apps With .NET MAUI for iOS, Android, macOS + Windows
 
Creating Xamarin.Forms UIs is C#
Creating Xamarin.Forms UIs is C#Creating Xamarin.Forms UIs is C#
Creating Xamarin.Forms UIs is C#
 
The Future of Xamarin
The Future of XamarinThe Future of Xamarin
The Future of Xamarin
 
Creating iOS & Android Apps using Xamarin
Creating iOS & Android Apps using XamarinCreating iOS & Android Apps using Xamarin
Creating iOS & Android Apps using Xamarin
 
Xamarin + GraphQL
Xamarin + GraphQLXamarin + GraphQL
Xamarin + GraphQL
 
Creating Native iOS & Android Apps in C#
Creating Native iOS & Android Apps in C#Creating Native iOS & Android Apps in C#
Creating Native iOS & Android Apps in C#
 
DevReach: Creating Xamarin.Forms UIs in C#
DevReach: Creating Xamarin.Forms UIs in C#DevReach: Creating Xamarin.Forms UIs in C#
DevReach: Creating Xamarin.Forms UIs in C#
 
The Future of Xamarin
The Future of XamarinThe Future of Xamarin
The Future of Xamarin
 
Creating Serverless Apps without Writing Any Code
Creating Serverless Apps without Writing Any CodeCreating Serverless Apps without Writing Any Code
Creating Serverless Apps without Writing Any Code
 
The Future of Xamarin
The Future of XamarinThe Future of Xamarin
The Future of Xamarin
 

Ú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
 
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
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
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
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
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
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 

Ú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
 
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
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
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
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
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, ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 

What's New in Tizen + .Net

  • 1. What’s new in Tizen .NET? Brandon Minnick Developer Advocate, Microsoft New Update for Galaxy Watch and Samsung TV Hobum (Vincent) Kwon Principal Engineer, Samsung Electronics
  • 2. Questions: • How many of you use Tizen SDK for making applications? • How many of you use Xamarin & .NET for making applications?
  • 3. From the title, you may ask … • What is Tizen? • What is Tizen .NET? Including answers for the questions, let’s set the agenda first.
  • 4. Agenda for this session: • Introduction to Tizen Platform (5 min) • Technical overview of Tizen .NET (5 min) • Overview of Xamarin (15 min) • New updates in Tizen .NET (5 min) • Demo (5 min)
  • 5. Tizen • Linux-based open source platform • Designed & optimized for CE devices • 1 billion Tizen-based devices already • Adopted to • Samsung TVs • Galaxy Watches • Family-Hub • Phones (Z1, Z3, Z4) • … • Current version: Tizen 5.0 M2 (Nov.1 2018 updated)
  • 6. Tizen Application Models • Tizen Native Application (C/C++) • Web Application (HTML/CSS/JavaScript) • Tizen .NET Application (C#, .NET)
  • 7. Introducing Tizen .NET For high development productivity, powerful and convenient .NET has been added. (since Tizen 4.0) + Tizen
  • 8. • Experience productive and powerful .NET on Tizen Tizen + .NET Powerful as Java, Object-oriented, Strong community (8 million) + Open source on Linux, Mac, Windows +100,000 foundation APIs (.NET standard) High productivity (Intellisense) Tons of extensions & tools NuGet package managers +
  • 9. Tizen .NET + Xamarin • Make native UI development much easier than Tizen native. • Xamarin provides easy-to-use cross-platform APIs with tons of developer references. + Tizen .NET
  • 11. 10 New Updates in Tizen .NET Hobum (Vincent) Kwon
  • 12. 1. Watch, TV App Stores are ready to accept • Ready to register Tizen .NET watch apps to the Galaxy Apps • Ready to register Tizen .NET TV apps to the Samsung TV store. • Learn Tizen .NET once, run on all the Samsung Tizen devices. https://www.samsung.com/global/galaxy/apps/galaxy-apps/ https://seller.samsungapps.com/tv/portal/main#
  • 13. 2. .NET & Xamarin 3rd party libraries support • Skiasharp • FFImageLoading • MicroChart • Xamanimation • CarouselView • XamarinMediaMenager • XamarinMediaMenager • Xam.Plugins.Messaging • SimpleAudioPlayer • UserDialogs • SharePlugin • SettingPlugin • SecureStorage • Permissions • Media Plugin • DeviceInfoPlugin • ConnectivityPlugin • And so on
  • 14. 3. Tizen Circular UI for Galaxy Watch • Enable easy watch app development with Tizen Circular UI APIs Source code: https://github.com/Samsung/Tizen.CircularUI Nuget: https://www.nuget.org/packages/Tizen.Wearable.CircularUI/
  • 15. 3. Tizen Circular UI for Galaxy Watch • Just create a “Tizen Wearable App” from a project template
  • 16. 4. Tizen TV UI for Samsung Smart TV • Enable easy smart tv app development with Tizen TV UI APIs. Source code: https://github.com/Samsung/Tizen.TV.UIControls Nuget : https://www.nuget.org/packages/Tizen.TV.UIControls/1.0.0-beta-00003 Browse Tizen.TV.UIControls from Nuget Package Manger in Visual Studio
  • 17. 4. Tizen TV UI for Samsung Smart TV • Newly released Tizen TV UI APIs (UI Controlls) as below: Media Player Drawer + ListView Focus Chain RecycleItemsView Focus ManagementMedia Player + Embedding Controls Entry and EditorImageCell with Text Popup
  • 18. 5. TizenFX Version 5 Pims .Calendar ..CalendarViews .Contacts ..ContactsViews Tizen - common NUI .BaseComponents .Constants .UIComponents Account .AccountManager .FidoClient .OAuth2 .SyncManager Telephony Security .SecureRepository ..Crypto .TEEC Applications .AttachPanel .CoreBackend .DataControl .Exceptions .Messages .NotificationEvent Listener .Notifications .Shortcut . Network .Bluetooth .Connection .IoTConnectivity .Nfc .Nsd .Smartcard .WiFi .WiFiDirect Maps Uix .InputMethod .InputMethodManager .Stt .SttEngine .Tts .TtsEngine .VoiceControlSensorContent .Download .MediaContent .MimeType .AppHistory Messaging .Email .Messages .Push System .Usb Location .Geofence PhonenumberUtils Multimedia .MediaCodec .Remoting .Util .Vision WebView ElmSharp .Accessible .Wearable + + + + Nlp RPCPort + + +
  • 19. 6. UI Test Automation using appium • Write tests against multiple platform • Run tests on multiple Tizen devices appium Tizen .NET Test scripts
  • 20. 6. UI Test Automation using appium • We are contributing to appium for supporting Tizen • Appium tizen drive https://github.com/Samsung/appium-tizen-driver • Appium client library (for C#) https://github.com/appium/appium-dotnet-driver • Tizen.Appium (for Tizen .NET apps using Xamarn.Forms) https://github.com/Samsung/Tizen.Appium
  • 21. 6. Appium Sample • Preparing your Tizen .NET app for test • Running your test app with appium TizenAppium.StartService(app); DesiredCapabilities appCapabilities = new DesiredCapabilities(); appCapabilities.SetCapability("platformName", "Tizen"); appCapabilities.SetCapability("deviceName", "emulator-26101"); appCapabilities.SetCapability("appPackage", "ControlGallery.Tizen"); URL url = new URL("http://127.0.0.1:4723/wd/hub"); TizenDriver<TizenElement> driver = new TizenDriver<TizenElement>(url, desiredCapabilities);
  • 22. • A single cross-platform device API • works with any Android, iOS, and UWP application. • can be accessed from shared code no matter how the user interface is created. • Developing 30+ modules • accelerometer, battery, compass, ... • https://github.com/xamarin/Essentials 7. Xamarin Essentials
  • 23. 7. Xamarin Essentials for Tizen • Tizen backend added ! • Support multi profiles (Mobile, TV, Watch) • Currently support 26 of 30 modules.
  • 24. 8. .NET Core Runtime for Tizen • Microsoft Maintained Open-source CLR & .NET Class Libraries • High Performance & Modular Design • Supporting Linux, Mac, & Windows • Compatible w/ .NET FW, Xamarin and Mono via .NET Standard • Now .NET Core 2.1.5 & Upcoming Ship Dates Are: INTRO & ROADMAP *Common Language Runtime Milestone Release Date .NET Core 2.2 Q4 2018 .NET Core 3.0 Q1 2019
  • 25. 8. .NET Core Runtime for Tizen • Performance (Galaxy Gear – Tizen 4.0) • Version Mapping • Tizen 4.0 : .NET Core 2.0.0 • Tizen 5.0 : .NET Core 2.1.4 PERFORMANCE& VERSION MAPPING 0 500 1000 1500 native ElmSharp Xamarin web Application Startup Time 0 20000 40000 60000 80000 native ElmSharp Xamarin web Memory Usage Tested with Simple Stopwatch App
  • 26. • .NET Standard 2.0 has the set of 32k APIs • CI for Functional Regression & Performance Statistics • Test All APIs under Secure Application Environment 8. .NET Core Tests for Tizen Total Pass Pass Ratio CoreCLR Tests Core managed library, Loader, GC, JIT, Hosting, ReadyToRun, Base services, Exceptions 10,998 10,998 100 % CoreFX Tests System.IO, System.Collections, System.Xml, System.Globalization, System.Net, System.Linq, System.Text, System.Threading, and more ... 492,943 492,943 100 %
  • 27. 9. Tools update • Visual Studio Tools for Tizen • Project Templates • Manifest Editor • Emulators and Emulator Manager • Tizen Log Viewer • Tizen API and Privilege Checker Visual Studio Tools for Tizen Performance Profiler Development Environment (Visual Studio 2017) Debugger & Utilities Emulator
  • 28. 10. More Samples and More Documents • For Wearable • For TV https://developer.tizen.org/development/sample/.net-application *https://github.com/Samsung/Tizen.TV. UIControls/tree/master/sample/TMDb
  • 29. Demo 1 A Tizen .NET TV app
  • 30. SmartHotel 360 - E2E reference sample and Azure backend • SmartHotel360 is a fictional smart hospitality company showcasing the future of connected travel • SmartHotel360 was shared as reference samples at Connect(); 2017 Scott Guthrie’s keynote
  • 31. SmartHotel 360 – How to launch SmartHotel360 on Tizen 1. Create SmartHotel.Tizen project on an original solution file
  • 32. SmartHotel 360 – How to launch SmartHotel360 on Tizen 2. Add one sentence for initializing tizen backend of Xamarin.Forms 3. Install 3rd party libraries using nuget package manager • SkiaSharp, FFImageLoading and so on static void Main(string[] args) { var app = new Program(); Xamarin.FormsMaps.Init("HERE", "pE-W9LeqN7zB9RtnwgBN/tZuCgj-LtWQ4RWN56XrVpA"); global::Xamarin.Forms.Platform.Tizen.Forms.Init(app, true); app.Run(args); }
  • 33. SmartHotel 360 – How to launch SmartHotel360 on Tizen 4. Initailize 3rd party libraries 5. Build, install and launch on an emulator and a target  Reference example(https://github.com/yourina/SmartHotel360-mobile-desktop-apps) static void Main(string[] args) { Xamarin.FormsMaps.Init("HERE", "pE-W9LeqN7zB9RtnwgBN/tZuCgj-LtWQ4RWN56XrVpA"); CarouselViewRenderer.Init(); CachedImageRenderer.Init(app); global::Xamarin.Forms.Platform.Tizen.Forms.Init(app, true); app.Run(args); }
  • 34. Demo 2 Tizen .NET Wearable Apps
  • 36. Summary of Benefits of using Tizen .NET • Tizen platform is being used on more than 1 billion devices • Tizen .NET brings you • High productivity when making applications for Tizen. • Consistent development environment across any Tizen devices. • Cross-platform capability to run apps on Tizen, Android, and iOS. • You can develop possibly any kind of apps using Tizen .NET • Watch apps (Producer-Consumer, Watch faces, Social Network) • TV apps (media content apps, life, information, etc) • Comprehensive samples you can run on emulators and devices. • Wearable samples • TV samples
  • 37. Developing Tizen .NET Apps Today!!! • Enable easy watch app development with Tizen Circular UI APIs. • Check out easy-to-follow tutorial: https://developer.tizen.org/development/training/.net-application • Download Tizen .NET today: https://developer.tizen.org/development/visual-studio-tools-tizen/installing- visual-studio-tools-tizen • Start with Youtube videos: https://www.youtube.com/watch?v=NdvWwU0gKt8&t=20s