The Windows Phone 8.1 SDK was released with a bang at the beginning of April 2014 and the OS update arrived later that year. It brought lot of new to the Windows Phone ecosystem, but also caused a noticeable disarray to the Windows Phone community and to the community of developers as well. Some features in WP8.1 are definitely great and improving, some are just worrisome, and some features in WP8.1 SDK are simply missing, even though they were in WP8.
Let's take a look on the WP8.1 SDK nine months after the original release, what improvements it brought and also what's still not there.
In the first part of the miniseries Windows Phone 8.1 SDK, 9 month later I'll summarize in few bullet points the most interesting features of this OS update and especially what's new for developers.
Let's imagine this typical scenario: You are an indie developer or a company developing apps in Visual Studio. You have already developed and use several own useful libraries across various projects. Right now you are maintaining each of these libraries in separate Git/TFS repository and adding these libraries as submodules to your projects. Because these libraries are hierarchically dependent one on another, it's quite hard to maintain the dependencies and changes properly. You've thought about packaging these libraries as separate NuGet packages, but adding them to public nuget.org gallery is not an option since these libraries contain private knowhow.
In this article I'll demonstrate, how to deploy your own NuGet Server on free instance of Azure Website, secure it with Basic HTTP Authentication, setup this new server so it can be used from Visual Studio, easily create automatic PowerShell scripts for deploying these libraries as NuGet packages to your server, use these NuGet packages in your projects and also how to achieve all this in just couple of minutes!
As a part of the "Preview for Developers" program Microsoft just recently released the first larger update for Windows Phone 8.1 called just "Windows Phone 8.1 Update" with OS version number 8.10.14147.180. The original Windows Phone 8.1 was 8.10.12359.845.
According to MSDN blog article this update brings primarily these new end user features:
- Cortana is now available for couple of new countries
- Live Folders - native implementation of app folders on the Start screen
- Option to simply select multiple SMS messages for deleting/forwarding
- Apps Corner, Private VPN, Store Live Tile, Internet sharing via Bluetooth, customizable snooze time for Alarms and more.
But probably the most interesting feature, that might be part of this update as well, is is the support for notification on accessories, typically on smart watches and other wearables. The best hint for this functionality is already in the phone settings - the new "accessory apps" section.
The second hint is the new available API, that'll be shown in the rest of this article.
Working with files is one of the most common tasks when developing any Windows Phone or Windows apps. In this mini-series of articles I'll show you available APIs in all Windows Phone and Windows versions, caveats when doing task such as checking if specific file exists, getting target file, reading writing data from/to files and also how to effectively extract data from ZIP files, and more.
In the first part of this series I'll discuss available File IO APIs in Windows Phone 8, 8.1 Silverlight, 8.1 XAML, Windows 8 and 8.1 platforms and benchmark all available methods for testing, if target file in Local Folder exists, or not. To my great surprise, the performance of methods in StorageFolder API is dramatically different across different platforms and it's not a good idea to use single approach everywhere.
In Windows Store apps for Windows 8.1 there are four basic input methods - touch, mouse, stylus and keyboard. In most of scenarios these input methods are all you need, but in case you want to offer more natural experience for controlling games on Windows 8.1, you can also add support for Xbox 360 and Xbox One controllers.
In this dev article I'll show you, how to use in any C#/XAML app or game for Windows 8.1 the Xbox 360 Controller API, how to detect presence of such controller and how to poll for current state of all buttons.
In my previous article I've shown a new way, how can we use Json file as a data source for design-time data in new Windows 8.1 apps. Luckily, it's possible to use similar approach in Windows Phone 8 apps as well!
When designing Windows 8.1 apps it's essential to have design-time data available in some way, so we can actually see how the app will look like.
Iris Class described in this great article, that there are several ways, how to achieve this:
- Using XAML – Design time data source set in XAML
- Using a ‘standalone’ data source class – Design time data source set in XAML
- Conditional data source – Design time data source set in code
But what I missed in this aticle is probably the most interesting way, how to use design-time data in Windows 8 apps - using external Json files. Here's a short guide, how to do it:
Just today I've published one of my first Windows Phone application Bugemos as Open Source on GitHub.
The app, that I created and published to Windows Phone Store back in late 2011, is just a simple RSS reader displaying latest comic strips from the web http://www.bugemos.com. The reason I'm publishing it as Open Source is that I think it might give a helpful insight to starting WP developers and to the community as well. Note the published source code is not the exact one, that was used in the currently published app. The app was updated from WP7.5 to WP8 and also instead of original AsyncCTP it now uses current Microsoft.Bcl.Async NuGet package.
So let's see, how is the application designed and what it does.
In this article I describe new developer APIs available in Windows Phone 8 GDR3/Update 3, at the time of writing this article the latest official version of Windows Phone OS.
First of all, GDR3 brings officially no new API, only minor changes in OS behavior, support for 1080p devices, devices with 2GB of RAM, couple of new Uri schemes and that's basically it. But what you might have noticed last week, Pedro Lamas described in his article Disabling screenshot functionality in a Windows Phone app one undocumented new property
After reading that article I was wondering, if there are another new APIs available in the GDR3 update, that can be accessed by reflection, so I stared my analysis.
In my third article of what to expect from Microsoft in 2014, I'll try to predict what we might see in the Xbox One ecosystem in the next year.
In my previous two articles about what to expect in 2014 in Windows Phone and Windows 8 I've already summarized my thoughts about these two platforms. I've been working with both these platforms for some time and I published already several nontrivial apps, but I've actually never written anything for any Xbox console (not counting my two XNA games for Windows Phone). I've also got my first Xbox 360 only about year ago, but the thing with Xbox One is different.
Let's start first with the current status of Xbox One ecosystem. Xbox One was released just 1 month ago in November 2013 with about 20 games released at the start, including several exclusive titles. Right now there is no option available for Indie game or App development. Program for Indie game developers ID@Xbox was already announced and smaller game studios or even independent developers can apply with a chance to get dev kit "sometime in 2014". All we know regarding this is probably on that page, nothing more. Note I'm not going to discuss the future of ID@Xbox program and indie game development on Xbox One in this article. I'm no game developer and as we know, the game development headed always in a bit different direction than app development on Windows, Phone and Xbox 360 platform.
Beside the ID@Xbox program, there nothing we know right now about possible indie App development for Xbox One. Although there are already some "major" apps on Xbox One, there is no public information how to create similar apps, even no information about used framework. As far as I know these are just modified web pages running on Xbox one with some private API for accessing Xbox One features.
Since the release of Xbox One there were only some rumors about possible indie app development, but just couple of days ago Microsoft announced the new Build 2014 conference in April 2014 and here is why I think we might get similar app Store on Xbox One just like we have on Windows 8.1 today...