WMAppManifest.xml is missing from Windows Phone 8.1 Apps building - c#

Recently I have upgraded Visual Studio 2013 update 2. There are lot of changes in this huge update and one among this update is Windows Phone 8.1 Apps you can start building now.
Currently I am developing an apps for which I need to configure certain value in WMAppManifest.xml file. Even in MSDN says that the file is under Properties but I could not find any. http://msdn.microsoft.com/en-us/library/windowsphone/develop/ff769509(v=vs.105).aspx
Amazingly this entire file is missing and the value I want to change is not there any more.
Has anybody faced this issue and ay work around of how to find out the location of this file? Is it renamed.
I googled but failed to get what I was looking at. If anybody guide me that will be great.
Thanks

The WMAppManifest.xml file is only for Silverlight app and my guess is you created a Windows Phone 8.1 XAML app. The file you need is Package.appxmanifest, it contains more or less the same settings as WMAppManifest.xml used for Silverlight apps.

Related

Developing Window Store Apps in Visual Studio 2013 on Window 7 64-bit without emulator

This is going to be quite a long question but please bear with me till the end. Before going into the details, below are my PC environments:
Windows 7 Professional x64
Visual Studio Community 2013 Update 4
On top of that, I checked my PC's processor does support virtualization using Intel® Processor Identification Utility.
I also installed all the required SKD 8.1 components required to develop Windows phone 8.1 apps as shown in the picture below.
Now I clearly understands from the visual studio website requirements:-
Windows Phone 8.0 development requires Windows 8.1 (x64) or higher
Windows Phone 8.1 development requires Windows 8.1 (x86) or higher
For the Windows Phone emulators, Windows 8.1 (x64) Professional
edition or higher, and a processor that supports Client Hyper-V and
Second Level Address Translation (SLAT)
But from this SO Q&A it seems like developing windows 8.1 phone apps is still possible. However when I try to open an existing windows phone 8.1 project I got the error as shown in the picture below:
On top of that, in my Add New Project window there are no Windows Store Apps templates showing up.
I later found out from this msdn documentation that the RequiredPlatformVersion Element of the Visual Studio project template is filtering out the templates. However I tried to change the Blank Windows Phone project template element's value to 8 as specified in the documentation and also a few others value smaller than 6.3.0 but still fail to show the template.
Then I tried to install an extension called Windows Phone Template Pack which then adds two window phone project templates in my Add New Project window as shown below.
I created an empty project using that template and surprisingly I am able to open the windows phone 8.1 project as shown in the picture below.
That got me thinking that it should be possible to develop windows phone 8.1 apps but not emulating it but I am out of ideas on how to work around it now. I even tried looking at the denv.exe.config file to try my luck but there's nothing of interest there either.
Is there anyone that successfully build a Windows Phone 8.1 apps in an similar PC environment? A workaround will be sufficient.
Sorry to say this but Windows 8.1 is a requirement for developing as usually emulators on being initialized tries to load the OS into the device like the basic theme etc options.
1) You can try to connect your Windows phone to your PC and select Deploy to Device. (Though it might work and you will be able to debug yet still you would face a problem when you try to create a release build package to be uploaded on windows store. Also even though the fixes might work for short period but with Windows 10 about to be released you would be stuck with waiting for a fix to develop apps for that.)
2) You can try installing windows 8.1 inside VMWARE and deploy it.

Win Phone System.Windows.Controls.Control not found

I'm developing a universal windows 8.1 app, though I'm primarily working on the windows phone version.
System.Controls.control should work for windows phone, but whenever I add System.Windows.Controls.dll to my Win Phone 8.1 references, my project won't compile and it says:
Cannot find type System.Windows.Controls.Control in module System.Windows.dll
This happens whether or not i actually say "using system.win.." etc, it happens as soon as I add it to my project references. This dll is from my programfiles(x86)/microsoftsdks/silverlight directory.
Any ideas on how to fix this issue?
You're trying to use Silverlight controls in a WinRT app. That won't work. New UI controls are a part of Windows.UI.Xaml.Controls.
Find the list of controls which are in that namespace here. Also, please read more about the two different XAML models available in Windows Phone 8.1.

How to programmatically detect if Windows 8.1 Update is installed

I'd like to detect from a C# application whether the latest Windows 8.1 Update (KB 2919355) is installed
I haven't been able to find anything on any of microsoft's sites or via google that indicates how one might do this.
Thanks!
That update is actually a "rollup" or a collection of other separate smaller updates. If you go to the Knowledge base page for the update and scroll down to the "File information" you can see the update is actually the combination of the following other updates.
KB2919442
KB2919355
KB2932046
KB2937592
KB2938439
KB2934018
You will then need to either check that all of the above listed updates are applied or the single master update is applied. I am not sure how to do that in C# alone but via the commandline you can just do it by the console command
wmic qfe get hotfixid | find "KB2919355"
I installed Windows 8.1 Update from an MSDN download before it went live on Windows Update. It was distributed as a series of MSU files with a ReadMe. The list of updates in the ReadMe may be useful, if you choose to detect their presence.
Windows 8.1, Windows Server 2012 R2, Windows RT 8.1 Update
Recommended Install Order
1. KB2919442
2. KB2919355
3. KB2932046
4. KB2937592
5. KB2938439
6. KB2949621
This may be the culprit:
Operating system version changes in Windows 8.1 and Windows Server 2012 R2
Manifestation
In Windows 8.1, the GetVersion(Ex) APIs have been deprecated. That means that while you can still call the APIs, if your app does not specifically target Windows 8.1, you will get Windows 8 versioning (6.2.0.0).
Solution
In order to target Windows 8.1, you need to either include the app manifest or include _NT_TARGET_VERSION=$ (_NT_TARGET_VERSION_LATEST) in the source file.
Mode details of the required manifest contents are given in the article.

Share dll between WP7 and WP8 application

Usually it is recommended to have two projects for both wp7 and wp8 platforms. Wp7 project contains .cs and .xaml files, and WP8 project contains links to that files.
I think that there is no reason to compile non-platform specific business logic code twice, since it can be referenced to WP8 project.
I'm thinking about following solution structure:
Business logic dll compiled for wp7 (not a PCL)
UI comliled for wp8
UI comliled for wp7
Such application can be compiled and I can deploy it to device/emulator.
The question is: will this app pass certification in Windows phone store? Or it is necessary to recompile shared dll?
UPD:
My crazy idea was born after this steps:
Create new WP7 app (WindowsPhoneApplication1)
Create class library targeted to WP7 (WindowsPhoneClassLibrary1) Use it in WindowsPhoneApplication1
Use Upgrade to WP8 menu. WindowsPhoneApplication1 will be updated to WP8, but the referenced project will be still targeted to WP7!
Such app can be deployed to WP8 devices.
Unless you use a Portable Class Library, you'll need to have separate project files, and compile separately for WP7 and WP8.
Thanks to Claus,
I made some research, and it looks like the answer is - you can use such solution.
I didn't find related information in documentation, but here is a proof from one of MSFT tech. evangelists from Netherlands: link to blogpost
The basic idea is to move all our code that can be used from both our existing Windows Phone 7 app as well as the Windows Phone 8 build, which we will add soon, to a Common project in the solution. The bad thing about this approach is that we have to create the Common project as a Windows Phone 7 class library, which will be used in our Windows Phone 8 build. I haven’t really noticed any negative impact of this decision in my existing apps, but note that you will be referencing a Windows Phone 7 library in your Windows Phone 8 build.
So it is a possible, but not the best solution.

Can't open WP7 solution with VS 2010 Express

I've downloaded a zipped project from https://github.com/slodge/face. This project is a wp7 realization for face.com api. I've just started studying silverlight and wp7 applications, so I'm not strong at it. The problem is that I can't load this solution. The error message is "One or more projects in the solution were not loaded correctly. Please see the output window for details"
What do i have to do?
I just opened solution and it works ok. I think you have problem with your environment.
From errors you see it appears you have no SDK 7.1
Please download and install.
Since it's my github account... :)
This project is just a 7.1 (Mango) project - so it should load for you.
If it doesn't then please do check the output window for more help.
If it still doesn't then the project itself is quite simple - the main code is in the faceapi class - and should be simple enough to use even without a project file. If you need any more help with it, then email me (see my so profile for email address) or contact me via twitter #slodge
To get the app running you will need your own API key from Face - see https://github.com/slodge/face/blob/master/SmilieHappy/Helpers/FaceApiSecrets.txt
Also, the team at face.com seemed very helpful when I contacted them!
Stuart
I also encountered same issue like yours. Some project can open correctly and somes are not. The issue is because the tag is only support "WindowsPhone" other than "WindowsPhone71".
So the solution is clear, manually edit the ".csproj" file. Change the "WindowsPhone71" to "WindowsPhone".
This issue does because symbols related to the windows phone framework (7.1 or 8.0) are missing. I think why I meet this issue is due because I install SDK7.1 on Windows Server 2008 R2 (which sdk not support) through "Web" way.
Here is the link how I install the SDK.
How to install the Windows Phone Developer Tools on Windows Server 2008

Categories