Windows Phone - link to the publisher in the app store - c#

I have created several windows phone apps and I would like to link to my publisher's page to show all of the apps that I publish. Note that I am developing my app for Windows Phone 7.x and up using C# and XAML.
UPDATE
What I would like to do is show the following publisher page: From within Windows Phone, navigate to the Windows Phone store, then select any app, then select the "more from <Publisher>" link. This displays a nice mobile view of all of that publisher's apps. But I can't figure out how to bring up that publisher page directly from within my app. Any help would be appreciated!
Option 1) Link directly to the URL for my publishers page (using a WebBrowserTask)
Issue) All links to the store seem to require the en-US language embedded in the URL. I'm concerned about what will happen to users in other countries/languages.
Example: http:/www.windowsphone.com/en-US/store/publishers?publisherId=Microsoft%2BCorporation
Is there a language independent way to link to a publisher in the store?
Option 2) Use the MarketplaceDetailTask to link to the publisher
Issue) From what I've seen, this can only be used to link to an app. I tried using my publisher GUID and got: Marketplace Error - We're sorry, but we can't complete your request right now.
MarketplaceDetailTask marketplaceDetailTask = new MarketplaceDetailTask();
marketplaceDetailTask.ContentType = MarketplaceContentType.Applications;
marketplaceDetailTask.ContentIdentifier = <My Publisher GUID>;
marketplaceDetailTask.Show();
Option 3) Use the MarketplaceSearchTask to link to the publisher
Issue) This allows searching the store with any string. The problem is, when I put my publisher name in the search string, other apps are shown in addition to mine. My publisher name includes a common word and any app with that word shows up.
MarketplaceSearchTask searchTask = new MarketplaceSearchTask();
searchTask.ContentType = MarketplaceContentType.Applications;
searchTask.SearchTerms = "<My Publisher Name>";
searchTask.Show();
Any thoughts or suggestions would be appreciated!
Thanks.

As you're targeting WP7+, unfortunately using the zune:search URI only works on WP8 as it relies on URI Schemes, which was not backported to WP7. Based on these two posts, I tried the following on your behalf:
zune://search/?publisher=Henry%20Chong;
And a bunch of other things, but it seems that only zune://navigate is available on Windows Phone 7 and that only allows you to load a specific app. (Perhaps someone who feels like opening reflector or on the Phone teams could comment here...)
Two other things I've come across that you can look into:
1) There used to be an undocumented Zune api that you could query the marketplace against; it looks like this has been replaced by the Marketplace Edge Service, which you could try and dig around for:
http://social.msdn.microsoft.com/forums/windowsapps/en-US/f5294fcb-f4b3-4b19-9bda-f49c6a38b327/marketplace-edge-service-query
2) You could add a specific unique keyword to all your apps and use the MarketplaceSearchTask, as suggested here by Matt.
Personally, I'd go with #2 because:
you never know when the Marketplace Edge Service will change
1 is not technically supported by Microsoft
you won't have to replicate the page you're trying to display
Of course, there's also nothing stopping you from creating your own "Apps by X" page for your app and maintain it yourself manually.
Best of luck!

Related

IAP Windows Phone 8.1 Error: HRESULT: 0x805A0194

I have an error with the IAP, where I try to load the product list.
var listing = await CurrentApp.LoadListingInformationByProductIdsAsync(
new string[] { "Guld_pose_1" });
I get the error HRESULT: 0x805A0194 which I have read around should be misalignment between comitted version PhoneProductId and Publisher ID, according to this link and this link.
How do I find these numbers on the new dev store, I can only find the guides to the old?
I have found two publisher IDs on the dev center but no phoneproductID, or is this the SID?
A bit confused hope for some help.
And as always when you start the bounty the solution appears.
The issue is that I am developing a Wp8.1 silverlight app. When looking on the dev page you will not see the productId immediately shown. I found from a link that for wp8.1 the productId is part of the url for the app.
Go to the app on the devcenter. Choose the app -> app management -> app identity.
At the bottom of the page you can find the different links: http://windowsphone.com/s?appid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Copy the part after = and insert it on package.appxmanifest and WMAppManifest.xml as the ProductId, and the error dissapears.

Warning: MapServiceToken not specified

I have been making an UWP app with the using a MapControl but when I run the app I get an error in the bottom corner saying "Warning: MapServiceToken not specified". The XAML I am using is as follows:
<Maps:MapControl x:Name="MapControl1" Loaded="mapLoaded" ZoomLevelChanged="mapZoomChanged" MapServiceToken="AqK9nK0h_LngGSC8pHPzBJvl62yf617zRytgimB3fyYqdJPljcB-EGm3llmUUrlI"/>
As you can see I have specified the MapServiceToken and I have also tried specifying it using C# with no luck.
MapService.ServiceToken = "AqK9nK0h_LngGSC8pHPzBJvl62yf617zRytgimB3fyYqdJPljcB-EGm3llmUU...";
MapControl1.MapServiceToken = "AqK9nK0h_LngGSC8pHPzBJvl62yf617zRytgimB3fyYqdJPljcB-EGm3llmU...";
I have used www.bingmapsportal.com to get my token but I have also tried using the Application ID and Authentication Token from the Windows Dev Center. Any Ideas?
NOTE: For those who may be using older keys from Windows 8 platform
There seems to be an issue updating old keys to the Universal Windows Platform type. I had a key that was created in 2014, but even after I updated the key to Universal Windows it still would not authorize when I placed the key in the MapServiceToken value of the XAML. (it seems as though the value of the key itself never changes when you change the type on the key, even though it should update with a new value)
In order to solve this you have to create a brand new application key and use that value instead, and then the Warning message will go away.
I got the same issue but here is my solution.
First navigate to https://www.bingmapsportal.com/Application. Find the link to create a new key.
On the form, fill in the Application type field. The available options are:
Dev/Test
Mobile Application
Website
Windows Application
Even though you are developing a Xamarin.Forms project (that is intuitively a kind of mobile app), you must choose Windows Application rather than Mobile Application. Why? The reason might be "UWP is an Windows Application". Period.
Failure doing so will trigger the warning.
Sign into the Microsoft Dev account and navigate to this URI
https://www.bingmapsportal.com/Application#
Here the Key can be obtained for Universal.
It can be set in the XAML MapServiceToken, works fine!
Also, you can sign in directly on Bing Maps to generate a key.
https://www.bingmapsportal.com/
My Account -> My keys
For UWP, this key is quite long.
FYI, when I added the key on XAML for MapControl using MapServiceToken property, the app crashed my computer. Then when I restarted it, the App run well. Oh dear me...
Read Microsoft documentation
https://learn.microsoft.com/en-us/windows/uwp/maps-and-location/authentication-key
Generate new key and add it in MapControl MapServiceToken. Its work for me.

Get user information in Windows Phone 8 app

I'm making a game which have a hightscore table (on my server), now I need to get a unique information of the player (email, MS accout name, Live ID...) or any other way to define people to add to the highscore, so is there anyway to get that information ?
Take a look at the ANID2. It is an identifier that is unique to the Windows Live ID of the user and the publisher ID of the app.
string anid2 = (string)Microsoft.Phone.Info.UserExtendedProperties.GetValue("ANID2");
To use this Api you have to add the "ID_CAP_IDENTITY_USER" capability in the app manifest. You may also find this blogpost helpful.

How to register my application for text to speech in windows phone 7 in bing.com?

My requirement is text to speech in windows phone 7. So I search in google and I find out the link and I try to register in bing.com/developers page but its going some where
I have tried with this webpage link but its going to windows azure page.
http://www.bing.com/developers/appids.aspx
and I have followed this tutorial.
http://www.codeproject.com/Articles/259727/Text-to-speech-in-windows-phone7
Or else please suggest me any useful link for this problem.
Can anyone help me?
Just stumbled upon this question. Its quite old but I don't think you need Bing. The Bing speech controls are something I would use for speech to text, but you said you wanted text to speech. That can be accomplished quite easily on the Windows phone by using the SpeechSynthesizer. Please see this tutorial here: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj207057(v=vs.105).aspx
I just added simple text-to-speech capabilities to my Windows Phone 7 app (well, the beta version) using Text-To-Speech with Microsoft Translator Service.
You can download it from their site, NuGet, or from within Visual Studio (that's how I found it - Manage NuGet Packages - search for "Text-To-Speech").
Here's some C# code to get started...
// required for SpeechSynthesizer
using TranslatorService.Speech;
namespace AppName
{
public partial class MainPage : PhoneApplicationPage
{
private void TextToSpeech_Play(object sender, EventArgs e)
{
SpeechSynthesizer speech = new SpeechSynthesizer(CLIENT_ID, CLIENT_SECRET);
speech.SpeakAsync("This is a beautiful day!");
}
}
}
To use this library, you need to go to Azure DataMarket and register your application to obtain the Client ID and Client Secret that are necessary to use the service. You also need to go to https://datamarket.azure.com/dataset/1899a118-d202-492c-aa16-ba21c33c06cb and subscribe the Microsoft Translator Service. There are many options, based on the amount of characters per month. The service is free up to 2 million characters per month.

Get Localized Names of Installed Windows Store Apps in Windows 8

I want to populate a ListBox with the localized display names of all the installed Windows Store apps in a Windows 8 desktop app. I tried this:
string Apps = Interaction.Environ("ProgramFiles") + "\\WindowsApps";
foreach ( App in IO.Directory.GetDirectories(Apps)) {
XmlDocument xml = new XmlDocument();
xml.LoadXml(My.Computer.FileSystem.ReadAllText(App + "\\AppxManifest.xml"));
lbApps.Items.Add(xml.GetElementsByTagName("DisplayName")(0).InnerText);
}
But it adds up ms-resource strings and default apps that are uninstalled.
EDIT: I found that all the installed apps have their shortcuts in %LocalAppData%\Microsoft\Windows\Application Shortcuts but those shortcuts don't have the localized name and are non-functional when opened.
Instead of parsing the AppxManifest files directly, use the PackageManager class.
On MSDN, there are quite a few samples that demonstrate how to gather a variety of content about installed application packages, including the Enumerate app packages by user SID sample.
Did you try that: http://marcominerva.wordpress.com/2012/12/17/localizing-app-name-in-windows-store-apps/
If you set correctly the AppPackage Name on the AppDevCenter, your appx on the client side will return you the localized name.
I don't think that There are Windows Runtime APIs which can expose this particular information back to the app. The owner of app is responsible to providing the information to the Appx Manifest in the first place. whatever you can take a look there-[http://msdn.microsoft.com/en-us/library/Hh446622 ] hope something can be useful for you.

Categories