Windows UWP as Screensaver? - windows-store-apps

On Windows 10, can a UWP be launched as a screensaver? If so, how do you register your app with the OS such that it gets listed in the screensaver dialog?
(Windows 8 store apps cannot be screensavers. I cannot find any information on UWPs)

I am very sorry to disappoint you, but no, you can not set your UWP app as a screensaver provider.
What you could do instead is offering the user to give your app control of the lock screen or wallpaper image. UWP apps are able to set these images even when running in a background task with the UserProfilePersonalizationSettings class:
// Lock Screen
await UserProfilePersonalizationSettings.Current.TrySetLockScreenImageAsync(StorageFile);
// Wallpaper
await UserProfilePersonalizationSettings.Current.TrySetWallpaperImageAsync(StorageFile);

Related

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.

Check if any app can handle URI scheme

I'm creating a Windows Phone 8 app (Store apps) in which I will have some links for the user to open other apps.
My goal is to hide or show only the links for which I have apps that can handle them.
For instance, I have a link for
mymoneyapp://user=123
and another for
mymusic://user=123
So, if I have an app that can handle the mymoneyapp scheme I want the link to show if not then I hide it.
The only why I found to test this is using
LauncherOptions options = LauncherOptions();
options.FallbackUri = new Uri("http://myfallbackpage.com");
Launcher.LauncherUriAsync(new Uri("mymoneyapp://user=123"), options);
But in this case I get my fallback Uri launched if no app can handle that schema.
Is there any way just to test if an app can launch it without actually do it?
There is no API for this on Windows Phone 8. Windows 10 adds Launcher.QueryUriSupportAsync to allow checking if there is a handler before launching it.
https://msdn.microsoft.com/en-us/library/windows/apps/windows.system.launcher.queryurisupportasync.aspx

How to write an app that does not open a window in Windows Phone

I want to write an app that just manipulates the content of it's own tile and then silently terminates.
How do I get rid of any default window and splash screen?
Thanks!
You cannot do this fully. Tapping the tile will always launch the app so there will always be a context switch even if it exits immediately.
The closest you can get is to write a Silverlight app and not include a SplashScreenImage.jpg file. When the app starts up immediately exit by calling Application.Terminate (Runtime apps always show their splash screens while loading, but splash screens are optional for Silverlight apps).
This isn't recommended and is likely to confuse your users. A better design would be to let the app launch and do something useful such as displaying more information about what is on the tile or letting the user know what changes are being made.
As Romasz says, this may not pass certification. See Windows and Windows Phone Store Policies for the certification requirements. I suspect an immediate exit with no reason given will appear as and be treated as an app crash.

How to develop app only for the Lumia devices?

I see more apps on the Windows Phone depends on the Phone Model.
GroupOn, Nokia apps, App folder are some of the apps I mean. I can only install these apps if I've Lumia Phone. Else I can't install.
Like that, I wish to develop an app only for the Lumia devices. How could I develop ?
Manufacturers and operators have the ability to add apps either when devices are provisioned or via separate app stores.
You'll need to work with the manufacturer to set this up.
This is normally done for apps they've developed themselves or have some kind of exclusivity deal with the app. They don't have public ways for developers to request this.
There's no way to release an app in the store and make it only available to specific devices. I've seen a few apps that are intended for only a few devices with comments in the store description to indicate this but there's no way to stop people with other devices installing - and inevitably leaving bad reviews.
Why would you want to limit your potential user base anyway? Especially when non-Nokia devices are less than 10% of the market anyway.
You'll find it very difficult to get your app for download by device only without working with the OEM to get your app into their own collection on the Store.
If you're thinking of making your app Nokia only, get in touch with the Nokia Developer Program and see if you can get in that way.
Do you want to ask that only Nokia user can see your app other user can't like Samsung or HTC then you can't there is chance if QA team pass your code.........
try to access device info (line name)
if you found device name Lumia then open your application else just exit from application
private void initialize(object sender)
{
string deviceDetails = "Device detail";
deviceDetails += DeviceStatus.DeviceName + ",";
MessageBox.Show(deviceDetails);
//to know whether device supports smooth streaming of multi resolution video
if (deviceDetails.equals("..your supportes device 1..") || deviceDetails.equals("..your supportes device 2.."))
{
MessageBox.Show("Supported");
//open application go further
}
else
{
MessageBox.Show("Not supported");
//close your application
}
}

Programmatically communicate with Windows 8 Music Player

I would like to know if it is possible to programmatically communicate with the default Windows 8 Music Player (Windows store app).
For example, when is it start/finish playing a new song, what is the name of the song etc.
I vaguely have an impression that WinRT app are based on COM/DCOM, so I suspect there maybe a way to expose that to be consume by external program. Is my assumption correct?
Windows store apps are "sandboxed" apps. You can't communicate with other WinRT apps. So you can't access what's being played in Music app of Windows 8 app.
The only way a windows app can communicate with it's host environment is through what is called Activation Protocol which basically opens another app. So metro media players can't provide info about what they are doing to other apps.
Also a metro app can ask a file to be opened by default handler of host system.
So the answer is no. There can't be a way for the media player to inform other apps about it's status.
Windows metro Apps are more similar to a Silverlight app than a COM/DCOM component.