SlideShare ist ein Scribd-Unternehmen logo
1 von 110
Downloaden Sie, um offline zu lesen
.NET /
Xamarin
VOYAGE GROUP (@y_chu5)
.NET Conf 2018, Tokyo
Tw: @y_chu5
Gh: @yamachu
VOYAGE GROUP
C# Python
Scala TypeScript
DDD(Deadline Driven Development)
•
•
• Android (Java) iOS (Objective-C)
• JINS MEME SDK
https://github.com/yamachu/JINSMEME.Xamarin
•
• Xamarin
• NuGet
• GitHub
•
• SDK
•
• SDK
• like
• Xamarin
•
• macOS
• Visual Studio for Mac
Android
•
•
•
•
•
•
Visual Studio for Mac
Binding Library
Xamarin.Android
!
•
•
• jar
• aar
Build Action
jar
• EmbeddedJar
• EmbeddedReferenceJar
• InputJar
• ReferenceJar
Build Action
jar
• EmbeddedJar
• EmbeddedReferenceJar
• InputJar
• ReferenceJar
Build Action – jar –
EmbeddedJar
• jar DLL
•
InputJar
• jar DLL
• jar
•
Build Action
aar
• LibraryProjectZip
aar
!
!
•
API
Reference > Projects
• Class
• Method
• Class
• Class
• MemeLib
• Method
•
• Class
• Library4could.Dao
!
!
!
"
!
!
"
•
•
• Java C#
•
•
•
•
• etc…
•
•
• api.xml
• Parse api
• Metadata.xml
•
Warning
Class ~ has unknown base type ~
api.xml
api.xml
!
"
u$1, u$11, …
• MemeLib
• meme.u
• MemeLib
• public meme.u
• meme.u
•
• u$
• MemeLib
• meme.u
• MemeLib
• public meme.u
• meme.u
•
• u$
Metadata.xml
Metadata.xml
https://docs.microsoft.com/ja-jp/xamarin/android/platform/binding-java-library/customizing-bindings/java-bindings-metadata
• attr – Sets the value of an attribute of the element
specified by the path attribute.
• remove-node – Removes nodes matching a specified
XPath.
add-node
Metadata.xml &
•
•
Metadata.xml &
•
•
!
!
!
!
•
• warning
• Library4could.Dao namespace
remove-node
attr remove-node
…
warning
remove-node
!
!
!
!
!
•
•
•
•
• warning
•
• Java => C#
• Value Value
• EventArgs
•
•
•
•
•
• h#ps://docs.microso/.com/ja-jp/xamarin/android/pla6orm/binding-java-library/
•
• h#ps://www.buildinsider.net/mobile/insidexamarin/10
• GitHub
• h#ps://github.com/xamarin/AndroidSupportComponents
•
• Xamarin
• h#ps://xamaritans.booth.pm/items/1049524
iOS
•
•
•
•
•
•
•
•
•
•
Visual Studio for Mac
Binding Library
Xamarin.iOS
!
•
•
•
•
• framework
• Pods
framework
framework
.a static lib
…
Static Lib …
Shared Library!
Static Lib
.a
Shared Lib
framework
$( ).linkwith.cs
.csproj
!
!
!
•
•
•
https://docs.microsoft.com/en-US/xamarin/cross-platform/macios/binding/objective-sharpie/
Objective Sharpie
Header
Objective Sharpie
SDK
Objective Sharpie
Objective Sharpie
!
!
!
!
•
•
!
!
!
!
"
•
• Verify Attribute
•
2
Verify Attribute
https://docs.microsoft.com/en-us/xamarin/cross-platform/macios/binding/objective-sharpie/platform/verify
• API
•
API
Interface
!
!
!
!
!
•
•
•
•
•
•
•
• https://docs.microsoft.com/en-us/xamarin/cross-platform/macios/binding/
• GitHub
• https://github.com/mono/monotouch-bindings
• Web
• Qiita @iseebi
• https://qiita.com/iseebi/items/36c4fe2bd0c996163db5
• http://qiita.com/iseebi/items/909f2d41c71d7e86a220
• http://qiita.com/iseebi/items/7e645bde85a04ebef371
•
•

Weitere ähnliche Inhalte

Was ist angesagt?

Native Script by Sebastian Witalec
Native Script by Sebastian WitalecNative Script by Sebastian Witalec
Native Script by Sebastian Witalec
Simone Basso
 

Was ist angesagt? (20)

Cross platform mobile development with xamarin and office 365
Cross platform mobile development with xamarin and office 365Cross platform mobile development with xamarin and office 365
Cross platform mobile development with xamarin and office 365
 
JHipster
JHipsterJHipster
JHipster
 
React Native
React NativeReact Native
React Native
 
Frontendと向き合う
Frontendと向き合うFrontendと向き合う
Frontendと向き合う
 
Railsフロントエンドの modernizeにおける一事例 ~decaffeinateからES2015移行まで~
Railsフロントエンドの modernizeにおける一事例 ~decaffeinateからES2015移行まで~Railsフロントエンドの modernizeにおける一事例 ~decaffeinateからES2015移行まで~
Railsフロントエンドの modernizeにおける一事例 ~decaffeinateからES2015移行まで~
 
Vue.js + Vuexチーム開発実践の事例
Vue.js + Vuexチーム開発実践の事例Vue.js + Vuexチーム開発実践の事例
Vue.js + Vuexチーム開発実践の事例
 
Salesforce DX ことはじめ
Salesforce DX ことはじめSalesforce DX ことはじめ
Salesforce DX ことはじめ
 
Hyperloop
HyperloopHyperloop
Hyperloop
 
Railsのフロントエンドのトレンドと実際〜事業を進めながら、レールに乗り続けるためのテクニック〜
Railsのフロントエンドのトレンドと実際〜事業を進めながら、レールに乗り続けるためのテクニック〜Railsのフロントエンドのトレンドと実際〜事業を進めながら、レールに乗り続けるためのテクニック〜
Railsのフロントエンドのトレンドと実際〜事業を進めながら、レールに乗り続けるためのテクニック〜
 
JHipster, modern web application development made easy
JHipster, modern web application development made easyJHipster, modern web application development made easy
JHipster, modern web application development made easy
 
Protostrap
ProtostrapProtostrap
Protostrap
 
Алексей Волков "Введение в React Native"
Алексей Волков "Введение в React Native"Алексей Волков "Введение в React Native"
Алексей Волков "Введение в React Native"
 
How we built a job board in one week with JHipster
How we built a job board in one week with JHipsterHow we built a job board in one week with JHipster
How we built a job board in one week with JHipster
 
Nativescript
NativescriptNativescript
Nativescript
 
DevOps for iOS
DevOps for iOSDevOps for iOS
DevOps for iOS
 
Native Script by Sebastian Witalec
Native Script by Sebastian WitalecNative Script by Sebastian Witalec
Native Script by Sebastian Witalec
 
An Angular developer moving to React
An Angular developer moving to ReactAn Angular developer moving to React
An Angular developer moving to React
 
React Native in a nutshell
React Native in a nutshellReact Native in a nutshell
React Native in a nutshell
 
貢獻開源專案 (Contribute to open source project)
貢獻開源專案 (Contribute to open source project)貢獻開源專案 (Contribute to open source project)
貢獻開源專案 (Contribute to open source project)
 
Mobile Architecture Comparison
Mobile Architecture ComparisonMobile Architecture Comparison
Mobile Architecture Comparison
 

Ähnlich wie 既存の資産をXamarinで / Utilize existing assets as Xamarin library

Codestrong 2012 breakout session alloy (mvc) app framework overview
Codestrong 2012 breakout session   alloy (mvc) app framework overviewCodestrong 2012 breakout session   alloy (mvc) app framework overview
Codestrong 2012 breakout session alloy (mvc) app framework overview
Axway Appcelerator
 

Ähnlich wie 既存の資産をXamarinで / Utilize existing assets as Xamarin library (20)

oscon2011fb
oscon2011fboscon2011fb
oscon2011fb
 
CodeStarではじめるRailsアプリのCodeDeploy化
CodeStarではじめるRailsアプリのCodeDeploy化CodeStarではじめるRailsアプリのCodeDeploy化
CodeStarではじめるRailsアプリのCodeDeploy化
 
初心者向けGAE/Java説明資料
初心者向けGAE/Java説明資料初心者向けGAE/Java説明資料
初心者向けGAE/Java説明資料
 
Philly CocoaHeads 20160414 - Building Your App SDK With Swift
Philly CocoaHeads 20160414 - Building Your App SDK With SwiftPhilly CocoaHeads 20160414 - Building Your App SDK With Swift
Philly CocoaHeads 20160414 - Building Your App SDK With Swift
 
Super tools to boost productivity in React dev env!
Super tools to boost productivity in React dev env!Super tools to boost productivity in React dev env!
Super tools to boost productivity in React dev env!
 
Alloy Framework
Alloy FrameworkAlloy Framework
Alloy Framework
 
A Framework Driven Development
A Framework Driven DevelopmentA Framework Driven Development
A Framework Driven Development
 
ARLT_21_ハイブリッドアプリ開発
ARLT_21_ハイブリッドアプリ開発ARLT_21_ハイブリッドアプリ開発
ARLT_21_ハイブリッドアプリ開発
 
Scala at Treasure Data
Scala at Treasure DataScala at Treasure Data
Scala at Treasure Data
 
Enterprise iPad Development Without Notes
Enterprise iPad Development Without NotesEnterprise iPad Development Without Notes
Enterprise iPad Development Without Notes
 
Developing a mobile cross-platform library
Developing a mobile cross-platform libraryDeveloping a mobile cross-platform library
Developing a mobile cross-platform library
 
Xamarin v.Now
Xamarin v.NowXamarin v.Now
Xamarin v.Now
 
Google App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGoogle App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and Gaelyk
 
Alloy - Codestrong 2012
Alloy - Codestrong 2012Alloy - Codestrong 2012
Alloy - Codestrong 2012
 
Codestrong 2012 breakout session alloy (mvc) app framework overview
Codestrong 2012 breakout session   alloy (mvc) app framework overviewCodestrong 2012 breakout session   alloy (mvc) app framework overview
Codestrong 2012 breakout session alloy (mvc) app framework overview
 
Your choices for building a mobile app in 2016
Your choices for building a mobile app in 2016Your choices for building a mobile app in 2016
Your choices for building a mobile app in 2016
 
Greenfield Java 2013
Greenfield Java 2013Greenfield Java 2013
Greenfield Java 2013
 
Android lessons you won't learn in school
Android lessons you won't learn in schoolAndroid lessons you won't learn in school
Android lessons you won't learn in school
 
Cross-Platform Development
Cross-Platform DevelopmentCross-Platform Development
Cross-Platform Development
 
Building Native Apps With Titanium Mobile
Building Native Apps With Titanium MobileBuilding Native Apps With Titanium Mobile
Building Native Apps With Titanium Mobile
 

Kürzlich hochgeladen

CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
anilsa9823
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
anilsa9823
 

Kürzlich hochgeladen (7)

FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
 
9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
 

既存の資産をXamarinで / Utilize existing assets as Xamarin library