Winter Sports a showcase cross-platform .NET app available for iPhone users

Winter Sports, a comprehensive app for skiers and snowboarders is released for iPhone, powered by Microsoft cloud.

https://itunes.apple.com/us/app/winter-sports-tracker/id927727475?ls=1&mt=8

Winter Sports is an official app of more than 32,000 Professional Ski Instructors of America and American Association of Snowboard Instructors (PSIA-AASI), an educational organization teaching seven million ski days per season in the US alone. This cross-platform sophisticated app includes ski and snowboard-specific GPS tracker, snow reports and resorts maps from 2000+ ski resorts worldwide, as well as training, workouts and content for skiers, snowboarders, mountaineering enthusiasts and snow junkies.

FEATURES

GPS Tracker
Snow Reports and Resort Maps
Step Counter
Friends and Social
Training and Workouts
Action Photos
Ski and Snowboard Analytics
Worldwide leaderboards
Powered by Professional Ski and Snowboard Instructors of America

More about the app…

Cross-platform apps are becoming very popular with the users, who want to keep their data in sync on iPhone, Android and Windows. Also in line with Microsoft open source . NET Winter Sports became very popular on Windows Phone, grew to millions of users, and now reaches iPhone and Android markets. This app can easily be a showcase of Microsoft’s recent announcement for open-source .NET: a sophisticated native app entirely built with .NET and Xamarin.

Ultimately, with cross-platform apps, such as Winter Sports, Microsoft wins because the app is using Microsoft’s massive cloud technology called Azure, users win because they can use their favorite mobile device with the app, and developers win because the app works on all major markets: iPhone, Android and Windows. Developers also win, because they only develop one source code, with close to 95% code reuse for Windows, iOS and Android, according to Winter Sports developers.

Web Site: http://winter-sports.co

Using Hyper-V and Visual Studio with Android x86 KitKat v4.4

Androidx86 is a project hosted on http://www.android-x86.org/. The purpose of the project is porting Android open source project to x86 platform, formerly known as “patch hosting for android x86 support“. The original plan is to host different patches for android x86 support from open source community.

Developers can actually use Hyper-V hosted Android x86 for testing and app development. Hyper-V is built into Windows 8.x and works much faster than Android emulators. In this walkthrough which requires about 10-15 minutes we’ll set up Android x86 in Hyper-V and deploy a Visual Studio Xamarin app to the virtual machine.

Overview

1. Deploy Android x86 in Hyper-V (3 minutes)
2. Deploy your APK from ADB or Visual Studio

Setting up Android x86 on HyperV

Installing Android x86 on Hyper-V is very easy: you create a VM, download Android x86 ISO from http://www.android-x86.org/download and install Android in your VM, like a regular Linux distribution. I used the latest KitKat version: android-x86-4.4-r1-iso Below are step-by-step instructions.

clip_image002

1. Start Hyper-V manager (in Windows 8.x Window-Q Hyper V), then create a new VM in Hyper-V Manager (New / Virtual Machine…)
clip_image004

2. Download Android x86 ISO from http://www.android-x86.org/download

3. Attach ISO to your VM (Media/DVD Drive/Insert Disk…) and select Android x86 ISO

4. Set up Android as you would a Linux distribution: it’ll prompt you to create and format a partition, install GRUB boot loader etc.

clip_image006

clip_image008

clip_image010

clip_image012

5. After the installation, Android x86 runs in your VM. You can now eject the ISO and let the Android boot.

Developing apps using Android x86 in Hyper-V

Android x86 running in Hyper-V is no different from any other Android device or emulator for ADB or Visual Studio. First we need to unlock Android x86 instance for development, then connect our Windows PC to it.

1. In Android x86 press Alt-F1 for command prompt, then type netcfg, which will give you an IP, e.g. 192.168.1.10, press Alt-F7 to go back to graphics shell

2. In Windows PC start ADB command prompt (provided with Android SDK) and type:

adb connect 192.168.1.10

3. If you use Visual Studio for development, for example for Xamarin apps, you can now select Android x86 virtual machine running in Hyper-V

clip_image013

4. Now you can deploy your APK from any file with adb install… or from Visual Studio directly to Android x86 emulator in Hyper-V.

Push Notifications for Xamarin.iOS

Configuring Notification Hubs for Xamarin.iOS apps

Some user devices are iOS-based, some Android, some Windows Phone, and the list goes on. Each of the native platforms has its own push notification framework and backend service. Azure Mobile Services allows the developer to configure a single Notification Hub (based on Microsoft Azure Service Bus Notification Hubs) through which notifications may be sent. The notification goes to each user via the correct push service according to her device’s requirements. Broadcast to millions in consumer scenarios, to tagged groups, to individuals with the same ease.

To use notifications hub from Azure Mobile Services with your iOS apps, you need to generate a certificate, register your iOS app for push notifications, save your certificate to a file and upload to Azure Mobile Services Management Portal, into your Notifications Hub. The whole process of generating a certificate, and configuring Azure Notification Hubs for use with iOS apps here, which is fairly extensive and has some screenshots.

Code snippet: Xamarin.iOS app using Push Notification Hubs

We use Xamarin Forms for best cross-platform portability: we can re-use the same UI and most of the middle tier in our Android project as well.

1. In Xamarin Studio on your Mac, or Visual Studio on your PC, create a new Xamarin Forms project. We will need to use WindowsAzure.Messaging from GitHub. Compile WindowsAzure.Messaging.dll and reference it in your project. This assembly provides iOS bindings for Notification Hub:

clip_image002

2. For Xamarin.iOS project, we need to make some changes in the AppDelegate.cs file. First, start by adding:
SBNotificationHub _hub;

public const string _azureConnection = “<Azure connection string>”;

public const string _notificationHubPath = “<Azure hub path>”;

3. Next in FinishedLaunching method add this to register for remote notifications in your app (providing several types of notifications):

UIApplication.SharedApplication.RegisterForRemoteNotificationTypes(

UIRemoteNotificationType.Alert |

UIRemoteNotificationType.Badge);

4. Add the following methods to handle registration and notification processing.

public override void RegisteredForRemoteNotifications(UIApplication application, NSData deviceToken)

{

_hub = new SBNotificationHub(_azureConnection, _notificationHubPath);

_hub.UnregisterAllAsync (deviceToken, (error) => {

if (error == null)

{

NSSet tags = null; // create tags if you want

_hub.RegisterNativeAsync(deviceToken, tags, (errorCallback) =>

{

// handle errors here

});

}

else

{

// handle errors here

}

});

}

public override void ReceivedRemoteNotification(UIApplication application, NSDictionary options)

{

if (null != options && options.ContainsKey(new NSString(“aps”)))

{

NSDictionary aps = options.ObjectForKey(new NSString(“aps”)) as NSDictionary;

string alert = string.Empty;

if (aps.ContainsKey(new NSString(“alert”)))

alert = (aps[new NSString("alert")] as NSString).ToString();

if (!string.IsNullOrEmpty(alert))

{

UIAlertView avAlert = new UIAlertView(“Notification”, alert, null, “OK”, null);

avAlert.Show();

}

}

}

We can now register for hub notifications and receive notifications, displaying alerts in our Xamarin.iOS apps.

Reference:

Get started with Notification Hubs with Xamarin.iOS
Xamarin.iOS: Push Notifications in iOS

Native Cross Platform UI Ideas for iOS, Android, Windows Phone with Xamarin

For many developers using C# and coming from the modern UI apps on Windows, developing cross-platform UI design with the best usability for Windows, iOS and Android presents an interesting challenge. First, they feel like they are coming to a more ‘traditional’ UI: let’s face it Microsoft team has created some very advanced and neat design concepts with the modern apps: with Modern design language, minimalism, panorama, motion animations and pivot. How do you translate that into iOS and Android?

Luckily, Xamarin team has done a lot of research porting and thinking through many of these ideas. Xamarin Forms are based on XAML and work on iOS, Android and Windows Phone natively. Here’s some interesting ideas to keep in mind building a cross platform app with Xamarin Forms:

Is cross-platform UI achievable and does it work fast and look native? Thanks to Xamarin team’s efforts the answer to this is yes! You can write UI code that will look and feel native with native speeds on iOS, Android and Windows Phone.

Things to remember: Forms markup uses XAML, but Xamarin team chose to use objects from iOS and Android stack. So instead of StackPanel you get StackLayout, TextBlock is Label. Attributes also resemble those of Android AXML: Visibility becomes IsVisible (we actually like that, it eliminates a converter which otherwise needs to be used on each boolean property). Background color property becomes BackgroundColor, Foreground property becomes TextColor, ForegroundColor etc depending on the context. In other words: instead of cut and paste from Windows Phone you need to really update your XAML. Which makes a lot of sense, Xamarin team chose to use Android/iOS UI elements in XAML.

Xamarin also figured out a very smart strategy wrapping native controls, while maximizing code re-use. On the screenshot below, Xamarin Forms maps control renders as a native Android, iOS and Windows Phone map on each platform.

 

Source: Xamarin: Controls Gallery

Active Fitness with SensorCore – Pedometer + GPS + Social + Action Photo + Music all in one free app

DOWNLOAD new version

Do you need to spend extra bucks on pedometer when you already have a phone? Now with SensorCore technology in latest Windows Phone 630 and other models, your phone can work as a pedometer and count your steps, whether walking or running 24×7. With apps like Active Fitness which already has millions of active users, adding step counter in addition to GPS Tracking adds a battery efficient way and yet another dimension to measuring your sport performance.

wp_ss_20140622_0003

 

Active Fitness unites millions of active users in a fun friendly social sports app and network. Now with new Lumia 630 devices and SensorCore technology, Active Fitness adds battery friendly Pedometer function. Simply take your phone with you and it’ll automatically count steps whole day long! Very little battery consumed. Active Fitness has also been redesigned to benefit from new features of Windows Phone 8.1, you’ll immediately notice many friendly improvements for an already beautiful app. Other features include: multiple activities from a comprehensive library, music, action photos, GPS tracking, goals, training module powered by professional instructors and more!

 

image

Detailed charts of your activity

Active Fitness allows you to drill from monthly to weekly to daily view and then more into every split of your run! Windows Phone brings a clean fresh consistent design and everything about this fitness app looks great.

1

 

DOWNLOAD

Microsoft and Nokia at National Academy 2014

Microsoft and Nokia Lounge at PSIA-AASI National Academy 2014

PHOTOS, even more photos…

DOWNLOAD THE APP: Winter Sports

For the second consecutive year, it is becoming a tradition that Microsoft and Nokia participate in the outdoor educational events. One of these events is National Academy, a week-long event in Snowbird, Utah, at an altitude of 10,000ft gathering top ski and snowboard instructors from North America. PSIA-AASI is the nation’s oldest snow-sports educational organization, uniting more than 32 thousand professional ski and snowboard instructors. In 2013 Microsoft and Nokia teams for the first time participated in this event with a launch of Winter Sports, a ski and snowboard sports tracking app for Windows Phone and Windows.

This year highlights:

· Microsoft/Nokia Lounge

· Direct Verizon Sales: sold many high-end Windows Phones on-site

· XBOX ONE + fitness and games

· Nokia Lumia Icon, 1520, 1020, 520

· Nokia Accessories (Wireless Speakers, gadgets, wireless chargers, batteries)

· 3,000,000+ vertical ft tracked by the  app

· 50+ Windows Phones used on the mountain every day

clip_image002_thumb[1]

Outdoors Industry and Windows Devices

This year, we expanded our collaboration with the organization, by creating an on-site Microsoft/Nokia Lounge, equipped with Xbox One, fitness apps and games, and bringing 50+ Windows Phone devices: from smallest Nokia Lumia 520, to top of the line Nokia Lumia 1020 phone with 41 megapixel camera, Nokia Lumia Icon and large 6″ screen Nokia Lumia 1520 phablet, as well as Microsoft and Nokia tablets, such as Microsoft Surface. Each instructor could use Winter Sports app, tracking activity on the mountain, the app uses Microsoft Azure cloud to store tracking information securely and reliably (also see Microsoft case study).

clip_image004_thumb[1]

Windows Phone apps

This event helps Microsoft and Nokia to collaborate with top sports and outdoor organizations, having devices used in real-life mountain high-altitude conditions, taking professional grade pictures and sports activity tracking and gathering feedback from top North American ski and snowboard instructors, including National Team champions. Also check out these apps for Windows Phone and Windows:

Winter Sports

Active Fitness

ELAN Skis

Rollerblade® Inline Skates

Microsoft/Nokia Lounge at 10,000ft

clip_image006_thumb[1]

Microsoft/Nokia Lounge at 10,000ft in Cliff Lodge was set up for the whole week to present latest gadgets from Microsoft and Nokia, and became an Xbox One playground. For one week we entertained instructors with latest fitness and sports apps and Xbox games, demoed latest Windows Phones and Windows tablets, as well as Nokia accessories, such as wireless speakers, wireless chargers, headphones, phone batteries and more.

During the trade show we also had Verizon on site, selling Windows Phone devices. After ski and snowboard instructors were introduced to Winter Sports app, some were interested in purchasing top of the line Lumia Icon devices with unbeaten screen resolution and 20 megapixel camera. We certainly recommend these devices for ski instructors, because of their quality, reliability, great camera resolution, built-in action shot features and great outdoors apps.

Educational On-Snow Events

Some of Microsoft’s own team are certified ski instructors and participated in the on-snow educational groups. We skied Snowbird and Alta, tracking skiing with Winter Sports app: in one week the app tracked 3,000,000+ vertical feet, tracking supported by Microsoft Azure cloud technology. Anyone had an opportunity to try one of several Windows Phone models. Great thing about Windows Phones is that they support a variety of form factors and features: from best camera phone in the world: 41 megapixel Lumia 1020, to a small footprint very inexpensive Lumia 520, to 20 megapixel Lumia Icon device.

In-class events and trade shows

During the National Academy we had a number of in-class training events and a trade show. During the trade show we had a joint Microsoft/Nokia/Verizon booth set up, with devices available for sale from Verizon. A number of high end Windows Phones were sold and activated at Verizon booth.

Next Year

We are planning to continue working with National Academy and bring the excitement of technology and new devices to the world of outdoors.

clip_image008_thumb[1]

On the photo above: a special WINTER ski named after the app is signed by National Team coaches at National Academy. The right ski was signed at 2013 National Academy. The left ski was signed this year. I guess next year we need to make new skis J

PHOTOS

even more photos…

DOWNLOAD THE APP: Winter Sports