Android :: Reducing Permissions
Aug 30, 2010
I've been following the "Is there a way to request permissions from a user as you need them?" thread with a lot of interest, but even if someone is convinced to make the Android permissions system better, it doesn't do anything for right now.
So, I thought I'd start a thread for coming up with alternative ways to reduce the permissions your app needs.
My app absolutely needs internet access (it's useless without it), and it uses Google Maps extensively (it's the main activity), so I have the following :
CODE:.................
I want to be able to know if I have a network connection, hence the ACCESS_NETWORK_STATE. I also try to use GPS hence the "ACCESS_FINE_LOCATION", and if GPS is not available I try to find the user's location using something else hence "ACCESS_COARSE_LOCATION" and of couse the "INTERNET" permission. I also use the "My Location' feature of Google Maps.
So... the question is : Is there a robust way to use Google Maps, and be able to send requests to my server without all those permissions (in a user friendly way) ?
I'm also experimenting with C2DM, so I have the following:
CODE:................
If I want to use C2DM, it seems I am stuck with those... Anybody know
Now... I also want to use the camera (optional) and vibrate (optional but most users will want it) so I have to add :
<uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.VIBRATE" />
Total 10 lines of permissions in the manifest.... AND this is AFTER removing 4 other permissions that a small percentage of users would have found very handy, AND not adding a few other features because of the permissions bloat they would have added
CALL_PHONE READ_CONTACTS GET_ACCOUNTS SEND_SMS
So... given all of this, is there a way to reduce the permissions I need any more than I already have? AND why do I need a total of 8 permissions just to ask my server for the data they want, and try to keep them current using C2DM? Surely those permissions could be reduced somehow.
View 7 Replies
Oct 29, 2010
Reduce the number of permissions? What exactly do you mean by that?
View 4 Replies
View Related
Aug 24, 2010
I have a widget in my app (in single choice mode) and the list is longer than the screen so it requires scrolling. There is a lot of space above and below the text so I think that space could be reduced (and the font size) so that everything fit without scrolling. I haven't been able to figure out how to reduce that space.
I'm also trying to get a single checkbox below that list and i tried making 2 listviews on top of each other on the linear layout but it didn't work.
View 2 Replies
View Related
Jul 23, 2012
The permissions say that you must agree to allow them to delete files from your storage including your SD card; must agree to allow them to extract any information from your phone, etc. In other words they can do any thing they want with your phone and the data in it.
Is there any way to not grant these permissions and still get updates?
View 2 Replies
View Related
Jun 22, 2009
I want to reduce the size of my image file to transfer it over the network. Do anybody know how can I reduce the file size using andriod APIs.
View 3 Replies
View Related
Aug 22, 2010
I want to reduced the size of Android Emulator i.e. come up with your SDK?As Emulator size is greater than my laptops screen size, unable to see whole content on simulator.
View 3 Replies
View Related
Aug 3, 2010
I am loading image url on to webview it fetching the image as well but I need to display it in resizeable it means the height to be reduced, help me to get reduced height of the image.
View 1 Replies
View Related
Sep 17, 2010
Is this possible as I only use three and I guess the other 4 will be using some ram as they are available?
View 2 Replies
View Related
Nov 23, 2010
I've just been trying to download the latest update for the HTC Desire on Vodafone, but I can't install it, due to lack of internal memory.
I have checked all my apps & the ones I can "move to SD" have all been moved, but some apps won't give me the option to "move to SD"
My internal memory is still quite full (129mb out of 147mb)
Is there a way of moving stuff from the internal memory to my SD card?
View 12 Replies
View Related
Dec 1, 2009
I don't see where anyone has asked this before, so I guess I'm the first?I find myself selecting items when all I want to do it scroll down the page. I find myself calling people when all I want to do is scroll down my contacts list, and while browsing on the internet, scrolling through a web page ends up with me selecting hyperlinks instead.Is there a way to make it so you have to keep your finger on an item a little longer to actually select it?
View 8 Replies
View Related
Aug 22, 2010
When typing on the keyboard, I frequently use secondary symbols, by holding down a button and wait for the secondary options to appear. However, it takes some time for that to happen, and the unnatural pauses makes me a bit frustrated when i'm typing. I like typing fast, and I barely tap the buttons when typing. I wanna know how I can decrease the time needed to hold down the buttons until the secondary options appear, so that I can test a few values and find something I am comfortable with.
View 4 Replies
View Related
Nov 9, 2009
Is it possible to prevent the screen from locking? Right now, I have to wake the phone, then unlock the screen. Waste of time.
Also, it is a minimum five key press to make a call. Wake > Unlock > Dialer > Favorites > Person. Is it possible to have one-touch calling from the home screen?
View 46 Replies
View Related
Jul 30, 2010
In android manifest code these permissions are used sometimes.for what these are used?
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
View 4 Replies
View Related
Sep 25, 2010
I know where to go to view them, but how can you change them?
View 1 Replies
View Related
Jan 18, 2010
I'm currently reading the specs about Android's Security system and something is not clear on my mind... Can somebody explain me ? About the Permissions, it is possible to set four levels (Normal, Dangerous, Signature and SignatureOrSystem) The documentation is here : http://developer.android.com/reference/android/R.styleable.html#Andro...About the "Dangerous" level, it's written : "For example, any dangerous permissions requested by an application may be displayed to the user and require confirmation before proceeding, or some other approach may be taken to avoid the user automatically allowing the use of such facilities." What does "Some other approach may be taken..." means ? How does that work ? Is there any example?
View 4 Replies
View Related
Jun 28, 2009
I have found the solution to this problem, the issue was I was also supposed to add the data tag:<data android:mimeType="application/vnd.wap.mms-message" />.Can someone provide some sample code to access the contents of the MMS message received.
View 2 Replies
View Related
Nov 26, 2009
When I run any application from Eclipse on my real G1 device (a retail one, this is not a dev phone), I am granted the READ_PHONE_STATE and WRITE_EXTERNAL_STORAGE even if i don't declare them in the AndroidManisfest.xml. I actually can call TelephonyManager.getDeviceID () to retrieve the IMEI and I see these permissions in Settings -> Applications. I don't have this behavior in the emulator. Does anyone have the same "problem"?
View 6 Replies
View Related
Mar 4, 2010
I have some well-debugged XML-RPC interfaces on a site that work wonderfully from both PHP and from JAVA. Using Eclipse I am able to write Java apps using either the Redstone or Apache XML-RPC libraries quite simply. These test cases using the 2 libraries utilize JavaSE-1.6 (jre6) libraries as well as one of the 2 xml-rpc libs referenced above.
My problem is making this work on Android. I have added ADT to my Eclipse setup and easily executed the HelloWorld test using a virtual 1.6 or 2.1 Android device - no problems. Whenever I go into the Build Path in Eclipse and add the external jars for either the apache or redstone XML-RPC libs my console goes wacky with a ton of the following:
Ignoring InnerClasses attribute for an anonymous inner class that doesn't come with an associated EnclosingMethod attribute. (This class was probably produced by a broken compiler.)
If I push ahead and debug the code when it actually ships off the XML request I get an exception out of the XML library on permissions of some sort. Why does this only happen in an "Android" project. These libraries seem to have no problem running in Non-Android standard java configs. Once we proof the ability to talk to our server we can proceed down the road of actually porting our app to Android.
View 2 Replies
View Related
Aug 13, 2010
I have a service which both downloads a file and saves it, and it seems I can only specify one permission.
<service android:enabled="true"
android:name=".DownloadService" android:permission="android.permission.INTERNET">
</service>
or
<service android:enabled="true"
android:name=".DownloadService" android:permission="android.permission.WRITE_EXTERNAL_STORAGE">
</service>
View 1 Replies
View Related
Mar 25, 2010
This seems to be a bit of a vexed issue: see
http://groups.google.com/group/android-developers/browse_thread/threa...
Like the person who started that thread, I need to get a unique ID for a device, without using scary permissions for TelephonyManager. I've tried
id = android.provider.Settings.Secure.getString(getContentResolver(), android.provider.Settings.Secure.ANDROID_ID);
but that just produces "android_id" on my phone. I'm using a Nexus One and Android 2.1.
View 7 Replies
View Related
Sep 24, 2010
I created an application that starts a service. This service is expected to run in background. This service has to access the Location. I am currently unable to do so I have given permission to my Manifest file I think the issue is that the application has the permission, but the Service does not ! What happens is that the service keeps running even if the application is stopped .Does the Service need special / different permissions ? How do I assign permissions to Service ( my service class extends : Service).
View 2 Replies
View Related
May 27, 2010
For the current application/widget I'm creating I have not set any permissions yet, altough the apk files I have already generated (for example this one: http://code.google.com/p/workregistrationwidget-android/downloads/det...) on install it notifies the users that it requests both SD card access and phone state access. The application source is available here: http://code.google.com/p/workregistrationwidget-android/ Can anyone have a look and tell me what I do wrong or is it just a bug?
View 4 Replies
View Related
Dec 23, 2009
I downloaded Unit Converter, and noticed that the market said it needed no permissions, while the manage apps list on the phone said it needed to modify the sd card and read phone state. Not that this was a huge deal, but why would they be different?
Anyways, how does everyone like that unit converter? It seems like it has everything!!
View 3 Replies
View Related
Sep 3, 2010
I have an application which has some of it's activities restricted via my own permission. The permission is published in the manifest of the application A and a second application B should request this permission and then be able to call an activity from app A. Both applications belong to me and are signed with the same certificate (they share the same keystore and alias/password from it). Application A gets granted the permission but app B gets never granted the permission! Logcat tells me about this during the installation and the app crashes with an security exception when trying to start the activity from app A. What the heck am I doing wrong? Could it be something with the application signing? Please help me, I'm totally out of ideas.
View 3 Replies
View Related
Oct 8, 2010
I was looking to install handcent sms on my phone and noticed that it needed a ton of permissions! it makes me feel a little uneasy how much access i have to grant it. why does it need so many when it just reads and send texts?
View 1 Replies
View Related
Apr 9, 2009
We are a team of Android developers and we are facing a serious problem for quite some time. Our app (a game client) is designed in such a way, that once it's installed it can be used to download games from a game server. In order for the downloaded games to work, they have to be installed and launched by the client.The problem is that the client has no write/update rights for the / data/dalvik-cache directory, unless we specifically execute the chmod 777 command for that directory. Setting the android.permission.INSTALL_PACKAGES permission in the client's manifest file also doesn't work. After reading countless forums where other people have complained about the same problem, we would like to know when this issue is going to be resolved. Apparently the code for this feature already exists (the DexFile class of the so called "cupcake" release) but it hasn't been released yet.What's more frustrating is that the Android team points out that all Android apps are equal, that system apps are equal in rights to custom apps. Obviously this is not the case. If the client game app is installed in the /system/app the problem described above is solved. System apps have the right to dynamically install other apps. Regular apps (installed in the /data/data folder) do not.Is this issue going to be resolved anytime soon? Will the "cupcake" DexFile class going to be present in the next release? This is a rather urgent problem since we are waiting for this new functionality in order to continue development.
View 14 Replies
View Related
Jan 6, 2010
I'm trying to get rid of the mentioned (READ_PHONE_STATE and WRITE_EXTERNAL_STORAGE) auto-permissions in my signed apk, but I can't. I know it is an issue with targeting 1.5, but this isn't my case. I'm targeting >=1.6. I've checked everything: In my manifest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.aaa.bbb"
android:versionCode="1" android:versionName="1.0.0">
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="4" />
Eclipse generates the proper value in default.properties: target=android-4
View 3 Replies
View Related
Aug 18, 2010
Why do apps always seem to ask for so many permissions when downloading, I wanted to download a news reader but it wanted access to calls too. Is this normal?
View 2 Replies
View Related
Sep 28, 2010
Is there a way to 'customize' the permissions that an app can use when installing or using said app? I would like to be able to say that this app can use GPS but not have access to my Contacts, or allow it to use the network but not access my SD card.
I know that this would likely disable different parts of the app but I am okay with that. I would like to be able to control which functions I give it permission to to use without only having the option to choose to install it or not based solely on what the developer set up.
View 3 Replies
View Related
Aug 28, 2010
I ask because I have an app that I want to launch with permissions that apply to it at that stage but I am planning to release an update that will need more permissions, but I do not want users to not install the original app because it does not make sense to have a certain permission for it.
View 4 Replies
View Related