[Android Software Development] lokeshsaini94:
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

~~~~~~~~~~~~~~~~~~~~~~System Apps Mods~~~~~~~~~~~~~~~~~~~~~~

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------​

1. Remove (ANNOYING) SMS LOG from Call log

Decompile LogsProvider.apk with apktool or similar.

Go to LogsProvider.apk\smali\com\sec\android\provider\logsprovider\ and open LogsProvider.smali with notepad++

Search for word "SMS"

Remove the whole code. As shown below

.line 216
sget-object v0, Lcom/sec/android/provider/logsprovider/LogsProvider;->sURIMatcher:Landroid/content/UriMatcher;

const-string v1, "logs"

const-string v1, "sms"

const/16 v2, 0x9

invoke-virtual {v0, v3, v1, v2}, Landroid/content/UriMatcher;->addURI(Ljava/lang/String;Ljava/lang/String;I)V

Save the file and close it.

Now compile back apk file and push back to system/app.

2. Add own wallpapers to default wallpaper gallery.

Decompile TwWallpaperChooser.apk with apktool or similar.

resize wallpaper in two copies with some tool like "any pic image resizer". one copy of wallpaper of around 640x480 dimension and second copy of wallpaper of around 107x80 dimension(these values depends on whether your device is hdpi, mdpi, ldpi etc)(not much important only for proper re-sizing)

Rename wallpaper of 1st copy to wallpaper_name and wallpaper of 2nd copy to wallpaper_name_small

now copy these wallpapers to TwWallpaperChooser.apk\res\drawable-mdpi\

Go to TwWallpaperChooser.apk\res\values-mdpi\ and open arrays.xml with notepad++

Search for line

</string-array>

Add this line for wallpaper copied in drawable-mdpi from first copy

<item>wallpaper_name</item>

note: here we need to add only name of wallpaper from first copy. we won't add name of wallpaper from second copy i.e. wallpaper_name_small

Now whole arrays.xml would look like this

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="wallpapers">
<item>wallpaper_lock</item>
<item>wallpaper_22</item>
<item>wallpaper_23</item>
<item>wallpaper_name</item>
</string-array>
</resources>

Save the file and close it.

Now compile back apk file and push back to system/app.

3. CRT OFF ANIMATION.

Decompile framework-res.apk with apktool or similar.

Go to framework-res.apk\res\values\ and open bools.xml with notepad++

Search for line

Replace true with false. As shown below

Save the file and close it.

Now compile back apk file and push back to system/framework.

Now open your build.prop with root explorer or similar on your phone.

search for

add # infront of this line. Like this

save it and restart your phone.

4. ICS STYLE Progress bar and Sliders.

Decompile framework-res.apk with apktool or similar.

Go to framework-res.apk\res\drawable\ and open progress_horizontal.xml with notepad++

Replace Whole code with this code

<?xml version="1.0" encoding="utf-8"?>
<layer-list
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@id/background" android:drawable="@drawable/progress_bg_holo_light" />
<item android:id="@id/secondaryProgress">
<scale android:drawable="@drawable/progress_secondary_holo_light" android:scaleWidth="100%" />
</item>
<item android:id="@id/progress">
<scale android:drawable="@drawable/progress_primary_holo_light" android:scaleWidth="100%" />
</item>
</layer-list>

Save the file and close it.

Now open progress_indeterminate_horizontal.xml

and replace whole code with this

<?xml version="1.0" encoding="utf-8"?>
<animation-list android:oneshot="false"
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo1" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo2" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo3" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo4" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo5" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo6" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo7" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo8" />
</animation-list>

Save the file and close it.

Go to framework-res.apk\res\values\ and open styles.xml with notepad++

Search for Widget.ProgressBar.Horizontal and select whole code starting from <style name="Widget.ProgressBar.Horizontal" to </style>

Now replace it with this code

<style name="Widget.ProgressBar.Horizontal" parent="@style/Widget.ProgressBar">
<item name="maxHeight">16.0dip</item>
<item name="indeterminateOnly">false</item>
<item name="indeterminateDrawable">@drawable/progress_indeterminate_horizontal</item>
<item name="progressDrawable">@drawable/progress_horizontal</item>
<item name="minHeight">16.0dip</item>
</style>

Search for Widget.SeekBar and select whole code starting from <style name="Widget.SeekBar" parent="@style/Widget"> to </style>

Now replace it with this code

<style name="Widget.SeekBar" parent="@style/Widget">
<item name="focusable">true</item>
<item name="maxHeight">13.0dip</item>
<item name="indeterminateOnly">false</item>
<item name="indeterminateDrawable">@drawable/progress_horizontal</item>
<item name="progressDrawable">@drawable/progress_horizontal</item>
<item name="minHeight">13.0dip</item>
<item name="thumb">@drawable/seek_thumb</item>
<item name="thumbOffset">16.0dip</item>
</style>

Save the file and close it.

Now download progress_holo.zip from here and ics progress bar.zip from here

Extract files from both zips to res/drawable-mdpi/(here)

Now compile back apk file and push back to system/framework.

5. Modifying Settings app.

Screenshots:

5.1 Adding Categories in settings menu

Decompile Settings.apk with apktool or similar.

Go to Settings.apk\res\xml\ and open settings.xml with notepad++

Add this in it anywhere you want like in screenshot. (change ATOM Settings to whatever you want)

<PreferenceCategory android:title="ATOM Settings" />

5.2 Adding Options in settings menu

Decompile app you want to launch from the settings with apktool or similar. (in may case it is lidroid parts)

Open AndroidManifest.xml in notepad++ and in 2nd line search for package="com.something.else" (package="com.lidroid.parts" in my case)

Decompile Settings.apk with apktool or similar.

Go to Settings.apk\res\drawable-mdpi\ and copy and paste icon from the app. Remember the name of icon.

Go to Settings.apk\res\xml\ and open settings.xml with notepad++

Add this code where you want.

<com.android.settings.IconPreferenceScreen android:title="Atom Settings" settings:icon="@drawable/ic_gaple_part">
<intent android:targetPackage="com.lidroid.parts" android:action="android.intent.action.MAIN" android:targetClass="com.lidroid.parts.MainActivity" />
</com.android.settings.IconPreferenceScreen>

Change ic_gaple_part with name of your icon.

Change com.lidroid.parts to what it was yours in 2nd step.

5.3 Adding Text in About Phone section

Go Here​