Access names of other apps -windows phone - windows-phone

I know one can't access internal storage of another app,but can we make an app that just gets the names of all other apps installed?

No you do not have access to the other apps installed that are not "Microsoft" apps. The best you can do is have access to "launchers." Read this article by Jeff Blankenburg: http://www.jeffblankenburg.com/2010/10/07/31-days-of-windows-phone-day-7-launchers/
Per Jeff's article (source code is available via the url above):
For a quick look at the list of Launchers, here’s what you’ve got so far:
using Microsoft.Phone.Tasks;
BingMapsDirectionsTask – allows you to provide turn by turn directions from either a start AND end point, or from the user’s current location to an end point.
BingMapsTask – you can use this task to launch a map with a specific point labeled.
ConnectionSettingsTask – a task that allows you to direct your users to their wi-fi, bluetooth, and other settings of their device.
EmailComposeTask – allows the user to send an email using their email accounts.
MarketplaceDetailTask – launches the Windows Phone Marketplace, and takes the user to a specific product offering.
MarketplaceHubTask – launched the Windows Phone Marketplace, and allows you to specify a category of applications to show by default.
MarketplaceReviewTask – takes the user to the Windows Phone Marketplace to review the current application.
MarketplaceSearchTask – launches search results for the Windows Phone Marketplace, based on a search term your user enters (or that you specify.)
MediaPlayerLauncher – launches the internal Media Player application, and plays the media file that you specify.
PhoneCallTask – launches the Phone application and displays the provided phone number and name. The phone call isn’t dialed until the user presses “Call.”
SearchTask – think of this as a way to provide a Bing search from your application.
SMSComposeTask – launches the Messaging application, and presents the user with the ability to send a text message. You can specify recipients and message body, but the user has to send it.
WebBrowserTask – launches the Web Browser, and navigates to the specified URL.
Also, Windows Phone 8 has released some new features to add to this list. Check out the new items via MSDN.

Related

How to obtain the existing Google Analytic clientId on OS X and/or Windows for use with Google Measurement Protocol

We are extending our analytic coverage to include actions on our Desktop apps for Windows and Mac OSX.
The Google Measurement Protocol is simple enough to use:
https://developers.google.com/analytics/devguides/collection/protocol/v1/
Is there a way that we can extract the existing Google client-id, that is, the id generated by Google and generally stored in a cookie on the computer that uniquely and anonymously identifies the client?
For clarity - you would typically use Javascript to extract it in a web-page as follows;
https://developers.google.com/analytics/devguides/collection/analyticsjs/cookies-user-id?hl=en#getting_the_client_id_from_the_cookie
How do you do the same using a language such as Swift or Objective-C on OS X, or MFC/C++ on Windows.
The client id is generated by the Javascript tracking code (or the SDK respectively). So if you use the measurement protocol there is no pre-existing client id that you could extract.
The good news is that you can generate your own. Google Analytics isn't critical w/r/t what it accepts as client id, any string will do - however to serve it's intended purpose it must be unique, so a UUID is recommended.
The best way to do this would be to use the User ID feature of Google Analytics. This feature lets you send your own ID instead of using the randomly generated Client ID (that is stored in a cookie).
So if the user visits your website and identifies themselves (e.g. logs in), then you would sent their "customer ID" using the User ID feature. Then, if that user goes on to install your desktop application and also identifies themselves (by logging in again), then you would use the measurement protocol to send the same "customer ID". You would do this by using the &uid measurement protocol parameter. Google Analytics will then identify this as the same user an you will basically get x-device behaviour in GA. This will allow you to figure out that campaign A drove a website visit as well as an eventual desktop app download.

Start a Hangouts calls from a website

I want to setup a "Hangouts"-button on my website in a way that my end-users have to click on a button, a sales person is being notified and will start a hangout call and shares the link of that call (via a chat, preferably). So end user can join that hangout call provided via the link without any google account and by just entering his/her name.
I have setup Hangouts on my site via https://developers.google.com/+/hangouts/button and my application via https://developers.google.com/+/hangouts/getting-started but still I didn't find a programmatic way to do this. IMBK I think there is no document available either officially.

Google Tasks API authorization

I can see many related questions on SO, but none that answers exactly what I'm confused with.
I'm using Google Calendar API in a .NET desktop application that allows user to provide his/her username/password, logs in on his behalf and adds some events to the calendar. Now I want to do exactly the same thing for Tasks feature. I'm trying to use Google Tasks API for this, but have been told that I need to do some OAuth kind of authentication, and even before that, I need to go to my gmail account and set permissions and get my project "key" to enable it.
Now does every user of my application need to do these steps in their Gmail account? Or do I need to do this in MY gmail account once and then my application code will be able to use the generated project "key" to enable my users to add tasks to THEIR gmail tasks list?
Figured it out. For anyone having a hard time understanding this, here it is:
The "key" generation step needs to be done only once per application, not for each user who's going to use your application. To generate a key, login to your Google Account and go to Google APIs Console page. Click API Access button and that's where you can generate keys for different kinds of applications like browser apps, desktop apps, Android apps etc. After registration, you'll need to take Client ID, Client secret and API key from this page and put them into the code. Sample code (.NET) for task creation and several other Google features is available here.
Once your user runs your application, he'll be taken to his Google account in his default browser where he'll be asked if he wants to allow this application to write to his calendar/tasks list. This page will display your logo and description text too that you can provide at registration time. Once allowed, this step won't be required again in the next one hour (this may be adjustable, i don't know yet).

How to search the Windows 8 contacts from .Net?

I'm doing estimates for a Windows 8 app, and I would like to programatically search the Windows 8 contacts store for a person's name based on their phone number or email address. Is this possible in WinRT/.Net? I can't seem to find documentation for an API to do this.
You can't do that per se. If you want to access the contacts locally, you have to use the Contact Picker Contract. That will bring up the People hub and let the user select one or more contacts that you can then operate on. If you want to search the user's contacts, you have to use the Live Connect APIs. Check out the Interactive SDK and this video from Build.

Allow user to create account on one device and use that account on others

I want to make an application that has some views for information display. If I install my app on my iPhone then it should display the info. If I then install that app on my iPad then the app should recognize the device and display the info related to my account.
Is there any way to find the single user of two devices without the user's iTunes credentials, or is it possible to generate a key that can identify the common user of both devices?
No, currently there is no way to associate multiple devices to a single user owning those devices given the information you've provided.
However, if you added, "the information I want to display in the views, pertains to the same user account in Game Center for both devices", then you could use the player's identifier from Game Kit API.
https://developer.apple.com/game-center/
This is being added well after the fact, but:
You could use iCloud APIs to accomplish this. These are distinct from iTunes credentials, but obviously the same type of prerequisite in that the user must have an account and it's not under your control.