Okay, okay - this should be simple, but I just can't figure it out, and Google isn't helping. I just bought a Lumia 635 for developing apps for the Windows store, and I'm using Blend to make my apps in HTML and JS. I've been getting along just fine so far, but it seems that I'm unable to select my WP as a target device.
I've already "unlocked" my windows phone device so that I can use it to develop. I don't believe it's to do with drivers since I would assume Win8 has the drivers inbuild. I'm wondering, is this even possible from within blend? There is a separate program named "Windows Phone App Deployment". Do I have to use this? There seems to be very little concise documentation on this, so I'm assuming it's not possible.
For universal apps, the available deploy targets are based on which project you choose as your startup project. By default the Windows App is the startup project, so it gives you deploy options like Local Machine and Simulator (Windows Tab). Change your startup project to Windows Phone App and you'll see the device option as well as different phone emulators.
Related
I have an application written in VB.NET that I want to move to Win10. It will always be a desktop application, however I would like it to have a start icon / tile in Win 10. Looking around I found this exact question which suggests to create a Metro App (now I believe called Windows App) which launches the desktop app. This is also discussed in this thread. So the questions;
These threads are a little old is the best way in Win10 to give a desktop app a Windows App Tile by using a Windows App as the Launcher for the desktop app?
It appears that in Win10 Microsoft has now allowed non-store apps to be installed in Update Security > SideloadApps. This needs to be enabled to install the App, but does this need to be always enabled. For example what happens after install if the user turns it off, will the app then not start?
For example I see in this link that there are 2 Registry keys to change, basically AllowAllTrustedApps and AllowDevelopmentWithoutDevLicense. Is it possible for my desktop installer to change these keys, install the Windows App (and everything else) and then change the keys back again?
Uninstalling? If I created a Windows App which only launched my desktop app then there is a possibility that the user uninstalls or deletes the Windows App, meaning my desktop app would be orphaned and lost. Any suggestion on solving this?
According to your description, I think what you need is Desktop Bridge. There is no need to use a Windows App as the Launcher for the desktop app.
You can try with Desktop App Converter, with this you can bring your existing desktop apps written for .NET 4.6.1 or Win32 to the Universal Windows Platform (UWP).
And after converting, you can replace the Assets generated by Desktop App Converter (DAC) automatically to provide custom Tiles/Icons. For more, you can refer to Manually convert your app to UWP using the Desktop Bridge.
Detailed explanation:
Windows 8.1 targeted app package bundle for x86 and ARM architectures was uploaded to the Windows Store;
Windows Store approved it as a valid app, and published it using targeted distribution (Beta release for specific e-mail addresses), and gave me two different links for each Store: Windows 10 - www.microsoft.com/store/apps/some_code; Windows 8 - apps.microsoft.com/windows/app/some_other_code;
Both links redirect to the same page in the web version of Windows Store (and instantly opens the Store App with the game page open): www.microsoft.com/en-us/store/games/game-name/another_code;
When you click the Windows 10 store link on Windows 10 machine, the Store App opens, and app is downloaded smoothly and easily;
BUT when you open the link to the Windows 8.1 Store on a Windows 8.1 machine, Store App opens, refreshes one time, but instead of displaying the app page, it shows the Home page, and you cannot download the app at all from the official Windows 8.1 Store, even though the browser page includes Windows 8.1 in supported OS'es list;
Some additional comments:
in both machines I am connected to the Store using an account, which is in the list of targeted distribution partners (e.g. in the "whitelist" of beta users);
App is working normally both on Windows 10 and Windows 8.1 when I am installing them using the ".ps1" PowerShell script Visual Studio generates when building a release package;
I tried to change regions in the Store (UK, LT, US, etc.), but none of them works.
If you need more information - comment, I will try to explain more details :)
Finally, I have found an answer here:
https://msdn.microsoft.com/en-us/windows/uwp/publish/set-app-pricing-and-availability
"If you want to hide your app in the Store but still make it available to certain people, select one of the following options to limit your app's availability. Note that customers on Windows 8 and Windows 8.1 won't be able to get the app at all if you choose any of these options."
Since our app was hidden, e.g. "targeted distribution" (with certain e-mail addresses in the "white-list"), we couldn't test the app in the Windows 8.1 store. (Don't ask why, but..) Microsoft does not allow this functionality on Windows 8.1 machines, as mentioned in the article above.
i am developing a C#/XAML windows 8 Metro app,
The application works properly on a Windows 8 machine and emulator, but not on the Surface RT tablet. For example, I have a combobox in one of my screens and I bind the data to the combobox and set a default item by
combobox.selectedItem = "some test";
This data appears in the Windows 8 desktop machine and emulator, but the combobox is showing empty on a Surface RT tablet.
Does the combobox control have any problem on a Windows RT tablet?
I a used AnyCPU Configuration, built in Release mode and tested that package on the device which is generated. For the Surface RT do I need to generate an ARM build?
There's not enough information to answer this problem. I would guess that whatever source you use to populate your combo boxes is not accessible from the devices. If it's some sort of file on your computer, that won't work and you need to send it over as a resource. If it's a service call, you may have an authentication issue.
You might try it from a different desktop machine if one is available. This may or may not confirm my guesses.
Is it possible to use private APIs in Windows Phone 8 development similar to iOS development?
Of course, this is NOT about apps going to get published (AppStore/Marketplace). But there are a lot of use cases for non-public projects where a developer wants to call internal system functions.
With the Windows Phone 8 SDK installed, one can mount the Windows Phone 8 Emulator image located in C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Emulation\Images. In the main partition of the Windows Phone OS, one can navigate to Windows\System32 and inspect the system DLL files with a tool like Dependency Walker or IDA Pro.
There are a lot of functions that sound very interesting but which are not publicly available and thus not documented. The question is: is it possible to call them somehow from an app or by other means?
Just a few examples of interesting functions (there are much more):
ShellChrome.dll: InvokeStartMenu, InvokeScreenCapture, InvokeVolumeUp, LockDevice, ...
InputInjection.dll: ApiInjectInitialize, ApiInjectTouchEvent, ...
...
I tried to get LoadLibrary (specifically, LoadLibraryExA) working somehow in a native Windows Phone App project, and to load and call these functions (the loading of the library worked). Long story short, I ended up with access violation errors or similar when trying to call the functions (maybe because of the sandboxed execution environment). Another problem is, that I can only guess the signatures (arguments) of the functions. I can't find them out with the tools I use.
Private api? We can use dll files in the windows phone. I have used private sdk's in the windows phone. I don't think windows is going to permit us to customize the OS just like Android do, So Invoke volume up..etc stuff is not going to work through private api.
I think they only provide some private apis to only partners with an NDA.
http://social.msdn.microsoft.com/forums/wpapps/en-US/4af0e87a-ab4b-4652-891a-f198a32758cf/windows-phone-8-access-to-private-apis
You can't, the application sandbox will enforce API usage. That means you will get an UnauthorizedAccessException every time you try to do a call to an api requiring rights you don't have.
This is intimately tied with the developer account you use to unlock your phone for development purposes.
EDIT : That's also true on the c++ native side.
I have been tasked with writing a simple one-time-use Metro/windows store/modern UI (whatever you want to call it now) app for windows 8; it wouldn't be appropriate to try to get it into the store, because we only plan on deploying it to about 4 or 5 devices. I noticed that when I installed Chrome on the machine, it somehow managed to sneak a metro version of itself into my start menu.
I am not looking for a way to deploy a metro app to another machine, I can already do this a variety of ways (including add-appxpackage and via the remote debugger tools with visual studio 2012), I am only curious how Chrome managed to side-load a metro app, and what process they used.
Anyone have any ideas?
There was no side-loading of a Windows App when Chrome was installed. Browsers get special treatment, and the default browser (and only the default browser) can act as a Windows Store app if it implements the appropriate functionality.
There is a downloadable white paper about how this works on MSDN:
http://msdn.microsoft.com/en-us/library/windows/apps/hh465413.aspx