Tag: Pluralsight

Programming Stuff

Cross Platform iOS/Android with Visual Studio and C# (Xamarin) Series Complete

I’ve been working with Xamarin a great deal the past several months and am increasingly becoming a fan of the product. The ability to leverage the Visual Studio IDE,  familiar .NET class libraries, and C#programming language to create both Android and iOS apps provides incredible power.

Xamarin_iOS_Android

The beauty of working with Xamarin is that it allows us to share code when doing so makes sense but Xamarin also embraces the unique features of each platform. Xamarin does this by going beyond the many .NET classes that we’re all familiar with to also include .NET classes that expose the features of each platform.

As an example, the features of Android activities are available through a .NET Android.App.Activity class. Similarly, there’s a .NET MonoTouch.UIKit.UITableViewController class that makes the iOS UITableViewController features available. The platform-specific features provided by Xamarin are extremely rich and comprehensive giving us access to most any platform features we’re likely to use.

By having both the standard .NET classes and platform-specific .NET classes we’re able to build our application’s core logic just once, sharing that logic across both platforms, while also having full access to each platform’s unique capabilities and features.

If you’d like to learn more about working with Xamarin, I encourage you to checkout my 2 part course series on cross-platform app development with iOS and Android. Pluralsight just published part 2 of the series this week.

CrossPlatformiOSAndroidVSCSharpPart1_WithLogo

CrossPlatformiOSAndroidVSCSharpPart2_WithLogo

BTW: Although the 2-part series on cross-platform iOS/Android development with .NET/C# is complete there’s still a lot more to content to come. Keep watching for more courses on using Xamarin to create Android and iOS apps.

Programming Stuff

iOS/Android/VisualStudio/C#/Xamarin – It’s Looking Up

As you may know, I began digging into Xamarin at the end of last year. It showed a lot of promise as a great way to create cross-platform iOS and Android apps leveraging the existing Visual Studio and C# skills that so many developers have.

When I first started working with it, I did have some initial concerns as I talked about in these 2 blog posts.

I have to say though, once I got past those initial hurdles, things are definitely looking up.

So far I’m doing mostly basic stuff but overall things are going well.

My two main issues are

  1. Visual Studio seems to occasionally have difficulty attaching to the iOS build server
  2. The Visual Studio Android UI designer doesn’t work as well with RelativeLayout as Android Studio does

Neither of these are show-stoppers though.

In the case of connecting to the iOS build server, in most cases restarting Visual Studio takes care of the problem.

For the designer, the Visual Studio designer is workable and if I want to, I can use the Android Studio designer to do the layout work and then just copy it over to the Visual Studio project.

So that’s a long way of saying…

Using Xamarin within Visual Studio is getting a thumbs up so far.

Keep watching as I push on it harder to see how it does as the problem complexity increases.

If you’re interested in doing iOS/Android development with Xamarin, Part 1 of my Pluralsight course series on the topic just went live today…

CrossPlatformiOSAndroidVSCSharpPart1_WithLogo

Programming Stuff

Android Developers Earn More Money than iOS Developers

According to recent data, senior Android developers average $131,000 per year versus $121,000 for the same skill level on iOS.

That’s some pretty serious cash!

So what are you waiting for … clearly, it’s time to get your Android skills tuned up! 🙂

The full story is available in this Tech Week article.

Checkout Jim”s Android courses on Pluralsight.

Jim's Android courses on Pluralsight

Jim’s latest book, “Creating Dynamic UI with Android Fragments” is now available on amazon.

Creating Dynamic UI with Fragments

Programming Stuff

Android for .NET Developers Series Complete!

Part 4 of my four-part series on Android programming for developers with a .NET background just went live today.

UnderstandingTheAndroidPlatform_WithLogo

 

This course delves into the unique features of the Android platform and how those features and the related components affect the way apps are created.

I hope you’ll check out this course and the whole series if you haven’t already seen it. I think you’ll be happy you did.

Here’s the complete series

Part 1: Getting Started

Android for ,NET Developer Series: Getting Started

 

Part 2: Building Apps with Android Studio

Apps with Android Studio

 

Part 3: Adopting the Android Mindset

AndroidMindsetBanner_WithLogo

 

Part 4: Understanding the Android Platform

UnderstandingTheAndroidPlatform_WithLogo

Programming Stuff

Android for .NET Developer Series: Getting Started

There’s no question that smartphones and tablets have become the computers of choice for most users. Android has been the leading smartphone for some time and now Android leads in tablets as well.

According to Google, nearly 900 million Android devices have been activated. This presents an incredible opportunity for both individual developers and organizations to create software with a reach and impact beyond anything previously possible.

Android development is, of course, very different from the web-based and/or desktop app development most of us have been doing for years. But this difference doesn’t mean we can’t take part in such a great opportunity.

People will often point to Android’s use of Java rather than .NET being the biggest challenge in becoming an Android developer. I disagree. If that were the case, environments like Mono that enable the use of C# and .NET libraries on Android would enable us all to immediately become Android developers. But in my experience, developers with a .NET background who use Mono don’t become effective Android developers any faster than those who take the plunge and use Java. Why is that?

The challenge in creating Android apps is not the programming language, class libraries, or runtime. The challenge in creating Android apps is that it’s an entirely different way of thinking and an entirely different approach to application development.

To be successful on such a different platform, developers need to adopt and ultimately embrace the way-of-thinking of the Android platform.

The new series from Pluralsight, Android for .NET Developers, strives to do exactly that. We focus on guiding developers to fully embrace the tools, language, libraries and, most importantly, mindset of Android development by building on your skills as a .NET developer. Although this series assumes a .NET background, the series is appropriate for anyone with existing programming experience who wants to start working with Android.

In the first course in the series, Android for .NET Developers: Getting Started, we walk through the process of setting up your environment, using the Android development tools, and deploying apps to both real devices and emulators. We talk briefly about the long-standing development environment, Eclipse, but focus throughout the series on the new development environment, Android Studio, announced by Google just a few days ago.

The first course in the series is now available with a new course from the series being released every few weeks. The series is made up of the following courses.

Android for .NET Developers: Getting Started

Android for .NET Developers: Building an Android App

Android for .NET Developers: Android data management

Android for .NET Developers: Adopting the Android mindset

Android for .NET Developers: Embracing the Android platform

I hope you’ll join me in this experience of leveraging your existing skills to empower you to take part in the opportunity offered by the success of Android. At the end of this series, I’m confident that you will have adopted the Android mindset and will be embracing the Android platform.

Android for ,NET Developer Series: Getting Started

Programming Stuff

Android Meetup May 2013 – Android Camera Integration

Thank you to everyone who attended the Central Florida Android Developers Group last night. Special thanks to Echo for hosting the event.

I had the opportunity to talk about how to easily integrate photo capture capability into one’s app by leveraging the built-in Android camera app and Intents.

Last night’s presentation was an excerpt from the first module of my Android Photo and Video Programming course.

You can download the code from last nights discussion. The download includes the Photo capabilities we discussed and also includes Video capability, which we didn’t have time to discuss. Please feel free to post any questions you might have.

For more information on this and other Android-related topics, checkout Jim’s Android courses at Pluralsight.

PSAndroid_216x155

Programming Stuff

Android Photo & Video Programming

I am super-psyched about my latest Pluralsight course now being live and available: Android Photo and Video Programming

I’m so excited about this course going live and to make it even better, the Pluralsight blog even quotes me on my excitement about this course.

With Smartphones, access to the camera is so pervasive. Don’t miss out on providing the richest possible user experience by not including camera behavior in your apps.

More posts about Android camera behavior and this latest course to come

Programming Stuff

Android Photo & Video Programming Course Almost Ready

For the past month I’ve been working on my next Pluralsight course: Android Photo & Video Programming. … I just finished recording the video for the last module.

Still have some more work to do editing the videos, preparing the course assessments, etc. but the hard work is done.

I have to say, this has been one of the most fun courses to write I’ve done. There’s something cool about taking control of the camera, rendering the live preview directly within one’s app View hierarchy and snapping a picture or recording a video.

Something I had thought was going to be a minor point that I ultimately found really interesting was controlling zoom.

The basic zoom-in/zoom-out stuff was just the beginning. Controlling the out-of-band smooth zoom and managing the callbacks that occur during the zoom process were really fun.

The course also ended having much more information than I had originally expected. I had originally spec’d the course out for 5 modules but ended up with 7 jam-packed modules – here they are…

  • Getting Started
  • Directly Accessing the Camera
  • Viewing the Camera Preview Display
  • Taking a Picture
  • Camera Control
  • Recording Video
  • Media Store

If all goes as expected, I’ll have everything turned in to Pluralsight early next week and the course will be live a short time later. I’ll be sure to let everyone know when it goes live.

Here’s a list of Jim’s other Pluralsight Courses…

PSAndroid_216x155