Launch a Windows Phone app with android AAR (NFC) - windows-phone-8.1

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.

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...

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);

Launching windows phone 8 app from webpage

I added a uri association to my WMAppManifest.xml file in my Windows Phone 8 project and I'm able to successfully launch my app from within another app using LaunchUriAsync. I've also registered the same protocol in my Windows 8 project.
// windows phone 8 uri map
<Extensions>
<Protocol Name="myprotocol" NavUriFragment="encodedLaunchUri=%s" TaskID="_default" />
</Extensions>
On Windows 8, I am able to launch the app with by a simple hyperlink using my given protocol "myprotocol:".
On Windows Phone 8, I tried typing the protocol in the browser location bar, but I get an IE error saying this type of address is not supported. This makes me concerned I won't be able to launch my app from a web page simply by using my app specific protocol in the hyperlink.
Does anybody have any experience with this? Am I just paranoid?
fyi: here's the info on URI Associations in WP8
sometimes the simple answer is often overlooked.
Yes, everything is in place to function correctly. It appears to only be a restriction with IE Mobile.
I set up a web page on my server with a link click me and was able to successfully launch my app view IE Mobile on the emulator.

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.

Catch NFC NDEF-Text-tags system-wide?

My Windows Phone 8 app should react to NDEF-Text-encoded NFC tags, no matter if the user is currently in another app or on the homescreen. On Android, this works by having the app "subscribe" to certain tags (e.g., NDEF-Text, in my case), and the operating system will allow the user to choose from a list of apps if more than one app can process the scanned tag. Is there anything comparable for WP8? At the moment, I am using
ProximityDevice _device = ProximityDevice.GetDefault();
long _subscriptionIdNdef = _device.SubscribeForMessage("NDEF", MessageReceivedHandler);
in my MainPage-class, which works fine, but obviously only if the user has launched my app prior to scanning a tag.
Unfortunately, for the moment NDEF-Text tags can't be handled by third party apps on Windows Phone 8.
If you want the OS to launch your app, you will have to either use the NDEF-LaunchApp record type or register a custom URI scheme.