Listing installed applications in WP7 - windows-phone-7

In my application I need to share an item through various way (like facebook, twitter, linkedin etc). So I need to list the application installed in my phone show that I can share via any one appplication. So can anybody help me out?

It is not possible to know what other applciations are installed on a phone. Having access to this information would be a potential data privacy issue.

Windows Phone 7 has builtin support for this kind of actions with the launchers / choosers. Within the list of launchers you will find the ShareStatusTask which is opening the builtin 'share your status' control. This control checks your phone device for the profiles/networks to which you have connected. By using the Status property of the Task you can than fill in the message you want to share. In the opened control you can than choose on which networks you want to share your message.
See below code sample on how to use this task:
ShareStatusTask shareStatusTask = new ShareStatusTask();
shareStatusTask.Status = "Share my status on different networks";
shareStatusTask.Show();
NOTE: If you start a launcher from your app, your app will be deactived. Normally after completing the taks your app will be reactivated. For the overview of Launchers / choosers you can have a look at Launchers and Choosers Overview for Windows Phone

Related

Windows app store download permissions

I developed an app for Windows phone. Now I want to deploy it on Windows app store and wants to put restriction.I want only specific people will able to install it. How can I do that. Any suggestion will be appropriated.
Thanks,
Well that depends on who these specific people are. You can set age restrictions and region restrictions, and that's about it.
If you mean you want to hand-pick users that can use your app, then provide a login screen where you manually authorize your registered users.
If you mean that only users you choose can download the app, then you can't use the Store; you'll need to use sideloading.
You can control distribution in the Distribution and Visibility section of your app submission on the developer dashboard.
There are three basic options (for Windows 10 - two for Windows Phone 8.x):
Hide this app and prevent acquisition. Customers with a promotional code can still download it on Windows 10 devices
Give codes to the people you want to be able to use the app. This is Windows 10 only.
Hide this app in the Store. Customers with a direct link to the app’s listing can still download it, except on Windows 8 and Windows
8.1
Send links to the people you want to use the app. This will work on Windows Phone 8.1 as well as Windows 10. Anybody with a link can download it though, so it won't truly limit to just the people you want to use the app.
Hide this app and make it available only to the people you specify below, who can download this app on Windows Phone 8.x devices. A
promotional code may be used to download this app on Windows 10
devices
This is the classic beta-mode for Windows Phone 8.x. You can specify which Microsoft Accounts have access to the app.

Can Windows store apps generate UI Events?

I am considering writing a Kinect v2.0 Gesture -> Keyboard/Mouse event translator so I can control video games. Since I will be using Microsoft's SDK, cross-platform is out-of-the-question; it seems natural to distribute this through the Windows store. However, I know Windows store apps have significant restrictions. Can a Windows store app:
Run in the background (possibly with an elevated priority to ensure that the game doesn't miss input)?
Create user input events like "key-down" and "mouse move" that will be read by other applications?
Looking at Microsoft's capability page didn't seem to give me a definite yes or no.
You'll need to write this as a desktop app. Windows Store apps run in a sandboxed context with limited access to the system. They cannot interact with other processes as you'd need, and they cannot inject input events.

some of the iOS apps does not shows action extension feature in iOS8 devices

Basically when i do open in functionality in other apps basically it
will show tow options 1. open-in 2. extensions. But i am seeing some
of the apps not showing the other apps action extension feature. I do
not know how they are hiding it?. Or they doing something else to do
not show the other apps extensions other than iOS defaults action
extensions?.
Example:
YES: Mailbox, Dropbox, Box etc. - these app was able to show the other
apps action extension
NO: Evernote, Acompli, Zoho Docs - - these app does not shows the
other apps action extension.
Any idea? why evernote and Zoho not showing the other apps action extension feature?. Is there something they need to do on their side or i need to do on my side to make it show?.
Any help that might be really appreciated.
screenshots attached.
Action and Share extensions have an activation rule, which is stored as NSExtensionActivationRule in their Info.plist. These extensions only appear if the host app is sharing data that matches the activation rule. For example, if an app shares images and the extension can only handle text, the extension will not be displayed as an option in that app.

Can I run my winRT application as a screensaver?

Is there a way to make my winRT application as a screen saver in xaml?
As Jerry says, there's no straightforward way to make a Windows Store app screensaver. However, there's a roundabout solution that might work for you on Windows 8, but not Windows RT. I have it nearly working. I'll share what I have so far.
A screensaver is just an executable with a .scr extension that's kept in C:\Windows\System32. For example, look at C:\Windows\System32\Bubbles.scr. The solution I have in mind is to create a .scr screensaver whose only purpose is to launch your Windows Store application, which you say will use XAML.
You can't launch a Windows Store app from the command line directly, so you'll create a launcher app. Take a look at a blog post called Automating the testing of Windows 8 apps by Ashwin Needamangala. Partway down the article, look for the section called Automating the activation of your app. It contains a sample C++ application which can launch Windows Store apps in the following way:
C:>Win8AppLaunch.exe Microsoft.BingNews_8wekyb3d8bbwe!AppexNews
The sample launcher on that page needs to be modified, but before you do that just copy the code into a C++ console app:
You're almost ready to test it out from the command line, but you need to specify the name of the app as an AppUserModelId. The details are in Ashwin's post, but to paraphrase you first want to allow the execution of PowerShell scripts on your system with:
PS C:> Set-ExecutionPolicy AllSigned
Then run this PowerShell script:
$installedapps = get-AppxPackage
foreach ($app in $installedapps)
{
foreach ($id in (Get-AppxPackageManifest $app).package.applications.application.id)
{
$app.packagefamilyname + "!" + $id
}
}
You might like running it in the Windows PowerShell ISE. It's pretty slick. Find the AppUserModelId of your app and then test Win8AppLaunch.exe from the command line, as shown above. This should launch your Windows Store app from command line.
Next, modify the C++ launcher to hard-code the AppUserModelId of your application instead of parsing it from a command line argument. I created a Gist of this. The important part is the line where I declare myApp.
Build the new executable, rename it MyScreenSaver.scr and put it in C:\Windows\System32. It will then appear in the Screen Saver Settings Control Panel. You can preview the screensaver there, and it works. However, if you wait for the screensaver to launch, it will briefly bring up a console window and never fully launch. I'm not sure why. I tried disabling the creation of the console window by switching the project to a Windows app, but that didn't help. You can try that yourself by changing Properties | Configuration | Linker | System | SubSystem to WINDOWS. It's a little more involved, as you'll also need to change the entry point from _tMain to _tWinMain. Contact me through my blog if you want the details. My StackOverflow profile lists it.
At this point it's almost fully working. You might try starting with a blank C++ screensaver that you know works, and then copy in the above code. If I get more time, maybe I'll try this myself.
Cool idea. But, no.
If you want your application to really do something for Windows other than run as a simple app, then you write an extension app. Here's the official word:
Extensions An extension is like an agreement between an app and Windows. Extensions lets app developers extend or customize standard Windows features primarily for use in their apps and potentially for use in other apps.
There are these types of extension apps right now:
Account picture provider (extension)
When users decide to change their account picture, they can either select an existing picture or use an app to take a new one. If your app can take pictures, you can use this extension to have Windows list your app in the Account Picture Settings control panel. From there, users can select it to create a new account picture. For more info about this extension, see the UserInformation reference topic. You can also check out our Account picture name sample.
AutoPlay (extension)
When the user connects a device to a computer, Windows fires an AutoPlay event. This extension enables your app to be listed as an AutoPlay choice for the one or more AutoPlay events.
Background tasks (extension)
Apps can use background tasks to run app code even when the app is suspended. Background tasks are intended for small work items that require no interaction with the user.
Camera settings (extension)
Your app can provide a custom user interface for selecting camera options and choosing effects when a camera is used to capture photos or video. For more info about this extension, see Developing Windows Store device apps for cameras.
Contact picker (extension)
This extension enables your app to register to provide contact data. Your app is included in the list of apps that Windows displays whenever the user needs access to their contacts.
For more info about this extension, see the Windows.ApplicationModel.Contacts.Provider reference topic. You can also check out Managing user contacts.
File activation (extension)
Files that have the same file name extension are of the same file type. Your app can use existing, well known file types, such as .txt, or create a new file type. The file activation extension enables you to define a new file type or register to handle a file type.
Game Explorer (extension)
Your app can register with Windows as a game. To do this, you must create a Game Definition File (GDF), build it as a binary resource in your app, and declare that resource in the package manifest.
Print task settings (extension)
You can design an app that displays a custom print-related user interface and communicates directly with a print device. When you highlight the features that are specific to a particular make and model of print device, you can provide a richer, more enhanced user experience.
Protocol activation (extension)
Your app can use existing protocols for communication, such as mailto, or create a custom protocol. The protocol activation extension enables you to define a custom protocol or register to handle an existing protocol.
SSL/certificates (extension)
Digital certificates are used to authenticate one entity to another. For example, certificates are often used to authenticate a user to web services over SSL. This extension enables you to install a digital certificate with your app.
cite: http://msdn.microsoft.com/en-us/library/windows/apps/hh464906.aspx
Unfortunately, nothing has to do with screen savers. The technical reason, at this time, you cannot write a Windows 8 app that functions as a screensaver is because Windows 8 apps are fundamentally tied to run inside the WinRT execution environment. That shell does not extend out past the Start menu in this current version of Windows. So, there's no way to execute outside - like as a screen saver. Screen savers are still built the "old fashion way".

Install other applications in a WP7 application Programatically

What the WP7 application needs to do?
- download some others applications and install them automatically on the device.
The device will send first a request to a web server with some rules and will receive an answer containing the links to the applications that need
to be downloaded and installed on the device.
As far as I read, the Marketplace is the only way to get apps on a Windows Phone 7 device, so let's suppose that the applications I want to
install are already on the Marketplace and I can refer to each one by their links (according to this post).
Can I download programmatically an application from the MarketPlace (having the link to it) in another application and install it
on the device?
I do not want to open the app link in browser because this opens the Marketplace hub and points me to the application location.
Just for my curiosity: every time you want to install an application from Marketplace you need to sign in with a Windows Live ID?
Thanks & Regards,
Paul
You cannot dynamically download or execute code or install applications on WP7. The closest you can get is launching a MarketplaceDetailTask which directs the user to a page on the marketplace where they can choose to download the application.
The user's Live ID remains signed in until they sign out from Settings so, no, they don't have to sign in more than once.

Resources