Programmatically communicate with Windows 8 Music Player - windows-runtime

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.

Related

Identify Store App Type

From Microsoft Store if we select an app to install, how to identify whether the app is built on win 8/8.1/10?
Like how to know from seeing the app in store whether it is a metro app or UWP app?

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.

Windows 8.1 Facebook App Events

I'm writing a Windows 8.1 universal App (WinRT).
I need to integrate with Facebook to track App Events.
I made the same thing in an Android App using the AppEventsLogger.
I added the "Facebook SDK for .NET" to my project using NuGet, but I cannot find any way to track the App Events (like activateApp, deactivateApp, logEvent)
Are these functionalities I need included in the SDK I'm using?
Can I track these events in any other way in a WinRT Application?
Thank you all.

Auto-launching DailyMotion Windows Phone from another App

I have read about Auto-launching apps from another app on Windows Phone. I have a app that shows some videos, these videos are mainly from DailyMotion. Now my Question is if there is any possibility to check, if DailyMotion App is installed on my Phone, than open this video in this DailyMotion app instead of browser.
You can use custom URL to launch the dailymotion app. For example, using the line of code
string dailyUrl = "dailymotion://myurl";
Windows.System.Launcher.LaunchUriAsync(new Uri(dailyUrl));
It will automatically open the dailymotion app if it is installed on the phone, but otherwise it will probably perform nothing. So with the previous answer explaining how you might check if the app is installed, and this piece of code, you might be able to perform what you need :)
You cannot get the list of applications that are installed on the Windows Phone that are published by someone other than the publisher of the calling application.
There is a way, however, to get the list of applications that are installed on the device and are originating from the publisher of the caller ape.
Have a look over here
IEnumerable<Package> apps = Windows.Phone.Management.Deployment.InstallationManager.FindPackagesForCurrentPublisher();
apps.First().Launch(string.Empty);

Windows phone calendar integration

We are building a simple we app that contains basic tasking functionality (tasks, appointments, etc.).
We want to integrate it with Windows Phone 8 native Calendar, without writing any apps but by making a some sort of webservice that could be added as an account to Windows phone (e.g. Facebook, Microsoft Live, Gmail - are all accounts that are added, thus the tasks are synced).
Yet what have I came up with was this:
Interacting with calendars (Live Connect API)
This looks like a way to actively push and control the items on the Microsoft Live account, which would be fine but it requires that account to make it happen and an active module to do all the management.
We are looking forward to mimicking account behaviour and letting the phone do all the work :)
CalDAV was another keyword that popped up while searching but to my understanding windows phone doesn't support it.
Is it possible to forcefeed windows phone calendar objects to the phone without making a custom app?
Windows phone 8.1 supports cardav/caldav. You can put a custom dav server address selecting icloud account (it is a workaround) and editing the dav url. So you can set up a dav server in your app and synch calendars and contacts between your web app and the wp8 defaukt calendars and contacts app.