What type of component should be used to write SDK to support on windows 8.1 and windows universal devices - windows

I have a requirement to develop a SDK(kind of class library) for Windows app supporting Windows 8.1 and Windows universal apps. Please suggest me the right type to choose for this.
At first I was thinking to use Portable class library supporting these 2 platforms but later on some researching found out Windows Runtime component(Universal apps) and read that using this would support app build using non managed code too(C++, JavaScript) which kind of seemed good for me. but when I try to refer this into a windows 8.1 app it says not supported, Do I need to build a separate windows runtime component again for this(I see Windows runtime component(portable for universal windows 8.1 template)?
Is there any chance I could build this without the need of having 2 projects for different platforms?

I've been able to successfully use a WinRT component targeting Windows 8.1 in a Windows 10 app before, but it might have changed and YMMV. Try it out.

Related

Windows 8.1 and Windows 10 API changes issue

I have a full fledged app built for windows 8.1...
Through my research, I discovered that the api changes between 8.1 and 10 is nt that much and an app built for 8.1 will work on 10..
So my question now is will a windows 10 app work on windows 8.1?
If yes, how can I go about it?
I've created a report on changes for WinAPI 8 vs WinAPI 10 that may help you to discover differences in details. It's available on this page. The report is generated with the help of the ABI-CC tool.
Since apps built for WP8.1 don't work on WP8, then I doubt that Windows 10 Mobile apps will work on WP8.1. As far as I'm aware, there are more differences between those two systems' API than between 8.1 and 8.0
Btw, are you asking about the desktop systems or the mobile ones (as the tag you used suggests)?

Convert windows phone application to universal one

Recently Microsoft announced ability to create universal applications in Visual Studio 2013. Is there any easy way to convert existing Windows Phone 8 application into universal or i have to create new project and properly move the code manually?
It is not about converting a project type or moving code. You will have to port your app from one runtime to another. This is because the Universal project templates use the Windows Runtime APIs where as your existing Windows Phone 8 application uses the Silverlight APIs.
Windows Phone Store apps use the same app model and UI framework as Windows Store apps do, and they use the Windows versions of common features such as background tasks. You will still be able to reuse a lot of your existing code, but these differences mean that it really is a porting exercise, more than just an update, to move a Windows Phone 8 to the new app model.
(Source)
There are some features that are available in Windows Phone 8 for which there is no Windows Phone Store (Universal apps) equivalent. See more here.
The right-menu option is "Add Windows 8.1...". That will add Windows 8.1 support and add a Shared section to both projects so you can share code between then.
In your solution, right click your Windows Phone application and select "Add Windows 8.1..." and follow the prompts.

Windows RT .NET compatibility

I just need to know if I need the same framework to develop an app for Windows 8 for Tablets (Windows RT) and PCs or the tablet one still uses .NET compact framework.
The only type of applications that run on Windows RT (ie. the Tablet/ARM version of Windows 8) are Windows Store Apps. These are full-screen applications that run on top of the WinRT API.
You can use a subset of .NET 4.5 on these devices, and use XAML to build your interface just like you would with WPF on the desktop.
You can read more on MSDN - .NET for Windows Store apps overview. This article describes a lot of the changes between the main version of .NET and the Windows RT subset that's available to you. Generally, Windows.Runtime will provide alternatives to some of the .NET methods that no longer exist.
http://www.infragistics.com/community/blogs/nick-landry/archive/2012/06/19/developing-apps-for-microsoft-surface-windows-8-windows-rt-and-windows-phone.aspx
here are all the info about that
As for the .Net compatibility, the .NET for Windows Store apps link states that the a lighter version of the .Net Framework (aptly called ".NET for Windows Store apps") will be available in Windows RT and so the available APIs too will be a subset of those available in the Full Desktop Version of the Framework. Eg. In Windows RT, Windows Forms will not be availble.
You can also create a Portable Class Library project to develop a .NET Framework library that can be used from a Windows Store app. The project must include .NET for Windows Store apps as one of the target platforms. This is useful when you want to build functionality that can be used from apps for different platforms, like Windows Phone app, desktop app, and Windows Store app.
Dev Center - Windows Store apps is the best (and official) place to get started.

Porting Windows Phone7 application to Windows 8

I ported my windows phone7 application to windows 8(just copy paste the xaml and c# code in visual studio 2012->new->project->WPFApplication) and made changes in UI sizes.The problem is the .exe file(after building wpf application) runs only in the system with .NET framework installed.I want to run my application in all system running windows(7(32/64),xp,vista).I am newbie to windows application basically wp7 developer.Thank u.
If you really want to port a windos phone 7 app to windows 8, You should go through the following resources. They provide most of the information.
http://msdn.microsoft.com/en-us/library/windows/apps/hh465136.aspx
http://leventoz.wordpress.com/2012/03/07/moving-a-windows-phone-app-to-windows-8-a-case-study-part-1/
http://leventoz.wordpress.com/2012/03/11/moving-a-windows-phone-app-to-windows-8-a-case-study-part-2/
WPF is a part of the .NET framework, so you can't write a WPF application that can run without the framework on the machine.
If you want to create a binary that run on the classic windows runtime you can't use WPF/C#/VB etc.
Best thing if you want to port your Windows Phone app to Windows 8 is to create a Microsoft Store app, File > New Project > Blank App in VS2012. The app won't run on anything except Windows 8 but the Microsoft Store for Windows 8 is probably the best place to have your app if it's ported from Windows Phone.
Migrating application to WP7 is not that easy as it sounds. There is lot of different APIs and also limited async/await in WP7 when using this extension.
I would probably recommend starting with this MSDN article. It describes basic problems and challenges and also contains useful namespace and API mapping:
Migrate/port a Windows Phone 7 app to a Windows Store app

Can applications written for windows 8 run on windows phone 8?

As Microsoft said that windows 8 and windows phone 8 share the same code base. If I use visual studio 2012 RC write an application for windows 8. I want to know whether I can install and run the same application on windows phone 8?
If the answer is yes we can prepare ourselves for windows phone 8 SDK by learning Visual Studio 2012 RC for windows 8 today!
Right now they haven't announced everything, so this is just my speculation.
I guess that you will not be able deploy the same app (xap file) to WP8 and Windows 8. This by design. Why? Because they are very different systems. Your beautiful, fast and awesome Windows Phone app will suck on Windows 8. There is no silver bullet. It's the same for HTML. You have to create separate mobile version of the web app, otherwise nobody will use it.
They share the same kernel and probably plenty of APIs. But that doesn't mean the runtime environment in which your applications run is the same. E.g. very different form factors make it necessary to adapt the app anyway. Since they never said that Windows Phone 8 has the same application programming model as Windows 8 you can at the moment safely expect not to be able to deploy the same app to both Windows 8 and Windows Phone 8.
That being said, you probably can expect to share a lot of code between both systems, especially if you're using either C# or C++ (with native apps coming to WP8 too).
Application compiled for WP8 won't just run on Windows 8, but you can share lot of code into common libraries.
There is a chapter in Windows Phone 8 SDK about targeting both Windows 8 and Windows Phone 8 development. Mostly is possible either by Portable Class Libraries, referencing common files both in W8 and WP8 projects or using Windows Runtime Components.
http://www.microsoft.com/en-us/download/details.aspx?id=35471
Many Application designed for wp8 work on windows8 also as The developer have also to decide whether it will work in both of then,usually windows8 has not enough graphic and motion control so some WP games do not run on windows8,, You can always see any app permission notice to understand whether it work on wp8 or not on other hand there were also some windows game that has as much graphics that WP could not run,,
Like if you want game like assassins creed it will run on both operating system(WP,window) but in different manner
So it's chooses by game properties that define cap package to run or not

Resources