Cross Device Devlopment for Windows Devices - multiple sdk's? - c#

Couldn't find a direct answer for this...would like to get into windows device programming for some workplace solutions. I jumped onto google and typed in "Windows SDK" and I got found there are separate SDK's for Windows Phone 8, Surface RT, and Windows 8.
I thought to myself "this can not be true" so I hit the forums...haven't found anything relevant.
Does ANYONE know if there is an all-in-one solution for windows 8 programming that encompasses all devices? If I have to develop the same app 3 times to accommodate all three devices I am going to have to advise upper management against this decision.

I think this is exactly what you need.
Windows Phone 7/8 and Windows 8 Co-development.
You should separate you code, move platform independent logic to PCL.
You'll have to develop different UIs for WP and WinRT anyway.

Related

Windows phone 8.1 Silverlight app on windows 10 tablet

I have a Windows phone 8.1 Silverlight application.
Now I need to make it run also on windows 10 phones and tablets. I checked and the app is available on windows 10 phones, even if deployed for windows 8.1 but it seems like I can't install it on windows 10 tablets.
My question is pretty simple:
Is there a "fast way" for converting the 8.1 project to UWP?
Can I deploy my app for tablets without re-writing all the code?
Thanks all
This question is oddly similar to one that I answered just yesterday. It's not really a duplicate so I will restate the answer here along with a link to the other question (1)
Unfortunately there is no easy and fully automated way to port your Silverlight app to UWP mostly because the API footprint has changed and updated between the 2 platforms. There are a lot of similarities but also a lot of breaking changes that require some manual changes.
here is Microsoft's guidance for this particular upgrade path.
From the article above:
Note This guide is designed to help you port your Windows Phone Silverlight app to Windows 10 manually. In addition to using the information in this guide to port your app, you can try the developer preview of Mobilize.NET's Silverlight Bridge to help automate the porting process. This tool analyzes your app's source code and converts references to Windows Phone Silverlight controls and APIs to their UWP counterparts. Because this tool is still in developer preview, it does not yet handle all conversion scenarios. However, most developers should be able to save some time and effort by starting with this tool. To try the developer preview, visit Mobilize.NET's website.
[1] Can a Silverlight out-of-browser app be converted to Universal Windows Platform (UWP) app?

Silverlight to WINRT or Silverlight to Universal

I have a Windows Phone 8.1 Silverlight application which is in the store now. Since i see that Microsoft is moving all the attention towards WINRT and Universal Apps, i suspect that there will be limited or no support for Silverlight Apps in Windows 10.
There might be a tablet project that i might roll out for the same project in the future. So i am in the dilemma to convert the Silveright projects in my solution to WINRT or convert them into Universal Apps.Also, i hear that converting to Universal projects are pretty hard as well.And I understand that the bulk of the work will be in porting the UI to Hub Style UI.
Any ideas? Comments on the best approach to take here.
A WinRT app is a Windows only app (not for Phone). Other than that, WinRT and Universal apps are quite similar. They have the same namespaces, classes, controls... almost everything. You can use many WinRT libraries in Universal apps without any problem. And so, porting to them is generally the same, too.
Windows Store and Windows Phone apps generally need different UI anyway, so you would have to work on that, no matter what you do.
One difference is that a WinRT app would work on Windows 8.0 and up, and a Universal app would require Windows 8.1 (or WP 8.1 for phones). Actually, a Windows 8.1 app IS a Universal app. Just like a Windows Phone 8.1 app (not the Silverlight variation) is a Universal app.
I'd recommend porting to a Universal app as you would get used to working with these apps, and they work on both platforms (Windows and Phone). For any future project, that's the way to go.
In the company I work for, we switched to Universal apps a few months ago. Figuring out what UI we would use on both platforms and how to do it properly, as well as porting our existing libraries did take some time (not too much), but now making a new app and supporting both platforms is very easy. So, for me, that's the way to go.
It is quite unlikely that Microsoft will stop supporting Silverlight Apps in the Windows 10 version for phones. Even WP8.1 still supports XNA Games from the WP7.0 era.
Depending on the APIs you are using in your libraries the majority of changes when converting from Silverlight to WinRT will be on the UI side, e.g. if your Silverlight App already uses the LocalStorage-APIs instead of the IsolatedStorage-APIs that won't even have to be changed.
My advice would be the following:
evaluate wether all functionality you need is supported in Universal Apps (some functionality is currently only available in Silverlight Apps)
evaluate wether the actual APIs you are using are supported in Universal Apps or need to be replaced (IsolatedStorage => LocalStorage, etc.)
Armed with that knowledge I'd guess you will be able to better plan on when to port your App to the new APIs. If a tablet version is likely in the future and all required APIs are supported in the Universal App Model porting sooner will likely require less effort than porting later.

Can I easily convert windows store desktop app to universal or phone app?

As we know there is posibility to create three types of windows 8.1 applications: desktop, phone, and universal. So, I have a win 8.1 application which was obviusly built for desktop, but I wanna change its type to phone or universal, how can I do it?
Sounds like you are moving towards cross platform development. I recommend using a java base library like libgdx. My app runs on Windows,Macs,Android phones/tablets, and Iphones/Ipads. Its all one code base but for many different platforms. I've very happy with the results. I'm mainly a c# dev so there was a small learning curve moving to java. I dont know if there is something similar that will run on windows phone. Good luck.

How to identify third party hardware devices for credit cards and their APIs for Windows 8 Tablet?

I am new to Windows 8 tablet. My question is how to identify third party hardware devices for credit cards and their APIs that need to integrate into Windows 8 Tablet Type for Onsite Studio App?
Which type of languages support this API for Windows 8 tablets?
By Windows 8 tablet, I presume you mean a metro/modern style application? If so you'll be limited using Windows 8 for this. Instead I would highly recommend looking at the API's provided in Windows 8.1. Using the newer APIs you have three options:
1) Windows.Devices.PointOfService - which is the port of POS.NET across to the WinRT namespace. This basic API's allow you to access POS peripherals such as MSR readers. Example code can be found on: http://msdn.microsoft.com/en-us/library/windows/apps/bg182882.aspx#two
2) If you want to use NFC-based cards (tap and pay) - theoretically you can use the WinRT port of the Smartcard framework. This isn't as straightforward as the above, and requires some understanding of how smartcards work. http://msdn.microsoft.com/en-us/library/windows/apps/windows.devices.smartcards.aspx
3) You can assess devices such as Square which use a 3.5mm audio jack. WinRT provides functionality to access audio devices, and you'll need to convert the incoming WAV data into bytes which represent the MSR information. Again not so straight forward but is a commonly requested approach.
All three of the above solutions are independent of language (C#/C++/JS), but hopefully the above APIs point you in the right direction.

Support for XNA in WP8?

After watching a little bit of the summit keynote I kind of heard conflicting reports about it, but is it official that XNA is being dropped for WP8? I'm guessing since the future version of WP supports previous generation of apps that this is probably not true.
If it is though is using C# even an option for games or is C++ with DirectX the only way to go?
the official wp7dev twitter account had this to say too
"XNA Framework apps are fully supported in WP8. The new WP SDK will support building XNA Framework games for both WP7.x & for WP8"
https://twitter.com/wp7dev/status/215513026374270977
Personally given the lack of XNA updates or information and the lack of any Metro support on windows 8 I'm staying a little skeptical until I see an SDK and the publishing rules.
Mary Jo Foley had this to say about that:
Microsoft officials have said the XNA tools/runtime environment used primarily by game developers isn't supported on Windows 8. On Windows Phone 8, XNA is "supported," so existing Windows Phone games will run. But Microsoft's advice to phone developers going forward, just like it is for Windows 8, is to use native code, meaning C and C++, to write games.
As the public WP8 SDK is now available, I can confirm that you cannot develop XNA apps for the #WP8 platform directly. You can only target the WP7 platform with your XNA apps and they will run on WP8 devices just fine.
I'm sure it's too early to speculate on this at this point, we'll see when the SDK is released. But from what I've seen so far - I would say yes, XNA might not be officially supported WP8 and onwards (read - new features will probably only be available via the DirectX interface, but existing features will continue to be supported). However, according to this thread, games that use Monogame to run on Windows 8 metro will pass certification. So in one way or the other, the platform will not die.
Edit: I just noticed this tweet from Shawn Hargreaves: Windows Phone 8 runs all 7 apps including XNA ones. We're adding new features (native code, D3D) not taking away old ones
I've been working on and off on an XNA game that I had started with VS2010 & WP 7 SDK, and later upgraded to 7.5 (Mango). I loaded up that project in VS2012 and the WP8 SDK and it ran just fine, compiled with no errors and ran smoothly.
As previously stated, XNA projects in VS2012 and the WP8 SDK can only target the WP 7.1 platform. On the upside, all phones running WP 7.5, the upcoming 7.8 and WP8 will run your game without any issues. From that point of view, XNA is fully supported in the WP8 SDK, on WP8 devices, but these WILL NOT be WP8 projects.
By not being WP8 projects, the downside is that you CANNOT use WP8-exclusive features, such as:
In-app purchasing / micro-transactions (this one hurts XNA devs the
most)
Your games will always be 800x480 since you need WP8 projects to support higher resolutions. Your XNA games should automatically scale up when run on devices with a higher res
Exclusive WP8 networking features & APIs, including Bluetooth and NFC
Speech and voice recognition APIs
Your XNA game cannot register a protocol extension for app-to-app communications
New Live Tile templates
The dev highlights for WP8 are on the wpdev blog at http://blogs.windows.com/windows_phone/b/wpdev/archive/2012/11/05/windows-phone-8-developer-platform-highlights.aspx.

Categories

Resources