My first CyanogenMod new (little) feature is born. Today I’ve finished the “Development shortcut” project. It enables the wipe data and application force close option in the recent tasks list and in the notification area. These options will be available only if the Development mode is enabled.
The first version is only for Motorola defy mb525 and is available on my github repo. I do a pull request to Quarx2k in order to merge my mod in his “official” Motorola repo.
The next step is to merge it in the official CM dev branch and submit it to gerrit review. But the first CyanogenmMod 10.2 M build is coming (this weekend) with the code freeze phase. I have to be quick!
I’m still waiting for my 9$ Arduino…some mistake in Hong Kong customs procedure has generated a huge delay in shipment.
But finally I found an “idea” for some Cyanogen development, and I want to share here the steps that I’m doing.
The Goal
At work I’m working on a feature that requires frequent “Force stop” and “Clear data” during the debug and development phase. I want to improve the “Application info” popup menu on the notification area (long click on the app notification) in order to add two new item: “Force Stop” and “Clear data”.
The Player
At the moment the Nexus S is not available, so I will use the ugliest android phone ever seen: the Motorola Defy (MB 526), aka “Jordan” – specs (From GSM arena)
I will use the CyanogenMod fork by Quarx2k, based on Android JB 4.1.2 – XDA forum post
My old development machine @ work – a Dell studio XPS with Ubuntu 12.04 LTS
Step 0 : setup the development environment
Simply follow the post on XDA forum. After a few hours you should have your standard build from JB sources
remote — the name of the remote. this can be one that was defined in either the regular manifest or local_manifest.xml.
name — the name of the git project– for github it has the format account_name/project_name.
path — where the git repository should go in your local copy of the source code.
revision — (OPTIONAL) which branch or tag to use in the repository.
Now you are ready to “repo sync” your source tree.
Step 2 : start editing
Before you change anything you need to start a new git branch. Go into the main project folder and do a “repo start banchname frameworks/base“. Now you are ready to modify the code in a new git branch.
Step 3 : build
When all the development is done, do a full build with the standard procedure
source build/envsetup.sh && brunch mb526
make -j# bacon
# represents double the cores you have on your computer
Step 4 : commit and push on github repo
Enter in frameworks/base and check the repo status with git status. Add all the modified files with the standard git add FILENAME and commit the changes with git commit -m ‘message’. Now you are ready to upload the new git branch on server git push -u github branch_name
Step 5 : backup & install
The last step is very simple: go into recovery mode and do a full Nandroid backup. After that you can flash your build and try if it works 🙂