Xamarin在其官方博客上宣佈三個跨平臺組件:Xamarin.Mobile、Xamarin.Social和Xamarin.Auth更新而且開源。html
這些組件也能夠在Xamarin組件商店下載,提供如下功能:git
查看每一個組件更多詳細信息: Xamarin.Mobile, Xamarin.Auth和Xamarin.Social.github
爲了演示使用這3個組件建立Apps是如此簡單,提供了一個簡單App(SoMA)示例。該App實現拍照而後分享到社交媒體,同時使用Google地圖來標記位置的功能。示例程序綜合應用了三個組件:使用Xamarin.Mobile訪問照相機和地址位置服務(location services);使用Xamarin.Social(結合Xamarin.Auth)集成Facebook、Twitter、Flickr、App.net……全部這些只經過幾十行代碼實現。示例源碼可從github下載。
安全
這是部分截圖,提供一個自定義的數據輸入表單。網絡
下面這段代碼,能夠工做在Xamarin.iOS、Xamarin.Adnroid、Window Phone和Windows 8this
var locator = new Geolocator { DesiredAccuracy = 50 }; // new Geolocator (this) { ... }; on Android var position = await locator.GetPositionAsync (timeout: 10000); Console.WriteLine ("Position Latitude: {0}", position.Latitude); Console.WriteLine ("Position Longitude: {0}", position.Longitude); location = string.Format("{0},{1}", position.Latitude, position.Longitude); LocationText.Text = location; // on UI
使用Xamarin.Socail將圖片發送到Facebook獲取其餘社交網絡變得簡單,下面的代碼片斷能夠在iOS和Android運行:編碼
// 1. Create the service var facebook = new FacebookService { ClientId = "YOUR_CLIENT_ID", RedirectUrl = new System.Uri ("http://www.facebook.com/connect/login_success.html") }; // 2. Create an item to share var item = new Item { Text = "Xamarin.Social rocks!" }; item.Images.Add(new ImageData(fileName)); // 3. Present the UI on Android var shareIntent = service.GetShareUI (this, item, result => { // result lets you know if the user shared the item or canceled Console.WriteLine(service.Title + " shared"); }); StartActivity (shareIntent); // 3. Present the UI on iOS var shareController = facebook.GetShareUI (item, result => { // result lets you know if the user shared the item or canceled DismissViewController (true, null); }); PresentViewController (shareController, true, null);
更重要的是:spa
全部這些組件開源,能夠在github上查看代碼:Xamarin.Social, Xamarin.Mobile and Xamarin.Auth。
.net
相信對於移動跨平臺開發者來講,這是一個很是棒的新聞,有兩個緣由:第一,你能夠看到咱們如何經過跨平臺的方式封裝特定平臺的特性(如地理位置);第二,由於開源,你能夠擴展類庫以支持新的硬件特性或社交媒體。code
但願你喜歡使用這些組件和在編碼中探索新的樂趣!
相關閱讀: