windows 8 app for mobile device - windows-8

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).

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.

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)

Deploy wp8 application on a wp7 smartphone

I have a windows smartphone , version 7.10. can i deploy it for applications developed with the wp8 sdk and will these applications work without any problems on wp8?
Since WP 8 and windows 8 will share common core, I think that we can say that such deployment will be possible with maybe minor tweaks regarding device resolution. Maybe you can think that you can use snapped view on tablet as a UI for phone.
It's not clear why you are referring to WP7, but Windows Phone 8 apps will not run on any Windows Phone 7.x device.
The biggest thing today is that Windows Phone 8 has a shared common
core with Windows 8," said Windows Phone Manager Joe Belfiore at the
Windows Phone Summit in San Francisco, which was webcast. "For us,
this is a huge release and a huge year.

Developing for WP8 with only WP7 device?

I don't understand from today's WP8 event: will I be able to develop apps working on both 7.5 and 8, having only one 7.5 (7.8) device for testing?
I don't like WP emulator, even though it's better than iOS/Android ones. I know that in Visual Studio 2012 it will become even better. But still!
Current devices running Windows Phone 7.X will be able to be upgraded to Windows Phone 7.8 but not Windows Phone 8.
If you want to use a feature that is specific to WP8 you'll either have to wait for hardware or use the eumlator (when available).
I don't like WP emulator
But you should. The emulator for Windows Phone 8 is a full featured Hyper-V emulator, that can even run unmanaged code.
As pointed out by Matt, you'll not be able to do any deployment of Windows Phone 8 apps to your Windows Phone 7 device, and as such you'll need a new device, or use the emulator.
And as the SDK is likely to be released before any devices, I'll strongly encourage you to do development in the emulator until the real devices are on the market.
You'll have to use Windows Phone 8 emulator, or cross your fingers that the equivalent to XDA-Developers for Windows Phone roots your model of phone and is able to get Windows 8 working(hint: unlikely)
The Windows Phone 8 emulator is really very nice though. The only big troubling thing about it is that it requires hardware Hyper-V support and Windows 8. This means you can't run the phone emulator inside of most virtualization technologies. However, I've been using VMWare 9 which appears to include an "unsupported" feature to allow Hyper-V to work though.. So your only choice for running the phone emulator is to either buy VMWare 9 or upgrade a physical machine to Windows 8