How to set <PrivilegedApplications> tag in device metadata? - visual-studio-2012

Im working on a windows 8 store application so as to send an sms. I have the code running but the i get an error saying "Access Denied" and that my application does not have enough privileges.
Is there any way for me to create my own app (which uses the sms capabilities of the device) and test it out without having to register it with Windows Hardware Dashboard?

This probably means that you need to add the capability to the manifest for your application. If you want to take a look at this, download the sample here (pick any language):
http://code.msdn.microsoft.com/windowsapps/Sms-SendReceive-fa02e55e
What you're looking for is the SMS capability in the manifest. It looks like it doesn't show up in the VS designer, but you can see it in the raw XML. Open the project, and in solution explorer, right click on package.appxmanifest. Then click view source. Near the bottom of the manifest, you'll see this:
<Capabilities>
<DeviceCapability Name="Sms" />
</Capabilities>
Try adding that to your application's manifest. I suspect that's what you're missing.
Thanks,
Ben

This was what I was able to find out :
So by using this process of "Sideloading", you can install apps directly to a device without having to go through the windows store. I will provide the links that got me going in this project,
Sideloading
Discussions
Creating the Metadata
Edit: WDK 8.1 now comes with a new Metadata Authoring tool that is easier/simpler to use. :)

Related

How to test ChromeOS enterprise features during development?

I am working on a Chrome extension running on Chrome OS.
The extension needs the enterprise.hardwarePlatform permission to be able to get hardware information about the device.
The question is: How can I test my extension?
After installing the extension manually, the API to get the hardware information will not work as it needs the extension to be forced-installed by the enterprise policy.
But how to force-install the extension if it is not published in the Chrome Web Store?
Google Workspace seems to allow to refer only to published extensions in the enterprise policy. But obviously I do not want to publish the extension under development. Also I didn't find a "Web Store for development" where I could upload the extension and then refer to it from the policy.
So how to do this?
I found this question:
https://support.google.com/chrome/a/thread/107510644/how-do-i-develop-a-chrome-extension-with-enterprise-permissions?hl=en-gb
However, did not find the answer in any of the provided links. All information seem to point to publishing on Chrome Web Store first. But then would it be impossible to manually test a feature like this before publishing?
Thank you for your answers in advance.

The search option does not show on a mobile device using Housez theme

I decided to use the Housez theme as it advertises as super easy and flexible to use. I am not a web designer but have managed to get my site up and running. www.islandestates.net The problem I have is that there is no search option for the properties on a mobile device? The desktop version works well but how do I get a search box onto the mobile version?
The support from Housez is non existent, I have submitted a request to favetheme but they never reply.
Any help would be aprreciated.
Malcolm

Chrome extension to change Desktop wallpaper

I'm diving into the world of Chrome Extension development, primarily because there is a very small feature that is missing in Chrome that I miss dearly. The context-menu option to "Set as background/wallpaper" like that found in Firefox. Sounds trivial, but it's convenient.
I have most of the "basic" stuff worked out with the manifest file, am able to install it, even managed to get it to show up as a context menu item.
The problem obviously is that I am wanting to mess with a user's OS-level settings which is extremely difficult because of security issues (fully understand this).
I found an extension that allowed this in older versions of Chrome, and it looked like the developer used some type of .dll and C++ to accomplish this.
I'm not really sure how to make this work.
Since that Chrome doesn't allow these kind of manipulations (such as your PC's settings), you will need to create a native application that will run beside your extension. When the user chooses the image from your extension and selects "use as wallpaper", you will use the native messaging API to send a message to your desktop application, that will set the wallpaper (and do whatever else you can't do within a chrome extension) for you.
You can use the chrome.wallpaper app api to set the wallpaper after using the messaging api to send the image from your extension.

Provisioning profile problems

Whn I try to upload my app, I get this error in Application Uploader "Application failed codesign verification. The signature is invalid, contains disallowed entitlements, or it was not signed with an iPhone Distribution Certificate.".
If I open MonoDevelop, properties and select "iPhone bundle signing", then I see a "Provisioning profile", but if I click another topic (eg Crash report) and go back to "Provisioning profile", then it suddenly says "Unknown" and a guid.
How do I tell MonoDevelop to use the correct Provisioning profile?
I deleted some old profiles (in Organizer), but they still show in MonoDevelop.
Unfortunately the "provisioning hell" created by the Apple signature system is made even worse in MonoDevelop.
There is no provisioning manager, no way to setup and associate all the provisioning profiles and the keys to a specific monotouch app. MonoDevelop lacks a wizard to automatically create or guide the user in the creation, download or backup of the right profiles, keys and appIDs.
The best way to know if a profile or a key is wrong, expired, incompatible with an appId, or rejected, is to check all of them manually in the XCode Organizer (you can find it in the XCode "Window" menu).
Once in Organizer, you need to go to click on the LIBRARY -> Provisioning Profiles section on the left, and then click on the Refresh button to synch your profiles with apple server (if you have those on file or you are on another dev computer and you have to install only selected profiles, click on the Import button and manually select the files).
Then you need to attach your ios device and when it appears in the DEVICE->your_iPhone_or_Ipad name.. you need to drag and drop the provisioning profiles that you need from the LIBRARY->Provisioning Profile to the DEVICE->your_iPhone_or_Ipad_name->Provisioning Profiles...
Many things can go wrong anyway, especially mixing old profiles with the new profiles supporting iCloud or some other advanced app features. There is no way to know if a bundle id is valid, if the entitlements are allowed, if a profile or an appID is enabled or not to use iCloud, Notifications, IAP, etc., or if it's registered for Developer, AdHoc or Distribution, and what product id strings it's compatible with. You need to go by trials and errors. Even the simple creation of an ad Hoc version of your app enabled for a trusted remote tester is a long and perilous road. There is no users and testers profiles manager in MonoDevelop, you need to remember what goes with who every time.
If you are on a different developer machine, you also need to install the registered developer keys in the local KeyChain (I suggest to do a backup of those keys somewhere: if you lose those keys, you will be unable to update your app in the future!!).
Let us hope that Xamarin will add a profiles and keys manager soon.
#Emanuale mentions alot, but he is going the long route on a lot of these.
There is a simpler way to go about everything. Here is the cut and dry approach:
Login to the provisioning portal on the web
Create an App ID for your company as "com.yourcompanyname.*"
Create a provisioning profile for this app ID for both development and distribution
(I would also recommend to delete any profiles you don't need)
Open XCode->My Organizer, and press the refresh button in the bottom right corner (you will see all your profiles from online appear)
Deploy your app to the device from MonoDevelop (make sure your bundle ID is com.yourcompanyname.yourappname)
This is the simplest way to go about this. No need to mess with provisioning profile settings in MonoDevelop, the defaults should work.
The only gotcha is if you need to support push notifications. The com.yourcompanyname.* profile won't work, you will have to make a profile specific to each app in this case.
Great answer jonathanpeppers! Just a 2c, now XCode->My Oganizer is Preferences->Accounts
If the accepted response doesn't help, you should also ensure that your Signing Identity matches the Provisioning Profile you're using, and that it has a private key. These can be switched up if you have multiple Signing Certificates installed, and you won't be able to tell the difference from Xamarin Studio. See
https://stackoverflow.com/a/37856762/660194

Ideas for launching an installed app from a webpage

I am thinking about having the following use-case:
User installs application on local machine.
User goes to our website, and are presented with many links (choices).
User clicks on a link.
Application starts, with some information contained within the link passed to the application.
Step 4 is obviously a security minefield. The end goal is that the user makes a choice, and if the application is installed, it starts with some information passed to it (ie command line parameters, or perhaps a temp file somewhere on the user's machine)
Can I/ Should I access the registry from javascript? Are there any ideas about how I might go about this? Do you have an alternative suggestion?
Assuming the applications the user installs are also developed by you.
Register a file extension for use by the specific application - then your web links can be links to a file that is downloaded and auto-run by your app. The file could contain details on the defaults for your app to use.
Sort of like how clicking on a .pdf file opens your pdf reader.
As an alternative to the file-extension solution you may want to know about Custom Application Protocol feature. Link is for Windows but there are nearly same techniques on other systems. I can't say if this approach works in every browser but you may want to try it out.
Accessing the registry from JavaScript inside a browser is nigh on impossible for the security implications. To access the registry from the web, I'd imagine you'd have to use a binary (C++ or others) program that can read the registry, but also has an HTTP module to communicate with your server.
Sounds like you might need the Click Once deployement feature for your app. I think once it's installed over http there should be a pretty easy way to launch an executable.
http://en.wikipedia.org/wiki/ClickOnce

Resources