improvements for TaintDroid ?? - Security Discussion

Hello Frineds please suggest me some improvement or future work on TaintDroid that can be done as Research Project for postgrad work. Duration around 5-6 months.
I found some related work: Keynoid and AppFense !

bhushan5640 said:
Hello Frineds please suggest me some improvement or future work on TaintDroid that can be done as Research Project for postgrad work. Duration around 5-6 months.
I found some related work: Keynoid and AppFense !
Click to expand...
Click to collapse
You might want to look at bringing it up to 4.3, and having a way to pre-emptively detect potential breaches of privacy and notify the user prior to them taking place (ie. freezing the process)?
Alternatively, the ability to statically analyse an APK to determine if it looks likely to leak confidential information through decoding of the dalvik bytecode?

Related

Collabertive Effort Community Update Application

Hi all,
I have a concept for a single update application that would be driven from the AndroidSPIN release database so all developers could use it for ROM, Themes, Applications and anything releases to devices.
If you wouldn't mind taking a couple of minutes to read this post, I would greatly appreciate it.
http://www.androidspin.com/forum/viewtopic.php?f=260&t=226
I'd really love to get a group together to collaborate and either help design this and/or write an application and back end to do it.
Let me know what you think.
Thanks
Simon
Sounds like an awesome idea, I'd love to help any way I can, but I dont fit in any of the needed positions for the post. Looking forward to see what develops though
Fantastic idea!
I only ever use XDA so god knows what I'm missing out on elsewhere and to be honest after searching the word android on google and trawling through one crap site after another becomes tiresome so hence the 'XDA only' policy.
Sorry I can't offer any programming skills but you have my support on this project whole heartedly, not that it counts for much I know buh MeH!
Hope you can get this off the ground.
As I mentioned to Simon already, I was thinking about building an update application for my ROM. I love the idea of having an on-phone ROM database, update capability, something that can easily be used by any developer in the community.
Some initial thoughts on functionality:
- Browse ROMs
- Download ROMs to SD Card
- Monitor specific ROMs for updates
- Monitor currently running ROM for updates
I'm willing to lend a hand on the Android side of things, but this will be a large undertaking and we will also need some people to contribute to the UI, server side of things, etc.
I do iPhone UI design for applications now (I don't have an iPhone, but most of my contracts and clients are iPhone based), but let me know and I can whip up anything you guys need UI related.
Send me a PM and I can get the ball rolling on how the functionality can be laid out as well.
Even tho I know I wouldnt be able to help out with this. I know I would love to test this out if you needed it.
Its a great idea!!!
I know a teeny bit of Java, and I'm working on becoming an Android developer, so if anything needs doing on the Android side of things, I'm willing to contribute.
Although I may not know as much as some others, I'm definitely a fast learner. I have a few books on Android development I'm reading through right now.
michinohatoresu said:
I know a teeny bit of Java, and I'm working on becoming an Android developer, so if anything needs doing on the Android side of things, I'm willing to contribute.
Although I may not know as much as some others, I'm definitely a fast learner. I have a few books on Android development I'm reading through right now.
Click to expand...
Click to collapse
Well, we can reuse a lot of code from Cyanogen updater.
akirah said:
Well, we can reuse a lot of code from Cyanogen updater.
Click to expand...
Click to collapse
Well, of course.
If anything else needs doing, however, I volunteer what spare time I have.
akirah said:
Well, we can reuse a lot of code from Cyanogen updater.
Click to expand...
Click to collapse
Could be easily done, would require quite a lot of laborious work ripping out all the stuff you wouldn't need though.
I would take a look at this but unfortunately I have another Android project on at the moment which is taking all my development spare time.
@SimonNWalker What sort of backend having you got going? REST? SOAP?
Ups wrong theread
not that it matters (since i kept the source 100% open)....
you have my blessing to tear the cmupdater to shreds if it will give us a unified solution to all our ROM cravings
firefart has done a good job of keeping the code pretty clean so there shouldnt be too many issues with grabbing it
and the new code for the screenshots for themes could probably be used to the advantage of this project with ease
I'm not really interested in a rom updater, but a market replacement with an "upgrade all" feature (à la apt-get / yum) drawing from multiple repositories would be most exciting.
The Cyanogen updater could be used, it just needs some modifications. Stuff like sub-sections and update all
Would probably need a new method to keep track of the updates aswell, I don't think json would be sufficient for a lot of applications and updates. Unless somebody could make some kind of script to automate the process when it gets uploaded.
willmav5000 said:
Would probably need a new method to keep track of the updates aswell, I don't think json would be sufficient for a lot of applications and updates. Unless somebody could make some kind of script to automate the process when it gets uploaded.
Click to expand...
Click to collapse
The only other method I would consider, besides JSON, is an advanced and well thought out web-based form that the developer is forced to complete upon uploading a ROM. This would place more burden on the server, but should be relatively easy to attach the provided ROM information to the rom database.
Think: Check boxes for firmware compatibilities, check boxes for device compatibilities, version number, change log, etc.
Maybe something a little like this?
Wow this would be/ is gonna be awsome!
I would suggest also that you can backup your sd card settings (and maybe also sms...) to an ftp server (or some other server you can install on your pc) from this app...
like (incremential) backup>partition>wipe>install update>boot>getbackupback
problem is to get the server adress back after wipe. maybe stored in web database and encrypted with phone imei number? or uploaded as google
whatever...
or just not wiping that single adress
just saying ^^
willmav5000 said:
Would probably need a new method to keep track of the updates aswell, I don't think json would be sufficient for a lot of applications and updates. Unless somebody could make some kind of script to automate the process when it gets uploaded.
Click to expand...
Click to collapse
JSON is just a file format. The CM Updater works via a static JSON file that gets updated manually. The way I'd design this (which is what I asked a couple of posts back) is a dynamic web service (probably REST based) which delivered JSON dynamically. Wouldn't be too difficult at all.
As SimonWalker said he's using PHP + MySQL I'm guessing that's already being done.
@garok89: CM Updater is completely open-source therefore blessings are not needed to use the source. Really don't understand all the "credit" crap here on XDA.
senab said:
@garok89: CM Updater is completely open-source therefore blessings are not needed to use the source. Really don't understand all the "credit" crap here on XDA.
Click to expand...
Click to collapse
I know it is open and I don't need to give my blessing for people to use the source. I did so because a lot of people don't feel comfortable using other peoples code without permission, regardless of whether or not its 100% open source.
And as for the 'credit crap'... I don't see you asking for your name to be removed from the 'about' section of the app
I am not asking for any credit
Anyway, lets not get off topic...
Guys, before this becomes Android Open Alliance, the sequel (you all remember how that went), I think we better set up a way to work together first and then toss in the speculative stuff later.
How about starting simple; set up a wave?

InsertCoin ROM documentation project

Important: The docs are up. The live copy can be found on http://docs.insertcoin-roms.org/ and the Git repository on https://github.com/Manko10/InsertCoin-Docs/. For information on how to participate, see the wiki.
Hi,
This thread is related to the InsertCoin ROM by baadnewz (see this thread: http://forum.xda-developers.com/showthread.php?t=1198684). Since I haven't written 10 postings yet, I can't post to that thread nor create a new one in that forum.
InsertCoin has become a quite popular ROM for the HTC Sensation. It has had 200,000 downloads yet and numbers still raise. With increasing popularity it becomes more and more difficult to get hold of information you need concerning installation, problems, modification, tweaking etc. The result is a very high number of redundant questions on the forums and confused newcomers.
The project
Thus being said, it is time to create a good and centralized knowledgebase which helps new users to dive straight into using InsertCoin, keeps the development thread cleaner and helps to push the project forward since energy can be focused more on implementing new features and fixing bugs than on answering the same questions all over again.
baadnewz attempted to launch a Wiki once, but it ceased and shut down (as well as the whole baadnewz.eu server which was the last more or less valuable resource for help outside XDA-Developers.com).
Now my idea is to create a new official InsertCoin documentation project. I talked to baadnewz and he assured it would be promoted and integrated into the official website once it comes to life. The project I'm heading for is a community-driven one. I would work for it as much as I can but I can't do it alone. I'm not experienced enough in many (especially technical areas) of InsertCoin development and Android development in general. There are many things to learn about InsertCoin. And to be honest: I also don't have the time to write all the stuff by myself. Once I had written everything, it would already be outdated. So this project is only possible if other people participate actively.
How shall the documentation be implemented?
I thought of a project hosted on GitHub. Users can fork the project, make changes and send pull requests. For infrequent submissions, we could also provide a special submission form.
A staging server would then pull the HEAD revision regularly, format it and publish it as a website.
Sounds complicated? But it isn't. Git is pretty much straightforward and also users without technical knowledge can learn it very quickly (yes, there are great graphical tools for it). And of course, the documentation would also include a noob-proof guide to contribution.
But why Git? Why not a Wiki?
A Wiki might seem to be easier, but in fact a Wiki has to be updated regularly. Patches for bugs and security holes have to be applied. Additionally, we had to fight spam. Especially when we use some well known software such as MediaWiki, spam bots would love it. That can be a lot of work.
But the main reason is portability. A Wiki is a Wiki, nothing more. Exporting the contents into other formats would be a tedious process. However, when using plain text files with a simple markup language such as Markdown, they can be exported to all formats we like. Not only can the staging server parse it to HTML, but it can also be exported to PDF, CHM files (does anybody still use these?) and many more formats.
All right, but what is to be documented?
Well, a lot. Things I have though of are
Installation
Where to get InsertCoin ROM?
Which version?
How to flash InsertCoin?
How to upgrade from previous versions?
To wipe or not to wipe (and when)?
Kernels
Which Kernels are there?
Where to get them?
What are the differences?
Advantages/disadvantages of specific Kernels
How to install a new Kernel/revert to stock?
What is a Kernel and why can't I install it via the Market? (dumb question, yes, but important to know)
Known problems
Any reported bugs still present in version X?
How do I report my own bugs?
Why does feature Y not work (and never will)?
Features
Why to choose InsertCoin?
How to submit feature requests?
Requirements
What do I need to run InsertCoin?
Which baseband version do I need?
Where do I get a new baseband version and which one to choose?
Does it work on device X, too?
Which is the oldest supported version for custom kernels?
Add-ons
Which add-ons are there?
Where to get them?
How to flash them?
What to be aware of?
How to get rid of malfunctioning add-ons?
Customization
Which themes are there?
How do I install them?
How do I revert back to the default theme?
How to set up custom boot splash and boot animation?
FAQ
Things users ask all the time
Things users might ask regularly in the future
Milestones
Any planned features for future releases?
How many ROMs to release tomorrow?
Participation
How to submit patches?
How to improve the documentation?
How to pay a round for baad?
General information
What else could be valuable information?
How do I backup and restore my data most efficiently and least time consuming for upgrades which force a full wipe?
etc.
The list goes on. It's up to us how much it'll grow. Make suggestions please. Don't hesitate!
And now you come into play!
Do you think, such a project could become a success? Do you have suggestions, ideas, criticism? Post it here. Please.
Would you like to contribute? Post an answer. You would be one of the glorious pioneers.
If I get enough positive feedback and support by people who want to contribute I will start working on the base system, set up the Git repository, write the staging software and launch the project. If not, it would have been at least worth the effort. But you would contribute and give something back to the community, wouldn't you? Sure, indeed...! ;-)
Cheers
Manko10
Do you think, such a project could become a success? Do you have suggestions, ideas, criticism? Post it here. Please.
Would you like to contribute? Post an answer. You would be one of the glorious pioneers.
Click to expand...
Click to collapse
of course it'll succeed cause it'll be much easier with plain updated steps (n00b proof )
I would like to contribute if u may allow
THIS IS AWESOME
Of course you can contribute. Everyone is pretty much welcome to do that.
For Baad and InsertCoin itself, I think it would be a perfect success. I myself have been looking for a central resource database for InsertCoin, but always resort to just searching the thread, which is not exactly the most efficient method.
I don't know much on the technical ROM-based side of things, but I am a web developer, so I'm sure I'd be able to help in the deployment of such a website. I also happen to have a vBulletin license I'm not using. If Baad wants to expand his ideas even further and have a sort of official InsertCoin forum, all to himself, I could most definitely lend a hand for that.
I'm thinking large scale here; and upon writing this, further ideas have just popped into my head, but I'll save that for later, but hey, Baad is largely-awesome.
If you happen to have an MSN or Skype, Manko, I'd love to talk to you further
i have a better idea for talking / chatting in a more centralized way: IRC
#baadnwz-roms on freenode
I don't know much on the technical ROM-based side of things, but I am a web developer
Click to expand...
Click to collapse
So am I.
I'm quite sure, baad will help us as good as he can but he is of course very busy with the ROMS. So it's better to have many guys in the project who know more about the technical stuff.
I would try to help too, if You like. If You don't need IC pro's only
We need everyone (IC pros are needed, but not only).
First of all we need people who have fun writing and maintaining (!) good and understandable documentation.
Guys
if you do this - it will be bloody FANTASTIC!
noobproof guide needed badly
Make it so. Sounds like it could become a great resource.
It will, but only if enough people participate.
why not add chatbox on the coming site, isnt much better? 24/7 we can have conversation as like me, am from the philippines, and my time is different to others
Well, the documentation would also be there 24/7. I think for live talking we should better use IRC (#baadnwz-roms on irc.freenode.net). Embedded chats on websites consume a lot of bandwidth.
lol!, i guess so, yeah, maybe irc is much better. anyways, maybe i can contribute some design for future use.
Just jeep in mind that IC is also made by baadnewz for the Desire (and the wildfire too?). I'd like to write some things for the Desire version of IC.
koenvbeek said:
Just jeep in mind that IC is also made by baadnewz for the Desire (and the wildfire too?). I'd like to write some things for the Desire version of IC.
Click to expand...
Click to collapse
yes once the project starts, desire will be there too
for wf i made 2 roms long time ago, and then i sold the phone
Ill contribute if i can I love this rom
wow... this sounds freaking awsome. i would most definately help with coding once the repositories are set up ^_^
I think it would be really beneficial for everyone especially for the folks who are new to the ROM. 600+ pages of comments are a LOT to read through!
Make it so. (with Jean Luc Picard's Voice ) Nice idea.
Would like to contribute sth, though I have a really tight schedule lately...

Custom ROM comparison database 2.0 (open to edit for public now!!!)

UPDATE: Database 3.0 can now be found here
Someone asked me to create a thread here for my custom ROM comparison database, so that's what I'm doing here now.
A few words from my side so you know what to expect of it and clear things up.
This is the original text I posted on my blog, so I'll just put it up here as well.
At the end of last week, I asked on G+ what to do next, an app comparison or a new custom ROM review. On of the first answers that got my attention was someone asking for a custom ROM comparison instead. I thought about it for a while how this could works since I can’t show them off side by side and it would be difficult no matter what. While thinking along I also remembered one post on YouTube where a viewer gave me the constructive criticism on the videos getting too long, especially the part where I listed all the features in the video review. I told him I am aware of that fact but I still haven’t found the right solution to make the videos shorter without missing any important specs. After some more thinking the idea of the comparison database was born.
The idea behind the database
Creating a database that contains all the available features clearly visible and quickly to access for everybody was actually the hopefully right solution. Using it I don’t need to waste anymore time on rattling down the whole list in my video… this saves me a whole lot of time but of course also you. And if someone wants to know if a specific feature is available in the reviewed ROM he can just quickly check the database and look for it, it’s as easy as that. Of course this method also allows me to focus more on the important aspects of the ROM itself.
Creating the database itself took quite some time for sure but in the end I think this is the cleaner and smarter solution for everyone. I hope this to get a helpful tool for everyone to easily find the right ROM for himself that suites him the most.
I did 2 videos, one quickly explaining the purpose of the database itself and an additional one explaining some of the more important custom ROM features so that people who are maybe new to custom ROM flashing know what to look for. If you see any feature in my database and wanna know what it is for or what it does, leave me a comment. I will then either quickly explain it if possible or collect some of the requests and make another “features explained” video.
Here is the link for the database (it will also be attached to every upcoming custom ROM video as well as the matching article), it will be updated with every upcoming custom ROM video review. I am no professional in text editing, so if someone is maybe bored or wants to help me out in making a better and more professional appearing database to improve it, please contact me, I’d really appreciate it.
Click to expand...
Click to collapse
Features of the database
--------------------------------------------------
- detailed list of all possible custom ROM feaures (~100 at the moment, constantly growing)
- containing 13 of the most popular ROMs + stock Android ROM + Xposed Framework to compare with each other (list is still growing)
- a lot of useful additional informations like links to downloads, ROM's websites, G+ communities and much more
- everything is sorted logically and color coded for fast and easy comparison
- all features have a quick explanation, expecially helpful for custom ROM beginners
- a lot of maintainers to keep it updated as good as possible (12 maintainers at the moment) - always looking for more, feel free to join
- constantly working on improving and enhancing the database
here is the link to the database 2.0 - thx to @parker09
some additional videos to explain the whole thing again...
Please feel free to leave any comments.
I'm a real Google docs noob so if someone maybe wants to help me clean it up and polish the style, just contact me.
And if this thread is posted in the wrong section, please just let me know.
UPDATE new host
Updates
Update
I read the posts here and on the portal and wanna set some things straight.
I do the database including the reviews in my free time, but besides that I´m also blogging,doing app/device reviews, how to´s and similar stuff so time for the database is therefore limited. That´s the reason I can´t progress with the database as fast as I would like to, also my way of testing takes up a lot of time.
I will of course try to do it as frequently as possible and of course ROMs like AOKP and Omni will follow in time.
That´s it for that.
Regarding mistakes and such, I know the database isn´t flawless but I´m not doing errors on purpose. About missing features of certain ROMs, it is possible some ROMs now have features that weren´t available at my time reviewing it but it´s almost impossible for me to keep track of all changes since I use different ROMs all the time and can´t always go back to already reviewed ones.
Update 2
Big change, after all what I read, I finally decided to make the database open to edit for public. Everyone can add ROMs and changes as he wishes to. I only ask users to be resposible and keep everything clean. Feel free to make new entries or correct errors if found. I think this is the best way for the database to grow.
The 2nd change is the move to another design made by @parker09 that is way nicer and better in my opinion.
The old one will still stay but won´t be updated anymore I think. So don´t forget to change your current link to the new one.
BIG THX to everyone in advance who decides to particate on working on the database, I hope the new way is a win for everyone.
Update 3
Sorry to say but the open to public idea wasn't the best it seems since the database somehow got messed up a bit. I want to prevent this from happening that's why I have some rules now to hopefully keep things clean and right this time.
Everyone is still welcome to participate in maintaining the database but has to do following now in order to get permissions to edit.
This reason for the rules is so I can better keep track of what gets changed by who and I know which parts are getting updated and which not.
How to get permission to edit?
Please contact me via PM on xda with the following title...
maintain custom ROM database "your email adress" "your google name" (the name that will appear when editing the document)
- Please also write down your name and email again within the pm just to be sure
- Please tell me which ROM(s) you would like to maintain or what you plan to edit.
- Please tell me if it is ok to add you to hangouts, this would make the teamwork faster and easier
Rules for maintainers
can now be found directly in the database
I want this so I have a list of all the maintainer and know who does what, so things don't get mixed up like 2 people editing one rom at the same time getting each other between in their way. This gives me a better overview so I can track the changes.
THANKS TO
-----------------------------------------------
n3ocort3x - AICP Team member
owain94 - PACman Team member
vedantgp - CyanFox Team member - Special thanks for a lot of groundwork&more
josegalre - Special thanks for a lot of groundwork&more
jrudyk
msn.debord
louisjms
lordbalmon
septigation
l3v14n
Thank your for publishing it here as well. This will be helpful for all of us. :good:
SlimBean has Breathing SMS. I should know I ported it (its in MMS settings)
cordell12 said:
SlimBean has Breathing SMS. I should know I ported it (its in MMS settings)
Click to expand...
Click to collapse
Maybe it didn't have it back when I reviewed it or I missed it. Will change it later. Thanks for the heads up
Can you add what you can do with stock+GravityBox? Then people can see which benefits they can get without flashing roms.
Hi nimrodity,
please make it available as a online tool for all ROM makers, so that they can update it as and when possible. and then there's no need you to update it.
Nice I did a column for Paranoid Android (as best I can - some features I don't know what they do) but did as best I could so if you want to copy & paste it.
https://docs.google.com/spreadsheet...VoZ1l0bWxoYnVzek9oNnhlWXc&usp=drive_web#gid=1
On the second sheet I started one ages ago and that's the style I went with, and you hover over for what their options are.
Interesting, but what I would really love to see is developers from cross-ROM platforms joining hands
Lastest Carbon have got Paranoid PIE.
Small adjustments
You had a really great idea by doing this. I once search for something similar to this spredsheet and didn't find anything useful...till now!!
You did a wonderful job!
I just noticed 1 small thing and my other point is a suggestion:
1. In CM10.2 you have an option for the vibration intensity only, so maybe you could add to the "vibration" section: yes, but limited.
2. My suggestion would be to add another "spec" for the ROM. It would be "screen color/gamma calibration". It's a very interesting feature and CM10.2 (latest nightly) has it.
What do you think?
Thanks
Keep up the good work!:good:
maxver0 said:
Lastest Carbon have got Paranoid PIE.
Click to expand...
Click to collapse
I know but it didn't back then when I reviewed it. I can't always update the database especially with the old review build date. It would be too hard to keep track of all.
Thanks for Your work... Hope You will add more ROMs to this database and I hope other members will help You to get the info You need for awesome ROMs like:
Purity...
crdroid
XenonHD
Liquid Smooth
Vanir
Carbon
Illusion
beanstalk
Jellybam
... and more AOSPs
... ... ... ... OMNI
Purity, Vanir, Jellybam and XenonHD should be simple to track because devs keep the same MODs&features... little changes on every new build
More difficult to track other ROMs that add&remove features very often
I can't help You because I'm a Stockish man and I won't try AOSPs for now
Thanks for useful database, It will sure help me when I will going to flash new rom
felix1234 said:
Can you add what you can do with stock+GravityBox? Then people can see which benefits they can get without flashing roms.
Click to expand...
Click to collapse
Doesn't really make sense since it's all about custom Roms but I already thought about doing a separate review for the blog.
Not sure about your idea, will think about it though
itechengine said:
Hi nimrodity,
please make it available as a online tool for all ROM makers, so that they can update it as and when possible. and then there's no need you to update it.
Click to expand...
Click to collapse
As you can see by my simple list I don't know much higher about docs and I have no clue how to do such a tool. The idea sounds really cool if someone knows how to do that and wants to help out just contact me
parker09 said:
Nice I did a column for Paranoid Android (as best I can - some features I don't know what they do) but did as best I could so if you want to copy & paste it.
https://docs.google.com/spreadsheet...VoZ1l0bWxoYnVzek9oNnhlWXc&usp=drive_web#gid=1
On the second sheet I started one ages ago and that's the style I went with, and you hover over for what their options are.
Click to expand...
Click to collapse
Will check it later. If you see my YouTube channel you see my PA rant. I don't really have that much interest updating the database with PA since I'm not really a big fan of the to work. Nothing personal but I just can't get warm with their Rom
@nimrodity
Great work. Important factors when choosing rom could besides features be "RAM usage on clean install and no tweaks/installed apps" and benchmarks based on the same conditions.
But anyways, awesome work :thumbup:
pemell said:
@nimrodity
Great work. Important factors when choosing rom could besides features be "RAM usage on clean install and no tweaks/installed apps" and benchmarks based on the same conditions.
But anyways, awesome work :thumbup:
Click to expand...
Click to collapse
Sorry I won't including benchmarks since they have nothing to say about performance in daily use. They are no important factor for me. Same for the rest, also I mention performance and such in my video reviews, don't plan on adding that stuff directly into the database though
On Cyanogenmod it says :
Volume Music Controls : music controls visible only but not with volume buttons.
You can control the music with the Volume buttons whilst being locked.
And if Poweroptions refer to the "menu" that shows when pressing the power button, you can en/disable airplane mode and select "Screenshot". And you can switch between Silent/Vibrate/Sound Profile.
Why no MIUI?
Great work! Just one little nag - why no mention of MIUI? It's distinct feature set should surely warrant a review, but that's just my opinion.
jwchips said:
Great work! Just one little nag - why no mention of MIUI? It's distinct feature set should surely warrant a review, but that's just my opinion.
Click to expand...
Click to collapse
My database is far from being complete, I just started . I chose my Roms randomly until now. Miui is still possible to come

Give us BATTERY_STATS back

If you already got your Nexus 5 or installed a custom Kitkat ROM you already have noticed that your favorite battery stats tool, whether it is BetterBatteryStats, GSam of wakelock detector, does not work.
Well it is not uncommon for some API to be changed so when a new Android version comes out it usually takes us a few days to get hands on a device and fix things.
But this time is different and important enough for me to take time to summarize the situation.
A little history
Android has a service called 'batteryinfo' that collects a lot of info about what goes on on your phone. That service is not perfect but it provides some pretty important information about what is important to our battery monitoring apps: an insight into what drains our battery.
Our apps communicate with that service and therefore claim the android.permission.BATTERY_STATS permission protecting the access to that service. This permission is of the category "dangerous", notifying users of the fact that they should check why an app requires that permission. For a battery monitoring app it is logical to require it.
This change of course impacts devs as their apps became unusable with that release with no perspective for a fix without an expensive workaround (as e.g. already implemented in BetterBatteryStats 1.15+).
But more alarming, it prevents users to get an insight in what drains their battery and make decisions to keep or drop apps depending on the 'cost' in terms of battery life!
If I was a conspiration theorist I may believe that this change was made on purpose to prevent users from seeing how all the pre-installed apps - including those from google - affect their user experience by reducing the battery life / usability.
What happened
With kitkat starting to ship things happened pretty fast and first feedbacks started to emerge reporting that the service could not be contacted. It took me some time to get hands on a kitkat phone (in fact I flashed my gnex with an inofficial ROM and had to make sure that the errors I got were not cause by that ROM and corresponded to the behavior on a Nexus 5.
After some research two changes in 4.4 are responsible for the problem:
1. batteryinfo was renamed to batterystats
2. the BATTERY_STATS permission has been unavailable to apps (moved from protectionLevel 'dangerous' to 'signature|system'
This is the change preventing apps to be granted that permission: https://android.googlesource.com/pl...it/+/3714141d287c965ea3451831dd5167f63f8db87b
As you can see the change refers to an issue number but this issue is not documented in the public tracker (welcome to not-really-open-source).
I have posted a request on the android-platform forum to request a clarification on why that change was made (https://groups.google.com/forum/#!topic/android-platform/f-7Td9aeFKY) but DID NOT GET ANY satisfying feedback. Therefore I have filed an issue in the public bug tracker for this change to be rolled back (https://code.google.com/p/android/issues/detail?id=61975&thanks=61975&ts=1383910497).
I kindly invite you to upvote this request by staring it.
Please star it, adding a comment "I vote for this" or "Please undo this" to the thread does not do any good:
- comments are not counted, only stars
- that forum is not there to express opinions, it's for bug reports and requests. Unrelated matters like opinion will have no other result than annying the reader.
What devs should know
1. BATTERY_STATS has been moved to protectionLevel=18 (signature|system) and is not accessible to apps anymore
2. On KitKat copying an app to /system/app does not grant protectionLevel=18 anymore. This has been changed in KitKat and the target directory to gain those rights is /system/priv-apps
3. The service delivering battery stats was called 'batteryinfo' in previous Android version and is called 'batterystats' in KitKat
[update 2013-11-16]
*dream out loud*
In an open source world the community owns the source right? Wouldn't it be cool if some senior android devs would review this change and - assuming there is no good reason for it - would revert it in their fork to provide their users with what I believe is an important feature?
[/update]
I really would like to hear from some senior devs maintaining a repo about the idea of taking control and reverting that change
Google has release 4.4_r1.2 and still no joy.
Changes are here:
https://android.googlesource.com/platform/frameworks/base/+/android-4.4_r1.2
Re-enable BATTERY_STATS in a custom ROM
I wrote up a post in another thread about what a ROM developer can do to re-enable Battery Stats (non-root) in a custom Rom. Very simple, but wanted to point it out should anybody be wondering...
http://forum.xda-developers.com/showpost.php?p=48029013&postcount=26
For CM2016' KitKats only
chamonix said:
I really would like to hear from some senior devs maintaining a repo about the idea of taking control and reverting that change
Click to expand...
Click to collapse
http://forum.xda-developers.com/and...kelock-blocker-official-2016-nightly-t3393825
Does it make sense ?
Thanks for any help.
oF2pks said:
http://forum.xda-developers.com/and...kelock-blocker-official-2016-nightly-t3393825
Does it make sense ?
Thanks for any help.
Click to expand...
Click to collapse
Can you help me understanding what this mod/change is about? My suggestion was about reverting a change that was made by google to restrict the access to a certain permission. You link is to a post with a title suggesting something like blocking the ability for apps to hold wakelocks. Such a stunt would be a really bad idea IMHO but maybe I missed an important point
idea of taking control
chamonix said:
suggesting something like blocking the ability for apps to hold wakelocks. Such a stunt would be a really bad idea IMHO
Click to expand...
Click to collapse
Thanks for feedback; i'm real fan of wakelock-blocker's theory, and was wondering if :
- is it useful ?
- can it help user to take control on any kind of restriction ?
I found that completely awesome under KK (static use) but i was very disappointed on testing with LP (anarchic behaviour). BetterbatteryStats was the best observer i found around, and i thought that both were complementary; indeed Beanstalk did use use both with KK: wakelock-blocker' mod and performance/wakelock(similar to your top-app) from Omnirom. But with Omnirom, the mod was rejected : https://gerrit.omnirom.org/#/c/9266/ ; to quote you ("some senior devs maintaining a repo about the idea of taking control"), this link show how much they do ?
Recently, I discover that Beanstalk (6?) was pushing this complementary further forward: https://github.com/scotthartbti/and...mmit/5fb687ae0940a12c8f7c9e457b6d5f12f028736b
I hope there was not too much confusion or loose in my first post and i believe BetterBatteryStats is a better option that can be toggled at any time. (I won't get a lot of thanks with my KK thread....)

PhoneLab Research and Development Tools

Hi Guys,
New here, but not to the ROM community. I would like to get a bit of feedback from devs and from the general public about this. I am part of a research project with my university that is looking to expand some of our project out into the open source community. Unfortunately we are no longer able to run the research lab anymore, but we would like to see some of our tools be used in the community. We've made several tools that allow us to gather extremely useful feedback about what happens during different running processes of the device that we think would be extremely useful and interesting for developers. We would like to see some of these tools used by the community, but I'd like to get some feedback first about these. Any information that one would like to know would be on our website https://phone-lab.org/. I will also be around to answer any questions that you guys may have about it.
Some of the things we would like to see open sourced would be our log gathering process. We use a centralized application to gather specified logs by tag from logcat and upload those logs to a backend that a developer can use to improve or fix a bug in their system. We also have modified logcat in android to have a more organized format for easier human readability. This is an example of only two of our tools.

Categories

Resources