Manifests for Windows 8 Phone app - windows-phone-8

I am examining Microsoft sample app "DirectX 3D shooting game sample". And I can see two manifests: Package.appxmanifest and StoreManifest.xml in the project.
After that I created a new WP8 project from template named "DirectX App (Windows Phone 8.0)".
The latter one contains WMAppManifest.xml.
All these manifests describe different things. E.g. Package.appxmanifest describes supported device orientations, meanwhile WMAppManifest.xml does not contain such an info.
My question is: what manifest is really needed to make an app for Windows Phone Store? And how do I specify supported device orientations for WMAppManifest.xml (because my game project is based on "DirectX App (Windows Phone 8.0)" template).

They are for different things. You can see what's in the application manifest (package.appxmanifest); there's even a designer for it in Visual Studio.
For the Store manifest, see http://msdn.microsoft.com/en-us/library/windows/apps/jj730526.aspx

Related

deeplink into internal page windows phone using third party

I have an app made in xamarin (for Android, iOS and Windows Phone) which requires deep linking which should open and internal page on receiving an url.
This url will be sent by sms to the user with http protocol. I tried the solutions provided by OneLink and Branch Metrics and they work with Android and iOS. The only problem is with Windows phone (8.1).
Both of them are not able to detect if windows phone is installed and if yes open the app and not take to the store.
Is there any solution to this (maybe third party solution).
NOTE: i have tried directly clicking myapp://open and it works on windows phone but what i need is using http and not my app as the above custom protocols are non clickable within Sms's.
Yes, deep linking is possible on Windows Phone. Shortcut Media offers a third-party solution for this (disclaimer: I work for Shortcut Media).
Have a look at this answer to see how to implement it manually...

Launch a Windows Phone app with android AAR (NFC)

I have a device with a hard-coded NFC tag that opens an Android app based on an Android Application Record (AAR). Basically it calls an Android app to open with type android.com:pkg and payload com.something.Something.
I have researched on how to launch my Windows Phone app with that existing tag, but in the end I have only found that Windows Phone can launch an app if the NFC tag is adequately programmed to open the Windows Phone app ID or the custom protocol registered in my app. But it is very important that I use the existing NFC tag which opens the Android app ID.
What is curious is that my Windows 10 Mobile detects this existing NFC tag to want to open the app when I touch it with my phone and prompts me if I want to launch an app? But the app with that ID isn't installed so I did a research on how to put this app ID on my Windows Phone app but in the end I only got deployment errors.
Android Application Records (AAR) cannot be used to launch Windows apps. Windows uses a different system to launch apps (Launch Record). The main probem is that Windows uses a different scheme to identify apps (not a Java package name as Android does). Moreover, Windows apps cannot be set to be automatically launched based on the data contained in an AAR, hence, it's not possible to build some custom filter that starts your Windows app based on that AAR.
The workaround that's currently known seems to be what's discussed in Cross platform launch records with extra data on Windows Phone and Android. Though this requires modification of the data structures on the tag side.

Adding speech synthesis and recognition to a Windows Phone 8.1 universal app's application manifest

When using speech recognition in a Windows Phone app you have to remember to add the speech recognition capability ID_CAP_SPEECH_RECOGNITION to the app's application manifest, as advised in this answer or the documentation here and here
In Windows Phone 8 these settings would, I believe, have been available through the Capabilities page of Manifest Designer, as we can see from this screenshot taken from the 'How to modify the app manifest file for Windows Phone 8' documentation:
But in Windows Phone 8.1 under Visual Studio 2013 the Capabilities page of the Manifest Designer does not look like that. It looks like this:
There is no entry for speech recognition there. So I assume I need to edit the Package.appxmanifest file in the project directory. The relevant section looks like this:
<Capabilities>
<Capability Name="internetClientServer" />
<DeviceCapability Name="microphone" />
</Capabilities>
How would I add ID_CAP_SPEECH_RECOGNITION to that?
ID_CAP_SPEECH_RECOGNITION is a red herring for getting speech recognition and synthesis working using Windows.Media.SpeechRecognition and Windows.Media.SpeechSynthesis on Windows Phone 8.1. As Kunal Chowdhury points out in his blog post Windows Phone 8.1 Text-To-Speech - What’s changed for #WPDev we just need to enable the Microphone capability which, as we can see in the screenshot in the question, is available in the Capabilities page of the Manifest Designer under Visual Studio 2013.

How to Determine App Capabilities in Windows Phone 8

According to http://msdn.microsoft.com/en-us/library/windowsphone/develop/gg180730(v=vs.105).aspx#BKMK_wp8apps The Windows Phone SDK 8.0 does not contain tools to detect the capabilities required for apps that target Windows Phone 8. When you submit an app that targets Windows Phone 8 to the Store, capabilities are not analyzed and the app manifest file is not regenerated or corrected. In my application I am using CameraCaptureTask and ShareMediaTask to first capture a picture and then share. By default in my WMAppManifest file I had ID_CAP_MEDIALIB_PHOTO, ID_CAP_NETWORKING, and ID_CAP_SENSORS. I do in fact use the MediaLibrary t gather a photo path for the ShareMediaTask, so I have left that capability in WMAppManifest. Do I need the other two as well if the actual image capture and sharing occurs not within my application but within the CameraCaptureTask and ShareMediaTask?
The ShareMediaTask does not have any capability requirements.
The CameraCaptureTask only requires that you specify the camera hardware capability.
For reference, the rules are defined in :
"C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\Marketplace\Rules.xml"

Sharing files between metro and desktop app

I have a desktop app which creates files under c:\ProgramData folder on windows 7. (I can't move the files location to document folder.) I want to provide a metro version of this application as well. The metro application should be able to read and write the same files which are created by the desktop version. As I see, metro does not allow this in some obvious way. Is there a way to make that folder available to metro app?
Metro applications can't access most of the windows desktop folders. C:\ProgramData is not one of the allowed locations. See here for a list of the allowed locations and how to get to them.
You can add possibility to 'send' your data to your desktop app from WinRT app. Try to use sharing contract (check there and there ) for this. I understand that isn't well solution for this but it is better than nothing.
EDIT: This way isn't possible. I've just checked and get message - Nothing can be shared from desktop.