[Android Software/Hacking General [Developers Only]] Lanchon:
hi FFU! good news that u made so many decisions and u can move on! just some comments... most i've written before but might have gone unnoticed.

> I want to resolve this by making it possible to create/save a 'default' profile which will be used when there are no specific settings. Perhaps even separate profiles for system and non-system apps (although since you can't actually install system apps as such, this seems less important).

separate defaults are great for handling major system upgrades which might bring new system apps. sys default would tipically be set to allow everything.

> 3. The ability to 'allow everything' when the service is working. This is not the same as a 'kill switch' because the privacy service (i.e. OpenPDroid service) is still involved. Having thought about a 'kill switch' which overrides even attempting access to the service: I am not planning to implement that at this stage because it will add to the overheads when things are running normally, and having 'allow on error' and a service-based way of 'allowing all' achieves the same thing.

better if override is allow all, deny all, disabled (no override), and is a per-app type setting (user/system). this provides a way to administer the database with a working phone that does not leak too much info (this is important, please see my next post) by setting user: deny all, sys: allow all.

it is also a very good rationale to implement the real overrides not dependant on the service. this is way better functionality than what "allow on error" can provide. i can accept user:deny/sys:allow as a fallback mode to recover my phone, but i would NEVER EVER accept allow everything. i am totally ok with the performance hit of a check. it can be only a small fraction of the db lookup. also, depending on design, it might be cached. the user/sys determination only has to be made in run time if the overrides are set to different values.

> The reason I would prefer to use 'deny on error' rather than 'throw permission exception on error' is that in many cases throwing a permission exception will cause an app to crash, whereas it may be able to tolerate empty data without any major side effects. If there are major side effects, I wouldn't imagine them to be worse than a crash (although I could be wrong).

well if you are going to make the error action configurable in the end, why not have the throws option? i would like to use that setting. feeding "wrong" info (ie: info that i didn't intend to feed) to my apps is something that i don't want happening. it doesnt threaten privacy, but it does threaten integrity. imagine a very crappy app that logs into a service with the device ID as the user identifier (instead of using a persistent cookie), then syncs. what would happen to my local storage if it logs in with the empty string? what if it ends up synching to other users in the same situation? id take the force close any day.

---------- Post added at 07:15 AM ---------- Previous post was at 06:55 AM ----------

upgrade problems: PDroid (original) --> OpenPDdroid

i would like to start contributing more than random thoughts to this project but i cant. i cant migrate to OPD without leaking info. it seems i will need to wait till i buy a new phone to start using OPD. on top of it, im stuck with android 4.1.2. this is what i tried:

-disabled all data

-spent half an hour taking screenshots of per app PDrod configuration

-backed up PDroid config to ext and int memory

-recovery: nadroid backup

-titanium backup some key apps (eg: pdroid 1, the launcher (as apps will be frozen and disappear), etc)

-froze all user apps (except some key apps) and some untrusted sys apps

-uninstall PDroid 1

-recovery: unpatch PDroid, patch OpenPDroid (same rom image)

-install PDroid Manager

-start configuring apps manually using screenshots

at this point, edits to app privacy werent being saved. after saving an app, the list would show it as untrusted no matter what i chose. and if i reopen it, the settings are all back to allow.

-aborted; restored nandroid

regrettably i wont be able to help cause i can't use OPD. if anyone can help i'd appreciate it.

note to FFU: if i had separate user/sys overrides, i could install OPD without ever worrying about freezing hundreds of apps and the side effects that causes. real overrides are a boon for maintenance.

thanks!