[Q]Basics of Development - Sony Xperia P, U, Sola, Go

I want to learn how to develop and port ROMs like porting of new AOSP builds to xperia series ... can anyone refer me to some materials to get started , assuming i have just started second year of computer science engineering.
Please only helpful comments and no mockery.

suyash691 said:
I want to learn how to develop and port ROMs like porting of new AOSP builds to xperia series ... can anyone refer me to some materials to get started , assuming i have just started second year of computer science engineering.
Please only helpful comments and no mockery.
Click to expand...
Click to collapse
Skills required:
- C
- Java
- Git
- Bash
- Brain + Google
Simplified vision of android:Hardware < Kernel Linux < Hardware Abstraction Layer < Android
Porting: Working kernel + HAL
Tips & Tricks:
- Hack current projects. This way allow you to learn and not care about unnecessary stuff e.g. If I improve Ambient Sensor Light driver, is not necessary that I understand how is working android build system.
- Logcat
Classic references:
- http://source.android.com/devices/
- http://shop.oreilly.com/product/0636920021094.do

Thanks a lot .......... both for this and for your work on our devices

Related

Google Android Development

TIME TO MOVE ON
i wil be on xperia section
i am happy that i could help this section
Best Regards, Happy Cookling and Programing!
Hy all
I started this tread because the interest to android is growing
I invite all people with linux knowledge or C programing skills to join
If you know some hardware programing is better
We need
- developpers
- testers
i will not post an guide how to setup the compiler and set variables
if you dont know this stuff please stick to Google Android thread and dont post here stupid questions as IT IS READY / WHEN WILL IT BE READY
WE DO THIS IN OUR SPARE TIME AND WE HAVE FAMILY AND LIFE
So shell we invite the penguin to our phones?
WIKI Page
(Thanks Bikor_gj)
http://wiki.xda-developers.com/index.php?pagename=Niki_Android
GIT Trees
Vogue
http://git.linuxtogo.org/?p=groups/mobile-linux/kernel.git;a=shortlog;h=refs/heads/htc-vogue
MSM
http://git.linuxtogo.org/?p=groups/mobile-linux/kernel.git;a=shortlog;h=refs/heads/htc-msm-2.6.25
Reserved For Messages
Build Instructions for the ones that want to help
- Create working dir:
Code:
mkdir ~/android-kernel
- Go to the dir:
Code:
cd ~/android-kernel
- Clone the Linuxtogo GIT:
Code:
git clone git://git.linuxtogo.org/home/groups/mobile-linux/kernel.git
- Go into newly created dir:
Code:
cd ~/android-kernel/kernel
- Create a new branch, call it htc-msm and link it to the official htc-msm development branch:
Code:
- Descend into the "main" android dir:
Code:
cd ~/android-kernel
- Get toolchain:
Code:
wget http://www.codesourcery.com/gnu_too...-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
- maybe you need to rename the just downloaded file (because after .tar.bz2 wget has added ?lite=arm). (HINT FOR LINUX-NEWBIES: USE TAB TO COMPLETE KNOWN FILENAMES!! - In this case type: mv arm(TAB) arm(TAB) -> backspace till 'bz2' is the last word)
Code:
mv arm-2008q1-126-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2\?lite\=arm arm-2008q1-126-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
- unpack the toolchain:
Code:
tar -xjf arm-2008q1-126-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
- ascend again into the 'kernel' directory:
Code:
cd ~/android-kernel/kernel
- make the kernel:
Code:
git checkout -b htc-vogue origin/htc-vogue
You also have to use
Code:
make vogue_defconfig ARCH=arm
- export path so the newly downloaded toolchain will be used instead of your default compiler (which would compile for your computer instead of your phone):
Code:
export PATH=~/android-kernel/arm-2008q1/bin:$PATH
- make the zImage-file:
Code:
make zImage ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
Now the zImage file is created inside the directory kernel/arch/arm/boot.
When uploading this to your phone, remember that you only have to replace the zImage after each kernel build - the Linux environment on top of the kernel can just stay the same, so initrd (which is the ramdisk filesystem) can stay the same.
BR
Reserved For Kernel Status
Kernel status
no more power button //thanks biktor_gj
nike mtype added
audio working
call working
data working
sms unknown //due to keyboard and ts
keyboard screwed // somethings not right needs investigation
OnSreenKeyboard working
Touch screwed // SOLVED
when this kernel probelms will be solved i will release the new kernel
I have knowledge of both C and linux so I vollunteer
hi,
i can be a tester... also i have some little linux knowledge...
I have limited knowledge of both c and linux, so I possibly could help.
It seems useful however to setup an SVN or something, so even 'non-registered' developers can write patches and submit them for review. You can set up such an SVN for free at assembla.com, together with a wiki, TRAC and more. They even say you can ask for more storage space and stuff if your project is an open-source project.
If you have such an SVN developers like me can help without making any false promises of some sort.
I hope you know what I mean, it sounded better in my head
i know linux and i can do beta tester. i'm studying engineering too.
i also know linux and a bit of C...i can do testing too.
as you already know, I'm in too for development...
i will try the new kernel asap...
I tried this kernel and indeed, the keypad works on mine!
(touched the TS though, just because you said I wasn't allowed ) It froze, so reboot...
awesome! keys work all good! numbers work and also dpad and enter works!
(by the way: how will you make it possible to enter text? android is coded to enter numbers...
the_fish said:
awesome! keys work all good! numbers work and also dpad and enter works!
(by the way: how will you make it possible to enter text? android is coded to enter numbers...
Click to expand...
Click to collapse
I believe by the end of this year or somewhere in the beginning of 2009 Google is making a system for creating software input methods, which would theoretically allow us to write an application that would reroute direct hardware input. I think. We'll have to see what the future will (or the talented developers here) bring.
man, awesome!!! good job, jerpelea. keys work great!!
graey said:
I believe by the end of this year or somewhere in the beginning of 2009 Google is making a system for creating software input methods, which would theoretically allow us to write an application that would reroute direct hardware input. I think. We'll have to see what the future will (or the talented developers here) bring.
Click to expand...
Click to collapse
ok... the onscreen keyboard would be ok for the time we have to wait
Jerpelea: Why do you want Ubuntu as dev os? I'm using OpenSuSE and am able to build the kernel.
I am thinking (since 2 weeks) to try Ubuntu again (used to use it), but may take while before I get to it...
Boylen said:
Jerpelea: Why do you want Ubuntu as dev os? I'm using OpenSuSE and am able to build the kernel.
I am thinking (since 2 weeks) to try Ubuntu again (used to use it), but may take while before I get to it...
Click to expand...
Click to collapse
I think he is just saying that because it's easier for people to use??
works fine for me on vanilla debian
new kernel works fine screen still too responsive keys work calls work
it works! but after few minutes my nike is auto-turned off :O
garsim said:
it works! but after few minutes my nike is auto-turned off :O
Click to expand...
Click to collapse
i guess we have turn the auto turn off in wm to unlimited or run it on usb plug...

XDA Contact Book (Need Help / Looking to team up for a project ? Check this out)

Hello XDAians,
This thread is a Contact Book for everyone on XDA, it was started in the RC section but as everyone wouldn't be able to view it & use it I've started it here as well for the benefit of everyone.
- Have you ever thought of teaming up with people for starting a new project ?
- Do you need help ? (Checkout the 2nd post)
- Or maybe you were just looking for someone who could help you by clarifying your doubts on something / some project / some guide / etc ?
- But sometimes have ended up not finding the right people or it turned into a very tedious process ?
This thread has been started to make the process of collaborating with fellow members on any project ( ROM / MOD / Dev projects, Guides, etc) an easier & a simpler process.
I would request all the members to make a single post in this thread.
In this make a post describing yourselves & you can include anything, here are some points you could consider:
- A short but informative description about yourself.
- Projects you have completed / currently on going
- Devices you own / have worked with / are presently working with
- etc​
You could list the Languages you know:
- English
- Hindi
- German
- Russian
- Chinese
- French
- etc​
You could list the Programming languages you know:
- C
- C++
- Objective C
- Java / Java Script
- VB .NET
- etc​
How would you like to be contacted:
- Via PM on XDA
- Facebook Page
- Twitter ID
- Google+ Page
- Email ID
- etc​
How to use TAGS to help fellow RCs get info at a glance:
- At the end of your description add [TAGS] which describe yourself / your work / your knowledge in short. I have listed some reference TAGS below which you could make use of & will help you get an idea.
- The 2nd & 3rd posts of this thread will be used for listing the names & TAGS.​
Here are some of the reference TAGS that you could use in your post:
- [GUIDES] [ROM] [AOSP] [KERNEL] [CM ROM] [AOKP] [TWEAKER] [THEMER] [COUNTRY]
- [DEVICES YOU OWN / HAVE WORKED / WORKING ON / MADE GUIDES ON] e.g. [GALAXY R] [MOTO RAZR] [GALAXY S2] [ONE X] [XPERIA S]​
Here's a sample of the post which you can use, but it's just a sample & your post can be different:
Hello, I am 'Mr. X' from Antarctic & have been making guides & developing for various devices on XDA.
I have made Newbie friendly Guides & Rooting Guides for the following devices:
- Galaxy S4
- Motorola Atrix 3
- LG Optimus 6X
- Xperia Arco S2
- HTC One Z
In the past I have developed ROMs based on AOSP / CM 11 by including my own Tweaks & MODs for Galaxy S4 & O6X.
Currently I am developing MODs for HTC One Z, some of them include reducing the power usage by the device & make this beautiful device's battery last longer than 16hrs. Some HTC One Z users say that this device gets very warm on usage but I gotta tell you this, the device remains super cold even on heavy usage.
If are you looking to team up for developing a new ROM based on AOSP then you can contact me on my FB page in my Sig / just send me a PM. If you have already developed a ROM then I can improve it further by making MODs for it.
Programming languages I know:
- C++
- Objective C
- Java script
Languages known:
- English
- French
- Hindi
- German
- Russian
You need help with any of the devices which I own (check Sig) ? Then don't worry just chill, just contact me via PM / FB I'll help you.
Cheers !
TAGS: [GUIDES] [AOSP] [MODDER] [TWEAKER] [ROM] [GALAXY S4] [LG O2X] [ARCO S2] [HTC ONE Z] [C++] [JAVASCRIPT] [OBJECTIVE C] [ENGLISH] [FRENCH] [HINDI] [GERMAN] [RUSSIAN]
[SIGNATUTE]
FB: www.facebook.com/Iamchilled
Devices I own: Galaxy S4 - LG O6X - HTC One Z - Atrix 3 - Xperia Arco S2
If I helped then buy me rum (beer doesn't cut it here)[/SIGNATURE]​​
I hope this thread serves the purpose for what it has been started i.e. Collaboration between members for working on Projects / Guides as a team.
I would like to Thank SMOD PG101 for helping me improve on this idea which I had in mind.
Regards,
'cooleagle'
- Need help on anything ?
- Checkout the [TAGS] besides the members to understand which of members listed here could help you on the subject you want to request help.
- You can then go to respective members post. (Clicking on the name will directly take you to that respective member's post)
- Then contact the member in a way which is mutually acceptable & request for help.
- -Swift-
HTML:
[BASIC PHP] [V.BASIC JAVA] [XPERIA PLAY] [XPERIA X8] [IRISH] [ENGLISH] [LEARNING FRENCH] [/INDENT]
[INDENT]- [URL="http://forum.xda-developers.com/showpost.php?p=29899724&postcount=6"]'cooleagle'[/URL] [GUIDES] [FAQs] [GALAXY R] [LOVESTOSHOOTTROUBLES] [ENGLISH] [HINDI] [/INDENT]
[INDENT]- [URL="http://forum.xda-developers.com/showpost.php?p=29952170&postcount=9"].xxx.[/URL] [GUIDES] [LISTS] [FIXES] [BASIC C,C++] [BASIC VB] [BASIC HTML] [HTC WILDFIRE] [LG OPTIMUS SOL] [ENGLISH] [HINDI] [/INDENT]
[INDENT]- [URL="http://forum.xda-developers.com/showpost.php?p=29904241&postcount=7"]melvinchng[/URL] [TRANSLATE] [GUIDE] [Q&A] [NEXUS S] [ENGLISH] [CHINESE] [MALAY] [/INDENT]
[INDENT]- [URL="http://forum.xda-developers.com/showpost.php?p=29905633&postcount=8"]ppero196[/URL] [TRANSLATE] [SMALLBASIC] [PYTHON] [BASIC JAVA] [DEFY] [FIXES] [ENGLISH] [ITALIAN] [CROATIAN] [GERMAN] [FRENCH] [SPANISH] [SERBIAN] [/INDENT]
[INDENT]- [URL="http://forum.xda-developers.com/showpost.php?p=30051803&postcount=13"]xlm13x[/URL] [GALAXY R] [TROUBLE-SHOOTING] [TESTING] [FAQs] [GUIDES] [NEWBIE-HELPING] [ENGLISH] [HINDI] [/INDENT]
[/SIZE][/B]
reserved.
reserved.
- Swift -, Introduction
Hi!
I'm - Swift -, formerly know as "irishstuff09" but I prefer people to call me "Shane"
I have many guides on XDA, mainly for X8 users.
I work in the Android General, XPERIA™ Play and XPERIA™ X8 sections mostly.
As a bit of fun I hang in the Off Topic forum sometimes but usually post in categories where people would "Recognize" me or at least remember me as a frequent poster in a particular section.
I know a few coding languages and hope to learn Java over the summer.
I know;
- Most of HTML
- Basic PHP
- Very Basic Java
Languages:
- Irish (Gaeilge / Gaelic)
- English (Éire/UK)
- French (starting to learn in September)
I love creating and messing with the mechanics of HTML, PHP and websites.
(If you need help, or want to start a site together just PM me)
---
Contact Details:
Any form of contact is welcome :
- XDA Private Message
- Add me on G+ (RC G+ Thread)
- E-mail
You can email me here:
[email protected]
---
I also moderate the "Minebuilder Forums" which is home to over 7,500 happy players.
Quinny899, who is also and XDA RC also moderates the Minebuilder Forums.
That's me in a nutshell.
Anything else you want to know?
Hi,
I would be glad to know if I could help you with anything or if you have some project in mind on which we can work together. As of now I use Samsung Galaxy R which is my first Android smartphone but certainly not my first smartphone.
Just send me a PM in which I would like you to add some details about the project you have in mind including the time line if any in which you would like to complete the project. Incase you just need my help just PM me.
[GUIDES] [LOVESTOSHOOTTROUBLES] [GALAXY R] [ENGLISH] [HINDI]
Kindly contact me via PM only.
Cheers !
Hi, I'm MelvinChng. I'm a student. I help out those people in Q&A, translate Chinese app into English, write guides.
Device that I currently have: nexus s
I know everything not in deep... like coding, editing or etc. I love to design stuff and photographing with my Sony TX-55. You can find my work on Google+.
Ways to contact me: any ways listed in my profiles. And PM as well. Normally I love to exchange knowledge with those people around the world.
I speak English, Chinese and Malay.
Tag: translate, guide, Q&A
Accidentally sent from my Google Nexus S
Hello!
I am ppero196 from Croatia. I study electrical engineering (highschool)
I created vsel calculator app( for windows) Currently porting the same app to Android with another RC called crakeron.
I also brought flashplayer fix to my device CM9 ROM. Also I translate English apps and ROMs to Croatian.
I know Microsoft Smallbasic, Python and a little bit of Java.
I help people alot. I even deactivated FB due to XDA.
I own Motorola Defy.
If you want to contact me, check on my profile page.
I can speak English, Italian, Croatian, German, French, Spanish and Serbian.
TAGS: [TRANSLATE] [SMALLBASIC] [PYTHON] [BASIC JAVA] [DEFY] [FIXES] [ENGLISH] [ITALIAN] [CROATIAN] [GERMAN] [FRENCH] [SPANISH] [SERBIAN]
Hi, I am .xxx. Been on XDA for like 10 months now. Learned quite a lot and looking forward for more and more to learn.
My work - Have a guide on how to save maps for offline use and 4 'lists' of threads and looking forward to create more so that users can get huge amount of data on a single thread.
I know a few languages. Here you go :
- Basic of C, C++
- Basic of HTML
- Basic of VB
Will be trying to convert the above basic tag to advance as and when I get time
Contact details :
- via PM on XDA
- mail me on my id provided on XDA
Tags - [GUIDES][LISTS][FIXES][BASIC C,C++][BASIC VB][BASIC HTML][HTC WILDFIRE][LG OPTIMUS SOL][ENGLISH][HINDI]
Sent from my LG-E730 using Tapatalk 2
2nd post updated, post away guys !
i would also like to join.
details same as RC book, i m lazy to type it again
xlm13x said:
i would also like to join.
details same as RC book, i m lazy to type it again
Click to expand...
Click to collapse
Although I can include the tags from there & link it to the above post but members would read your post which would have no details about you.
You could just copy-paste it bro & remove any details which you don't want to post in here.
Cheers !
TAGS: [GALAXY R] [TROUBLE-SHOOTING] [TESTING] [FAQs] [GUIDES] [NEWBIE-HELPING] [ENGLISH] [HINDI]
Hi all. I am from India.
I m mostly active in SGR forum, helping peoples with their common problems. i have basic knowledge about android dont have much knowledge in developing. but loves to help here with what i know. i am also a good tester almost tested everything made for galaxy r (and some things which were not made for SGR :-#) and because of this testing addiction i have hard bricked my device for 4 times and discovered many bugs.
u can contact me via PM here on XDA, i m here almost all the time.
Hi,
I m Vikesh(XDA user - kataria.vikesh). I would also like to join this.
[GUIDES][TRANSLATE][BASIC VB][BASIC HTML][GALAXY R][GALAXY NOTE][FAQ][TROUBLE-SHOOTING][NEWBIE-HELPING][ENGLISH][HINDI]
Anybody can PM me or can contact me in Galaxy R Forum or can contact me via my mail ids. I spent around 15hrs of a day over XDA. Always keen to learn something new & want to share it to everybody.:highfive: Just do R&D lots of times. when Bad emmc chip bug was shown in Galaxy R & Devs suggested not to Erase data via CMW, I did 4-5 times & didn't see any bricked issue. So, always ready for testing new ROM & Applications.
Bumping this thread up because it's been wayyyy under-utilised.
TAGS : [BASIC PHP][BASIC JAVA]
HTML:
[ENGLISH][INDEX][FAQs][SGS2][XPERIA S][NEXUS 7][/B]
Hey guys,
I'm KidCarter93 (obviously) but you can call me James. The devices I currently have are Samsung Galaxy S2(international) and Nexus 7 WiFi but I help out all over the place, so you may see me around :)
Unfortunately, I don't have any development skills yet :(
As far as my threads on XDA go, I've made a couple of index threads (ROMs, kernels, recoveries etc.) and I've also made a couple of Help Threads.
Do you need an FAQ written for your ROM/kernel/mod? --> Let me know and I will do that for you :)
The only language I can speak is English, even though I learnt French in school I'm no good :(
Programming languages - I know basic PHP, basic Java and HTML.
If you wish to contact me regarding a team up, then the best option is to send me a PM on here and I'll generally respond very quickly because I'm never off xda :D
Sent from my Nexus 7 using xda premium
hi, i'm rirozizo from Lebanon, soon to be RC
i've made several ports to my HTC Desire Z, but presently not working on anything because i'm very busy studying for my finals in two months, but after that i'll be getting my nexus 4 and i'll be active again. i also made two GPS guides: how to make your GPS lock fast, and how to make your own Navitel compatible map.
i know: English, French (a little), and Arabic
i currently know basic C/C++, but that doesn't seem to help the android world
contact me either via PM, or here: [email protected]
[GUIDES] [PORTS] [AOSP] [HTC DESIRE Z] [GPS] [C/C++] [LEBANON] [ENGLISH] [FRENCH] [ARABIC]

[APP][KK][XPOSED] GravityBox v3.6.2 - tweak box for Android 4.4 [23/04/2017]

GravityBox - all-in-one tweak box - Xposed module for devices running AOSP 4.4
Version 3.6.2 [KitKat]
Version for JellyBean is available in this thread: http://forum.xda-developers.com/showthread.php?t=2316070
READ THIS POST CAREFULLY BEFORE PROCEEDING ANY FURTHER
Hey!
After countless hours of coding and searching for proper entry points to inject code to incorporate fixes and mods, here it is:
GravityBox - a complex Xposed module targeted for devices running Android 4.4, which turns vanilla ROM into
feature-packed "non-flashing" custom ROM.
Originally, this module was designed for MTK6589 devices which lack custom ROMs built from source due to MediaTek closed-source policy.
Later on, it was adjusted to support other (non-MTK) devices running vanilla or close-to-vanilla AOSP ROMs.
Introduction
The app utilizes amazing Xposed framework coded by recognized
developer rovo89 which, briefly, provides interface for injecting code into any app, including system services allowing modifications of applications and system services at run-time. One of the biggest advantages of GravityBox is that it is not bound to any specific device. Actually, it should run on any device having vanilla Android 4.4 (ROM close enough to AOSP).
This project wouldn't be possible without rovo's Xposed framework, so huge kudos to him.
Feature highlight
--- CyanogenMod Pie controls
--- Expanded Desktop
--- Statusbar QuickSettings tile management with tile reordering
--- Lockscreen targets
--- Statusbar icon coloring
--- Statusbar Brightness Control
--- Additional QuickSettings tiles:
------- Sync on/off, WiFi AP on/off, GravityBox shortcut, Torch, Network mode (2G/3G/2G+3G switch), Sleep, QuickRecord,
QuickApp, GPS on/off, Ringer mode, Volume tile, Camera tile, ...
--- Quick pulldown - switches to QuickSettings when status bar is pulled down near edges
--- Auto-switch to QuickSettings when there are no notifications
--- Center clock in statusbar
--- Battery indicator style
--- Navigation bar tweaks including cursor control keys
--- Navigation bar ring targets
--- Low battery warning policy
--- Disable LED flashing when battery low
--- Disable LED while charging
--- Advanced power-off menu (reboot, recovery)
--- Volume key cursor control
--- Skip tracks by volume key long-press while screen off (thanks to rovo89)
--- More volume levels for music stream
--- Option to control safe headset media volume
--- Button for clearing all recent tasks at once
--- CRT screen off animation
--- Minimal brightness setting
--- Autobrihtness levels adjustment
--- Lockscreen tweaks - show widgets maximized, lockscreen background style (color fill, custom image)
--- Lockscreen rotation
--- Hardware key actions - menu long-press/double-tap, back long-press, home long-press
--- Dithered Holo background
--- Option to use solid black Holo background
--- Expandable volume panel
--- Option to unlink ringtone and notifications volumes
--- Notification drawer style (background color, image for portait/landscape, transparency)
--- Button backlight modes (default, disabled, always on while screen is on)
--- Dialer (Phone) tweaks
--- Launcher tweaks
--- Screen recording
--- GravityBox Actions - interface for 3rd party apps
--- Smart Radio
--- Notification control (per-app notification LED/sounds/vibrations)
--- Ascending ring tone
... more to come
Compatibility
Some words about GB's main concept. One thing I didn't like about xposed modules was that it was always necessary to reboot a device after making a change to some option. Since GB's main concept was to turn MTK devices running stock ROM into something that's close enough to a feature-packed custom ROM, I had to take a decision - for it to be as much comfortable as possible and to really behave like a custom ROM, I had to design it to support most of the preference changes to be done on the fly without needing to reboot a device. While this sounds nice, it also brings couple of "drawbacks". For changes to be made on the fly, it is necessary to make some preparations when device starts. This means, even if you don't use the particular feature, the necessary preparation/modification is already there and is waiting for the user to come and change that option.
This means it is not possible to "completely deactivate" particular feature if it causes trouble on your device or if you installed GB because you want to use only one particular feature you can't find elsewhere.
This results in issues on ROMs/devices that have parts that are diverting from default Android implementation too much, or are running heavily modified custom ROMs.
If you experience weird issues after installing GB, even if you didn't activate a particular feature, it is not because of GB is broken, it is because it is not compatible with your ROM. It is very similar as if you installed ROM built from source for Nexus to some Xperia device - it won't work.
Next thing, GB is a complex module and is not suitable for 1 purpose scenario. This means, if you are running custom ROM built from source (CM, PAC, ...), and you are missing a certain feature, your best option is to go ask creators of those ROMs to implement those additional features. Supplementing missing features on well-known custom ROMs built from source by installing xposed modules (especially complex ones) is definitely not a good way to go and can cause more trouble than good.
And finally, the last. GB being a complex module, it shouldn't be combined with other complex modules often racing for the same goal. They can conflict/fight on the same playground and there's no way you can deterministically say which one's going to win.
They can even lose both.
So in summary:
- this module is designed to run on vanilla or close-to-vanilla Android 4.4 (AOSP)
- supports "Google devices" like Nexus, HTC One Google play edition, and others running vanilla Android 4.4
- supports Motorola Moto G Dual SIM running stock KitKat
- supports ThL 5000 running stock KitKat and potentially other MediaTek devices running pure MediaTek ROMs
- Samsung Touchwiz, HTC Sense, MIUI, LeWa, Xperia, Lenovo, etc. are NOT supported. It is not guaranteed this module will work on these at all so try at your own risk. This module is simply too complex to support all kind of ROM brands that were vastly modified by vendors.
- DO NOT USE WITH CUSTOM ROMS LIKE CM,AOSPA,ROOTBOX,AOKP,SLIM, OMNI AND THEIR OTHER CLONES... IT MAKES NO SENSE AND CAN CAUSE CONFLICTS AND UNEXPECTED BEHAVIOUR
- I will not implement any exceptions that will adapt this module to a specific custom ROM. Please, do understand, it is unmanageable.
- I will not provide any support for devices violating these compatibility rules
trjlive said:
As is detailed in the OP, GravityBox is designed to be used with stock, vanilla AOSP ROMs, not OEM and custom ROMs. In other words, Google Play Edition and Nexus devices. All OEM ROMs (TouchWiz, Sense, Xperia, Moto, etc.), and custom ROMs (CyanogenMod, ParanoidAndroid, etc.) differ significantly in their code base from pure AOSP. And as most of these ROMs are closed source, and the developer does not have access to all the devices, it means that GravityBox is not designed for, or tested on, these devices and ROMs.
Even though the Moto devices look like stock Android, they are as much custom under-the-hood as TouchWiz or Sense. It's just that Motorola decided to implement a skin that resembles stock Android, rather than a custom skin like Samsung has done. But the changes to the core code mean that many of GravityBox's features will not work, and actually do cause some well-known bugs. The same goes for ParanoidAndroid, there are just too many changes to the core code for GB to be reliable.
If you choose to use GravityBox on a ROM it was never intended to be used with, then you do so at your own risk, and without any support. You should always have a good nandroid backup and be familiar with ADB and Fastboot. At any time, a ROM update or GravityBox update may cause any/all GravityBox features to break, and worst case, send your device into a bootloop. This is just an unfortunate reality of using a mod on a device it wasn't intended to be used on. Any user who wishes to improve or fix bugs on their unsupported ROM is more than welcome to download the source code for GravityBox (links to Git in the OP) and work on debugging and fixing the bugs on their own.
Click to expand...
Click to collapse
Prerequisites
To use this module, the following conditions must be met
- You have a device running Android 4.4 that's based on AOSP (vanilla or close-to-vanilla Android)
- ROM must be rooted (XposedInstaller requires root to be able to install framework into system)
- You have working custom recovery allowing you to make a backup before installing Xposed framework
GravityBox KitKat version has been developed and tested on Nexus 5
Installation
1) Backup your current ROM in custom recovery. I am serious. Don't skip this step.
2) Get the Xposed installer from Download section from Xposed official thread (the latest version is typically available at this link: http://dl.xposed.info/latest.apk)
3) Install and run Xposed installer and follow the instructions to activate Xposed framework
4) Reboot. If device doesn't boot that means that the Xposed framework is not compatible with ROM you are currently
running. You don't need to continue with the next steps. You will have to restore your ROM from backup.
5) Download, GravityBox APK from the second post, rename it to GravityBox.apk and install it.
Alternatively, you can download the latest GravityBox directly from Xposed Installer (search for GravityBox [KK] module).
6) Make sure GravityBox app is installed into internal memory. If it was installed into phone storage or external storage,
move it into the internal memory first (applies only to devices having additional or external storage)
7) Run Xposed installer, go to Modules menu and activate GravityBox by checking the checkbox
8) Reboot
9) Launch GravityBox from app drawer or from Xposed installer and set options as desired
Videos
- Xposed framework install plus gravity box module overview (thanks to Rootjunky.com & Marshall Williams)
- Gravity Box - What is it and How to install it (thanks to @D3VI0US)
Documentation
Thanks to @cadarn07, there's a comprehensive and searchable User Guide listing
all of the GravityBox features. It's an EverNote document located at https://www.evernote.com/pub/cadarn07/gravitybox
Reporting bugs
If you experience problems with certain feature, provide the full-detailed info that can help me
to reproduce the bug and attach debug.log file you'll find in:
/data/data/de.robv.android.xposed.installer/log
In case you experience SystemUI crashes or other apps Force Closing, or device soft reboots, attach logcat from time
crash occurs. (use adb logcat *:E or your favorite logcat app from Play Store).
Please, don't attach big logs. Only the portion where error is clearly seen.
Disable all other xposed modules before reproducing bug to make sure it is really GravityBox related
Remember, this app was developed and tested on one particular device so it is not guaranteed that
it will work flawlessly on yours.
Click here tor ead additional, more detailed info on Reporting bugs provided by @trjlive
Multilanguage support
Volunteers are welcome to translate GravityBox to other languages.
Simply download this file: https://github.com/GravityBox/GravityBox/raw/kitkat/res/values/strings.xml
Use Notepad++ to edit strings and then send me edited file so I can include translations into next release.
Source code
GravityBox is opensource. Sources are available in my gihub: https://github.com/GravityBox/GravityBox/tree/kitkat
If you're a dev and have some ideas for additional features, feel free to fork it, work on it
and send the pull requests.
Copyright notice
https://github.com/GravityBox/GravityBox/blob/kitkat/NOTICE
Support development
Coding, maintaining and supporting this project costs me a lot of my precious time. If you find this project useful, you are welcome to support its development via donation. This form of support is meant to compensate for my time dedicated to the community + eventually, help me to afford newer device to keep up with AOSP evolution thus providing continuous support as Android evolves. Thanks!
Info about premium features and PayPal transaction ID verification system
1) Those who supported development via PayPal donation can use their PayPal transaction ID to unlock premium features.
As of v2.9.5, there's one premium feature: Backup/restore of GB settings.
2) If you contributed to the project by providing translations, code fragments, or by any other way
you can apply for a free transaction ID by contacting me via PM.
3) Be aware that there's a system that can identify potential transaction ID
abuse. E.g. when one ID is being used by more users. Such IDs will get blocked automatically.
This can also happen when you previously exposed your ID in public forum and other users took
advantage of it. If this is the case, contact me via PM so I can issue new, special ID.
In case you own more devices, you can use one transaction ID on up to 10 of them.
4) If you are using your own custom builds of GB for personal use, you will get hash mismatch
upon verifying your ID as verification system accepts requests only from official releases of GB.
If you want to be able to verify IDs with your custom build, contact me via PM so I can setup
a special hash for your build.
If you are using a custom build that you provide for broader group of users (e.g. in a custom ROM),
it is necessary to ask for new hash everytime your new custom version is released for public use.
These rules are based on mutual trust so please, do not violate them.
Credits
- @bgcngm for his code contributions to the project
- @MohammadAG for Xperia specific contributions to the project
- @rovo89 for his ultimate Xposed framework and "Volume keys to skip track" mod
- @peptonib for starting me up with this project
- @Tungstwenty for Fake ID vulnerability patch
- THL W8 owners for providing support and feedback
- CyanogenMod project
- ParanoidAndroid project
- SlimBean, RootBox, AOKP, OmniROM projects
- Sergey Margaritov for ColorPickerPreference
- All those who provided translations for different languages (Mr.Premise, peptonib, kidmar, ch-vox, romashko, Indiant, lelemm, oicirbaf, unavix, LuHash, WedyDQ10, mp3comanche, awaaas, liveasx, samsonbear, Eric850130, xtrem007, benjoe1, asmb111, ...)
- and finally, all those who keep the project alive by supporting me via donations (you know who you are)
Changelog
https://github.com/GravityBox/GravityBox/blob/kitkat/CHANGELOG.txt
XDA:DevDB Information
GravityBox [KK] Xposed Framework Module, Xposed for the Android General
Contributors
C3C076
Source Code: https://github.com/GravityBox/GravityBox/tree/kitkat
Xposed Package Name: com.ceco.kitkat.gravitybox
Version Information
Status: Stable
Current Stable Version: 3.6.2
Stable Release Date: 2017-04-23
Created 2013-12-03
Last Updated 2017-04-23
Changelogs
Changelog 3.6.2 - 23/04/2017
- Download Progress Bar: implemented extensions from SBDP module
--- added support for multiple concurrent progress bar notifications
--- keeps track of all available progress bar notifications and switches between them
--- added support for clearable notifications containing progress bar
--- added logic for auto-hiding progress of idle notifications
--- added option for sound notification
--- added option for playing sound only when screen is off
- QuietHours: implemented Wear mode
--- available only when Android Wear app is installed
--- mutes notification sounds and device-wide vibrations while preserving vibrations on a paired watch
--- can be toggled from QuietHours tile or via dedicated GravityBox Action
- Made screenshot faster by introducing dynamic context-aware delay
- Adjusted for compatibility with the latest GravityBox Unlocker v1.4.3
--- improved reliability of license validation
--- !!! won't work with older versions of the Unlocker !!!
- Updated Chinese (Simplified) translations (thanks to liveasx)
- Updated Hungarian translations (thanks to benjoe1)
Full Changelog: https://github.com/GravityBox/GravityBox/blob/kitkat/CHANGELOG.txt
Alternative downloads: directly via Xposed Installer or at: http://repo.xposed.info/module/com.ceco.kitkat.gravitybox
Reporting bugs by @trjlive
Here's the comprehensive info on reporting bugs prepared by @trjlive (many thanks!).
Please, read it carefully.
trjlive said:
I've noticed an increase in bug reports being filed over the last few days. While a few of these bug reports have been quite helpful, the vast majority of them lack significant and necessary information, which makes them less useful and causes additional confusion about what the bug really is. So I thought I would write a guide on how to provide a proper bug report for GravityBox, to help the new users to this thread, as well as provide a reference for the experienced users.
The aim of a bug report is to describe what went wrong in enough detail that the developer can reproduce it on his device. Describe everything in detail, be direct and clear. State what you saw, and also state what you expected to see. List all the steps to reproduce the problem. After you type out the steps, follow them yourself to ensure you haven’t left anything out. Don’t make any assumptions that the developer will know what you mean, if you haven’t written it out, then it didn’t happen. If the developer can’t reproduce the problem, or at least identify what is causing it, then you’re probably not going to get a fix.
Be ready to provide extra information if the developer needs it. If he didn’t need it, he wouldn’t be asking for it. He isn’t being deliberately difficult. Providing version numbers of your device, ROM, Xposed, and GravityBox are the minimum. Don’t just say “the latest version”, actually provide the number. Sometimes an update is released since the last time you checked, so you may not actually be on the latest version. Providing the actual version numbers is the only way the developer can be sure of your device’s environment.
Many users think that by providing any type of bug report, even a very basic one, such as: "It doesn't work" is better than doing nothing. Give the developer some credit for basic intelligence: if GravityBox really didn’t work at all, he would probably have noticed. Since he hasn’t noticed, it must be working for him. Therefore, either you are doing something differently from him, or your device is different from his. He needs information; providing this information is the purpose of a bug report. More information is always better than less. Be precise, developers like precision.
If a bug has already been reported, there is little reason to report it again, unless the developer specifically asks for more people to report it. When you post a "+1" message after someone else's bug report, all this does is add confusion to the thread and contributes nothing to the goal of fixing the bug. If you have no new information to provide, then don't post a bug report. If you can provide additional information that you think might help, then do post and link to the original bug report, and include your additional details, including all relevant details about your device if it’s different from what has already been reported.
Due to financial and technological constraints, developers can’t possibly own every device and ROM combination, which means there are a lot of users who have devices and ROMs that the developer has not used. This is important information. Every bug report should always include the make and model of the device, the name and version number of the ROM. An example such as, “Nexus 5 stock Android 4.4.4 build KTU84P.” Provide the device details upfront, the developer should never have ask for them, this is a basic detail that is always required. A bug may be specific to a particular device, or it may occur on different devices, but these details can make all the difference, and providing will usually result in you getting a fix sooner.
A bug report should always contain a log of the error. There are a number of things going on in the background on your device that you don’t see but are relevant to the operation of GravityBox. A minor UI glitch might be nearly impossible to track down without a log, but by being able to read line by line in a log and seeing what happened, makes it a lot easier to find and fix the bug. Without a log, many bug fixes are like trying to find a needle in a corn field. Provide a verbose log, of only the time period where you reproduce the bug. These logs will likely contain hundreds if not thousands of lines, so please limit it as much as possible to the shortest time needed to reproduce the bug. Attach the log file to your bug report as a file attachment (.txt or .zip file), or paste it on a site like pastebin.com, and then include a link to it in your bug report. But please don't just copy and paste the entire logcat into your post in this thread, it causes posts to be unnecessarily long and difficult to read.
In summary, every single bug report should contain, at the minimum, the following information:
What happened: Describe the bug, what you saw, any error messages, force closes, UI glitches, etc.
What was expected: Describe what you expected to see.
Steps to reproduce the bug: Be thorough and detailed, don’t make any assumptions in the steps. List everything you do, from tapping an icon, changing a setting, turning down the volume, etc. This is the part where you can’t give too much information, more is always better.
Device environment: List your device’s make, model, ROM name and version, OS build if available, and the carrier name is sometimes helpful (if there are multiple different configurations of the same device).
Log file: Provide a logcat file of the steps where you reproduce the bug. Set the log type to verbose, and limit the duration to as short of a time as needed to capture the bug.
If you can’t provide all of this information, then please explain why. If you’re trying to get a logcat, but it errors out before running, explain that. It’s better to explain what is preventing you from providing a crucial piece of information, than to just omit it. A bug report that contains all of this information, or as much of it as possible, will go a long way to helping the developer recreate the bug on his end, determine what is causing it, and provide a fix for it, all in a timely fashion.
And always remember to be gracious and appreciative of the developer for donating his time and effort to helping you. Developers on XDA do not get paid for their work, they do it all because they want to, on their own time and at their own expense. They owe nothing to anyone on this site. Even if you have donated to their project, they still owe you nothing more than anyone else. You donated because you wanted to contribute to the development of the project, not to buy any extra level of support.
Let’s help the developers help us, the users, by providing the necessary information they need, in the bug reports we post.
Click to expand...
Click to collapse
Thanks! (First! ) but I get a parsing error for the package...
Gesendet von meinem Nexus 4 mit Tapatalk
Maxr1998 said:
Thanks! (First! ) but I get a parsing error for the package...
Gesendet von meinem Nexus 4 mit Tapatalk
Click to expand...
Click to collapse
You can't install this on Android lower than 4.4
Thanks. Installed fine. Looking forward to trying it out
Sent from my Nexus 4 using Tapatalk
C3C076 said:
You can't install this on Android lower than 4.4
Click to expand...
Click to collapse
But I have a Nexus 4 with KRT16S...
EDIT: Worked fine now...reupload solved the issue...
Gesendet von meinem Nexus 4 mit Tapatalk
So, do you have any ideas how to get the MotoX files to decompile? Which one did you have trouble with? I can't get the framework-res.apk to install.
Great Work, AWESOME !
All i need now is KK for my phone
Thank you for great work. It's working!
Is it possible to add battery bar - line on top? If possible with animation charge. Thank you.
Sent from my GT-I9100G using Tapatalk
Great work installed on my S4.
GravityBox is working well on my n4, thanks for your good work
Gesendet von meinem Nexus 4 mit Tapatalk 2
Maxr1998 said:
But I have a Nexus 4 with KRT16S...
EDIT: Worked fine now...reupload solved the issue...
Gesendet von meinem Nexus 4 mit Tapatalk
Click to expand...
Click to collapse
No problem. I thought you have 4.3 according to your signature info.
C3C076 said:
No problem. I thought you have 4.3 according to your signature info.
Click to expand...
Click to collapse
Umm...I haven't updated it by now...
But I have to say, GravityBox with xThemes makes my phone look wonderful
Gesendet von meinem Nexus 4 mit Tapatalk
Working just fine on my Dev Moto X.
Thanks for your efforts.
To alter auto brightness what are values to start with? I'd like the screen to auto dim more when using the phone in the dark.
Beamed from my Moto X
Thank you so much for all your hard work!
Thanks a lot!!
Sent from my HTC One using Tapatalk
On HTC One GPE based rom, latest update causes phone to reboot immediately if the power button is pressed and held even momentarily. Advanced reboot is unchecked, since the rom has it included (insertcoin, modified stock pretty much)
FSRBIKER said:
Working just fine on my Dev Moto X.
Thanks for your efforts.
To alter auto brightness what are values to start with? I'd like the screen to auto dim more when using the phone in the dark.
Beamed from my Moto X
Click to expand...
Click to collapse
You have to reboot after enabling brightness tweaks. After reboot default stock levels will be filled in which you can the adjust as necessary.
gfp17 said:
On HTC One GPE based rom, latest update causes phone to reboot immediately if the power button is pressed. Advanced reboot is unchecked, since the rom has it included (insertcoin, modified stock pretty much)
Click to expand...
Click to collapse
Custom Roms are not supported but I would be interested in seeing logcat of a crash, anyway.
C3C0, My old Friend, works as expected ,as always. Thank you.
Nexus 4 AOSPA 4.0
ⓐⓝⓓⓡⓞⓒⓛⓓⓔ ⓘⓢ ⓝⓞⓣ ⓐ ⓢⓘⓝ

[request] Prepare ubuntu lts for ROM development

hello everyone . i would like to ask for guideness on how to configure my freshly installed ubuntu lts 14.02 for building CyanogenMod ROMs
and then , maybe others too..
(Interested in AOSP roms and ubuntu touch.)
i am willing to pay
i need us,to start from the scratch ,download the requirements and build one simple rom ,just for education.
Knowledge:
Java (basic to advanced APK builds with android studio)
Theme engine theming.
Knowledge on android structure.
C++ (Advanced skills-classes structs pointers)
Very basic skill on linux usage (apt-get install the requirements ,usage of terminal etc)
I am using s4 9505 with latest nightly
Thanks!!
@malcho

Linking & Using Non-NDK Android Platform Libraries

Hey Guys,
I'm working on a global audio tuning system for Android similar to Viper4Android and JamesDSP, but allowing the User to program and create their own audio filters on the fly. In order to do so I need to link against libLLVM.so which is one of the Android Platform Libraries which doesn't seem to be exposed via the NDK (https://android.googlesource.com/platform/external/llvm/).
My assumption is that I will need to build that library from AOSP Source independent of my project and then link against my locally built copy. Once compilation of my project is complete I don't need to distribute my locally built libLLVM.so file since I can leverage the one existing on the actual device.
I just wanted to see if anyone has any experience doing this, or if I'm going off the deep end.
Thanks!

Categories

Resources