Compiling Windows8 app to other versions - windows-8

If I make a Windows8 App (Javascript template), will I be able to compile it also for Windows Phone 8 and as windowed Windows 7 application?

No.
WinJS (or any other format) Metro Store apps do not have a direct equivalent in Windows 7.
For Windows Phone 8 you may be able to reuse some of your business logic but you'll need a new UI layer and the WinJS functionality isn't supported.

Related

Does app written with WinRT APIs can run on Windows 8 x86, Windows 8 for ARM and WP8?

AFAIK, only Metro style apps can run on Windows 8 ARM, and Metro style apps can only be written with WinRT APIs.
According to this thread Can we access Windows 8 WinRT API from desktop application and Windows Phone 8 app? If so, are they in different namespaces?
Windows Phone 8 use ARM architecture, too. So if our app is written with WinRT APIs, it can run on both Windows 8 x86, Windows 8 for ARM and WP8, right ?
Not exactly. The situation with WinRT and Windows Phone Runtime is similar to WPF/Silverlight. There is overlap, but not 100% coverage. To address this issue Microsoft encourages using Portable Class Libraries to target multiple platforms (since each platform has its own runtime). More information on PCLs: http://msdn.microsoft.com/en-us/library/gg597391.aspx
Also, even if you manage to have most of your classes working under a Portable Class Library, you'll still have to write separate User Interfaces for each platform (the PCL does not support sharing UI). While this may seem upsetting, it actually is more necessary than you think. Here's a link on what Microsoft suggests in terms of sharing XAML UI.
This shouldn’t be seen as a complete roadblock for sharing between
Windows Phone 8 and Windows 8. The clear guidance is to design and
build your UI separately for each platform, embracing the design
guidelines for each. It is technically possible to circumvent these
obstacles. You could create your UI during page initialization from
code. You could load platform-specific XAML from resources at runtime
and inject it as a string into the page. However, none of these
techniques scale and they make the construction of your core asset—how
your app looks to your user—a tedious and error-prone task. Your code
sharing investment will give you a much larger return further down
your app stack, by trying to share app logic, data models, viewmodels,
etc.
Basically, Microsoft is saying design your user interfaces specifically to the platform, because an application running on the phone (smaller screen) should have a different user interface than one that runs on a tablet/desktop (larger screens).
As far as running WinRT apps on different platforms... Yes, you can. Microsoft has stated that applications written in WinRT can run on Windows 8 and WOA (Windows on ARM). Here's a link from Microsoft talking about this. But, the first portion of my answer still stands... if you want to target different runtimes (WinRT/Windows Phone Runtime)... then use Portable Class Libraries. Selecting "Windows Store" and "Windows Phone 8" will allow your code to run on Windows 8 x86/x64/ARM, and Windows Phone 8.
Windows Phone implements a subset of the Windows 8 WinRT API, dubbed WinPRT (P == Phone). You can find a good overview here with an exact list of support Win(P)RT APIs to be found here.
Word of caution - the XAML on Win8 is similar, but different, to the XAML on WP8 so expect to have to rewrite a lot of your UI for WP. What you really want to do is read this Getting Started guide that steps you through a lot of the considerations and techniques involved in developing apps between these platforms.

windows phone 8 and windows 8 tablet

I'm wondering how to develop an app for both Windows Phone 8 and a Windows 8 tablet? When creating a new Windows Phone project in Visual Studio, I don't see any options to target phone and tablet devices like in Xcode. Are there any guidelines or tutorials on how to create the same app for both devices?
As mentioned you need to create two separate projects.
It is possible to create a library called Portable Class Library where you can put code that can be shared between a Windows Phone 8 app and a Windows Store app. See Maximize code reuse between Windows Phone 8 and Windows 8
Another technique mentioned in the article is to use MVVM to be able to separate UI (which differs more between platforms) from logic (which is easier to share).
Although they are using the same core, Windows 8 (RT) and Windows Phone 8 are distinct operating systems. This is different that iPhone/iPad which both run iOS.
You will need to create individual projects for Windows Phone 8 and Windows RT. If you are coding in C#/XAML, the code should be fairly portable between the two platforms. Here is a good session from the Build conference on how to leverage your code across Windows 8 and Windows Phone 8.

Do I need to use a WP8-specific Azure SDK?

At this link: http://blogs.msdn.com/b/windowsazure/archive/2013/01/09/new-windows-azure-mobile-services-getting-started-content.aspx I see that there are separate Azure SDKs for Windows Store and
Windows Phone 8.
In my app suite (a Windows Store app and a complementary WP8 app), I'm currently using only the
Windows Store SDK - I haven't downloaded/installed the WP8-specific Azure SDK. Do I need to?
It's the same download for WP8 and Windows 8; of course, iOS is completely different, hence the calling out of different SDKs.

What is difference between Windows 8 Mobiles app and Windows 8 metro style app

I am newbie to windows platform.
I have few questions mentioned below.
What's diff between Windows 8 metro style app and the Windows 8 mobile app?
What diff languages I can use to develop windows mobile app?
The answers to above questions will quickstart my windows mobile development.
Waiting for your responses.
They are basically the same except for some API that are available for phone only
Windows Phone 8 now shares a common core with Windows 8. This means you can expect to write apps for one and easily port it to the other, with UI retooling of course. Developers targeting both should use C#/VB + XAML and JS for apps, and C++/D3D for games.
VB/C# + XAML, C++ + DirectX (for complex graphics), JS can be used Windows 8 surface but not with phone (got this from jump start to windows 8)

windows 8 app for mobile device

I am new to Windows Phone applications and Windows 8 Apps. All I know about windows 8 is the metro style and the news that it will run on the PCs, tablets and Phones as well.
I want to get started developing an App for an expected Windows 8 Phone Device. All the guideline I found for windows 8 is for developing the apps for windows 8 tablets or PCs (not phones). Here is a link for windows 8 SDK, I am looking at.
Should I start developing a regular windows 8 app (for tablet) assuming that it will run on the expected upcoming windows 8 phone device?
Does anyone have any idea?
Microsoft has made very few announcements so far on the developer story for Windows Phone 8. What little news has been announced can be viewed in the Windows Phone Summit video here:
http://channel9.msdn.com/Events/Windows-Phone/Summit
The only statement made so far regarding development across the two platforms is that applications developed using C# and Xaml will have "high compatibility" between Windows Phone 8 and Windows 8.
Windows Phone 8 is due out later this year so hopefully development tools aren't far off. If you want to get started right away I recommend you try your hand at developing a Windows 8 application using C# and Xaml. That should catch you up to speed and get you prepared for Windows Phone 8.
You can get started at http://dev.windows.com
I think there is nothing really official about the development of applications windows phone 8 (except as regards the integration of the new features of future devices). Everything in internet indicates that one of the reasons that drove microsoft to update wp7 is precisely the desire to converge development for windows 8 with development for windows phone8. This convergence will be visual (for example the pivot layout will be characterized by a single page horizontally scrollable similar to windows 8 apps) and under the hood (with a kernel very similar).
The enhanced hardware will perform more complex operations (thus tending toward user experience similar to pc).
What we also know that in some metro style app in actual microsoft store someone found comments in the source related to the integration of the app in windows phone 8.
What I can suggest then is to develop your app for windows 8. In all likelihood make the porting to Windows phone 8 will be simple (different sized images for backgrounds, different icons, but side code probably will not change anything).