Related
Since I don't have much time to keep on updating my BlendMIUI so I decided to writte a program to give you guys the chance to build BlendMIUI for your own with latest MIUI sources in just few minutes!
Q:What is BlendMIUI Speed-Porting Software For XPERIA 2011
Ans:This is a short program trying to help you guys to build your own BlendMIUI rom for Xperia 2011 in just few minutes.
Q:How to use it?
Unlock Bootloader first!
1.Download BMSPS(BlendMIUI Speed-Porting Software) then unpack it to anywhere you like(Windows environment).Btw,you should install JAVA SE JRE first or it won't works because it needs JAVA environment to sign the rom.You can goto oracle.com/java to download the latest Java SE JRE.
2.Download latest MIUI rom for Desire HD from miui.us(or anywhere you want).
3.Rename the rom you just downloaded as MIUI.zip then put it into BMSPS/MIUI_DHD_ROM directory.(Do not rename it as MIUI.zip.zip!)
4.Run BMSPS_luancher.exe to start.
5.Do as follows then it will automatically create update.zip under the BMSPS directory.
Then you have two choices:
=>Help youself:
6.Put the update.zip rom to your SD-card.
7.Flash BlendMIUI kernel(I have put it into \BlendMIUI-kernel directory) or DooMKernel for MIUI.
8.Use CWM-recovery to flash the update.zip rom.
=>Use Auto-Flash Function
You don't need to do anything on your phone,it will help you to do all works automatically and boot into the new system!
Features:
1.Support Devices: Xperia Arc,Xperia Arc S,Xperia NEO,Xperia NEO V,Xperia Ray.
2.Latest CM7.2.0 rebuilted sources as base.
3.Automatically port MIUI for your device then output unpdate.zip and sign the rom to let you flash it into your device directly.
4.Your choice Function (addons)
5.Fully working Auto-Flash Function
P.S: CM7 sources and kernel for XPERIA RAY are come from bheremans.
Changelog for Version 02:
1.Add moded Packageinstall to let you chose where you would like to install your apps including SD-card.
2.Fixed function to remind you to install java-jre if update.zip is not created.
3.Small changes.
Changelog for Version 03:
1.Fixed PackageInstaller and Torch FC problem when using the ROM from www.miui.com as base.
2.Automatically recognize MIUI version (Depends on the MIUI rom you use) and change Build version for porting rom.
3.Add "Your Choice" function to help you customize your own BlendMIUI rom(BlendUI,DSPManager,Tweaks,Audios from SE).
4.[For DEVs] Whole-New Source code:More easy to read,more easy to add new language(I mean the BMSPS itself) and new functions.
Changelog for Version 04:
1.Disable echoing information for better display.
2.Fixes and improve performance of BMSPS.
3.Add "Auto-Flash" function to help you flash BlendMIUI automatically
Changelog for Version 04.3:
1.Add Xperia Ray ST18i support(All sources for Xperia Ray are come from bheremans).
2.Fixed Auto-Flash function.
3.Fixed ADB Detective bug which cause the software stuck at entering into Auto-Flash function when you input "yes".
Changelog for Version 04.7:
1.Add Xperia Neo V support.
2.Fully working Auto-Flash function (You don't need to do anything on your phone now until it boots into the new system.BMSPS will help you to do everything automatically.)
3.Some small changes
WARNING:This is not an update-package and you'd better delete all old files if you have installed early version of BMSPS.
Make sure you have unlocked bootloader before using this tool.Baseband 56 is recommanded.
Download links:
BMSPS V04.7: http://www.mediafire.com/?4xxna5rim6txmmn
Latest Source Code @ github.com/JasonStein
[Credit]
Bheremans,Eamars,FXP,DooMloRd,enzo...
Please report bugs with screenshots!
Great...!!!
Only one question...!!! What about the kernel...???
great tool !
Now everyone can make his own personal miUI !
thanks man
adiktz said:
Great...!!!
Only one question...!!! What about the kernel...???
Click to expand...
Click to collapse
here is what he said for the kernel.
7.Flash BlendMIUI kernel(I have put it into \BlendMIUI-kernel directory) or DooMKernel for MIUI.
Click to expand...
Click to collapse
Sounds so cool! thanks
Just tried it for 1.11.18 and it works perfectly, a million thanks!
EDIT:
Because I'm lazy and I don't wanna boot into Win7 each time (I just have it for gaming), I compiled the BMSPS_launcher for use on my Fedora installation. I thought I'd upload it here, if anyone else using Linux wants to give it a try.
You just need the zip and unzip packages installed, in addition to the pre-requisites mentioned by Jason.
I attached the modified source file and the binaries for 32 and 64-bit installations.
@Jason: I hope this is fine with you. If not, let me know and I'll remove them. Thanks again for all your work.
Wow! So nice of you guy.
Sent from my LT15i using XDA App
crimilde said:
Just tried it for 1.11.18 and it works perfectly, a million thanks!
EDIT:
Because I'm lazy and I don't wanna boot into Win7 each time (I just have it for gaming), I compiled the BMSPS_launcher for use on my Fedora installation. I thought I'd upload it here, if anyone else using Linux wants to give it a try.
You just need the zip and unzip packages installed, in addition to the pre-requisites mentioned by Jason.
I attached the modified source file and the binaries for 32 and 64-bit installations.
@Jason: I hope this is fine with you. If not, let me know and I'll remove them. Thanks again for all your work.
Click to expand...
Click to collapse
Sure,go ahead,it would be much convenient to Linux users.
Btw I have updated my latest sources on github and I will keep on adding more functions to BMSPS.
crimilde said:
Just tried it for 1.11.18 and it works perfectly, a million thanks!
EDIT:
Because I'm lazy and I don't wanna boot into Win7 each time (I just have it for gaming), I compiled the BMSPS_launcher for use on my Fedora installation. I thought I'd upload it here, if anyone else using Linux wants to give it a try.
You just need the zip and unzip packages installed, in addition to the pre-requisites mentioned by Jason.
I attached the modified source file and the binaries for 32 and 64-bit installations.
@Jason: I hope this is fine with you. If not, let me know and I'll remove them. Thanks again for all your work.
Click to expand...
Click to collapse
Btw you can compiled it for Linux and pack whole things into an package like what I did and give me the download link so that I can attach it to my post.
crimilde said:
Just tried it for 1.11.18 and it works perfectly, a million thanks!
EDIT:
Because I'm lazy and I don't wanna boot into Win7 each time (I just have it for gaming), I compiled the BMSPS_launcher for use on my Fedora installation. I thought I'd upload it here, if anyone else using Linux wants to give it a try.
You just need the zip and unzip packages installed, in addition to the pre-requisites mentioned by Jason.
I attached the modified source file and the binaries for 32 and 64-bit installations.
@Jason: I hope this is fine with you. If not, let me know and I'll remove them. Thanks again for all your work.
Click to expand...
Click to collapse
I have checked your file,there is a mistake:
Code:
if( Device==1 )
{
chdir("DATA/LT15i/");
system("zip -r -u ../../temp.zip *");
}
should be:
Code:
if( Device==1 || Device==2)
{
chdir("DATA/LT15i/");
system("zip -r -u ../../temp.zip *");
}
Cuz LT15i & LT18i share most files
WOW really thanks i just updated my BlendMIUI it works like a charm !
thank you soo much
Edit: Thanks for adding DSPManager !! ^_^
it works soo great on my ARC !!
JasonStein said:
I have checked your file,there is a mistake:
Code:
if( Device==1 )
{
chdir("DATA/LT15i/");
system("zip -r -u ../../temp.zip *");
}
should be:
Code:
if( Device==1 || Device==2)
{
chdir("DATA/LT15i/");
system("zip -r -u ../../temp.zip *");
}
Cuz LT15i & LT18i share most files
Click to expand...
Click to collapse
Ooops, you're right, I must've deleted it by mistake. Thanks for pointing it out!
I'll recompile the thing tomorrow morning and send you the package.
Sent from my LT15i using xda premium
Is there any way to edit this rom to something we want like which APKS are installed and default launcher that kinda stuff?
this is great. it would be accelent if i could chose the language that i whant to install instead of english(not in the cmd window, but for the ROM itself).
can you make a feature for this? only then you will not only be A king you will be THE king.
@Jason: Ok so I've compiled the v2 you posted for Linux 32bit/64bit and archived the whole thing:
EDIT: Reuploaded
http://www.mediafire.com/?9uemvociipaopnn
PS - the source code is attached to the post for your reference. I commented out the Windows-specific lines (instead of deleting them) and put the Linux version below for an easier comparison.
Just one thing, I noticed that even if the update.zip was properly signed and created, the program would still display "5. Failed!" but then clear the screen and show that update.zip was successfully created...
I added an extra condition like below in the Show_Progress function and now it's fine:
Code:
if( i==5 && Step==5 && Out_Check()==0 ) printf("Failed!\n");
crimilde said:
@Jason: Ok so I've compiled the v2 you posted for Linux 32bit/64bit and archived the whole thing:
http://www.mediafire.com/?8vz0xxpyq69afo3
PS - the source code is attached to the post for your reference. I commented out the Windows-specific lines (instead of deleting them) and put the Linux version below for an easier comparison.
Just one thing, I noticed that even if the update.zip was properly signed and created, the program would still display "5. Failed!" but then clear the screen and show that update.zip was successfully created...
I added an extra condition like below in the Show_Progress function and now it's fine:
Code:
if( i==5 && Step==5 && Out_Check()==0 ) printf("Failed!\n");
Click to expand...
Click to collapse
Yes,I made a little mistake:
Code:
void Sign_Rom()
{
Show_Progress(4);
system("java -jar signapk.jar testkey.x509.pem testkey.pk8 temp.zip update.zip");
system("del temp.zip");
Show_Progress(5); // Delete this line!!!
}
Code:
Show_Progress(5);
shouldn't be there.Just remove this line and it will be fine.
I will keep on updating my source code to add more useful functions to give you more choices and let it become not only a speed-porting software but also an MIUI rom customization tool.The early version of BMSPS is quite short with some basic functions and it's not written in a standard way.I'm going to do some changes and if you like to contribute to it,you can always fork my source code and add your own things including some useful functions and I will be appreciate.
P.S:
I will release next version of BMSPS with some useful functions before MIUI 1.11.25 released.
JasonStein said:
Yes,I made a little mistake:
Code:
void Sign_Rom()
{
Show_Progress(4);
system("java -jar signapk.jar testkey.x509.pem testkey.pk8 temp.zip update.zip");
system("del temp.zip");
Show_Progress(5); // Delete this line!!!
}
Code:
Show_Progress(5);
shouldn't be there.Just remove this line and it will be fine.
Click to expand...
Click to collapse
Yeah, you're right, it's better to just remove that line instead of adding an extra condition. I'm reuploading now and I'll update the link in my post above once it's done.
crimilde said:
Yeah, you're right, it's better to just remove that line instead of adding an extra condition. I'm reuploading now and I'll update the link in my post above once it's done.
Click to expand...
Click to collapse
And it's done.
Thanks. Updated the MIUI to the latest version. This is so awesome
Hi all !
So, for you all, the user of SlimKat for L7 might encounter these signal bar bugs.
The bug is mostly (and most) noticeable bug in this ROM.
By following this guide, you agree to my conditions :
a. I won't respond to 'how to do it ?' and 'can you do it ?' or 'will you do it for me ?' question.
b. I also won't respond to 'how can I decompile .jars ?' and 'what is this ?' question, these questions can easily answered by searching Google.
c. No, I won't make a flashable zips for you, you've to do this alone. Because I want you to understand, 'what does happen if I do this ?'. So I want you to do this all by yourself.
d. Only use question for last resort (means, even by searching Google, you don't find answer to your problem)
After you read those conditions, here's the guide.
1. Decompile SlimKat framework.jar
2. Decompile other ROM (with working signal bar) framework.jar
3. Open smali/android/telephony/
4. Copy all file named CellSignalStrength and SignalStrenght from other ROM framework.jar. See CALIBAN's post for needed file to copy + screenshot.
5. Copy all of those file to SlimKat framework.jar (in the same directory, smali/android/telephony)
6. Compile SlimKat framework.jar
7. Copy modified classes.dex to original unmodified SlimKat framework.jar
8. Push the modified framework.jar to /system/framework (or add it to SlimKat zipfile)
9. Reboot (if you push it) or reflash SlimKAT, then wipe dalvik cache & cache (if you add it to SlimKat zipfile)
Thanks to -CALIBAN666- for fixing the guide !
Credits for this guide :
- SlimROMs Team : Providing a great ROM for us to use
- CM Team : No need to explain, they're a great developers. Without them, there won't be a proper working KitKat for our device.
- Optima Team : By always supporting me in every conditions
- -CALIBAN666- : Trying this tutorial, and becoming my best friend in XDA
- Google : My teacher
- Stackoverflow Members : Providing workaround for every eror
- brut.all & iBotPeaches : APKTool, the greatest tool to reverse-engineering in Android
bro its for l5 too,by the way,to make it work i must the 2 signalstrenght smalis at the bottom from telephony changing too,otherwise i have become issues with dialer and mms app.
i have attached two pics with needed smalis,created with windows screenshot.
-CALIBAN666- said:
bro its for l5 too,by the way,to make it work i must the 2 signalstrenght smalis at the bottom from telephony changing too,otherwise i have become issues with dialer and mms app.
i have attached two pics with needed smalis,created with windows screenshot.
Click to expand...
Click to collapse
Thanks bro !
Will post this to first post.
hey bro,i dont know you remember,because today i was looking in old android files on my pc and i found one of the first tweak i used which has realy worked for me,it was activo speeder,so we know us minimum 1/5 years on xda,lol.another question is,you are from the flowercity called bandung,so you know xda member evanlocked?he came from same city.
-CALIBAN666- said:
hey bro,i dont know you remember,because today i was looking in old android files on my pc and i found one of the first tweak i used which has realy worked for me,it was activo speeder,so we know us minimum 1/5 years on xda,lol.another question is,you are from the flowercity called bandung,so you know xda member evanlocked?he came from same city.
Click to expand...
Click to collapse
Activo Speeder... Yep, that was my first tweak ever made for XDA
evanlocked... I think I've seen him somewhere in XDA.
Sent from my Z4D-25232 using XDA Premium 4 mobile app
Thanks man for the guide. I used this guide on my LG Optimus G Pro.
However for me, copying the classes.dex file to the framework.jar did not make any changes. But flashing the modified framework.jar in the build>apk folder did the trick.
Thanks a million.
arifqur said:
Thanks man for the guide. I used this guide on my LG Optimus G Pro.
However for me, copying the classes.dex file to the framework.jar did not make any changes. But flashing the modified framework.jar in the build>apk folder did the trick.
Thanks a million.
Click to expand...
Click to collapse
Glad it worked well on your device, thanks for trying my guide too
Well this Guide with all its spelling mistakes somehow made it to portal
Click to expand...
Click to collapse
For Developers: If you are planning to compile your ROM, and want to use this mod, then read This Post
Background Story:
I was missing the CyberShot Camera too much and found Google Camera has been ported to JB And I also wanted to try the Moded LifeLog app, which somehow was not working on my Pacman Rom.
These were the reasons I Decided to come back to JB Stock Base. I had a previous Nandroid Backup of Lovin's Z2 ROM for XV. I took all my Call-Log and SMS Backups and also took backup of some apps that I used. Then I restored the NAND Backup today.
after that I started restoring the apps+data. Everything was fine.
After few hours of using, As I always do, I took the periodic backup of my Call Logs again. That's when I noticed, the previous Logs were 700+ and now after making some calls, it came down to 500. after Some test, I found out, this is not problem of Backup software.
A little Google search revealed Android has a default call log limit set to 500 Calls.
I searched for Xposed Mod for this, found TrimNot. But it showed error. Most probably, it is only for KK. Then I thought why not MOD it myself?
That's how it all started...
The research & work procedure:
I first thought, OK, I need to find where the Calls are stored. After passing some time with Google, I found, the Logs are stored in a SQlite3 Database, in
Code:
/data/data/com.android.providers.contacts/databases/contacts2.db
There is no limit in this database storage. So, the limit must be in the code.
After another couple of hours, I found that Android checks if the contacts has reached 500 then removes the older. Searching with
Call Log Android
Click to expand...
Click to collapse
in android API reference, where I found some leads on my research.
"public class CallLog" which is under "android.provider.CallLog"
Something told me, to look for this class, in the actual source code. But that's almost 30 GB and I don't have time. from some prior Java knowledge I knew, all class have their own source file, with the same name, So the name would be "CallLog.java"
Now I searched Google, with it and found exactly what I was looking for. The search took me to a Git page android/platform_frameworks_base
And here I found this code.
Java:
private static void removeExpiredEntries(Context context) {
final ContentResolver resolver = context.getContentResolver();
resolver.delete(CONTENT_URI, "_id IN " +
"(SELECT _id FROM calls ORDER BY " + DEFAULT_SORT_ORDER
+ " LIMIT -1 OFFSET 500)", null);
}
The file is located in
Code:
platform_frameworks_base/core/java/android/provider/CallLog.java
and from the name I guessed, this should be inside framework files. Then I went into action. I first tried to de-compile the framework-res.apk file. I used Advanced APKTool by BDFreak
Using the windows search tool, I searched for "call log". I found nothing. Then I tried to de-compile "framework.jar". For this, I followed guide by Rizal Lovins - [Share Latest Apktool 4.2.2/Guide/Tutorial/] How to Decompile/Compile/Sign Apk/Jar
after the de-compiling was Done, I found there is a "android/provider" folder. Yes, it look similar to "platform_frameworks_base/core/java/android/provider/CallLog.java"
So, here should be the files. And I found Two files
Code:
CallLog$Calls.smali
CallLog.smali
I opened both with Notepad++,
CallLog.smali gave me noting.
But after a careful search, I found the exact query inside the ]CallLog$Calls.smali file.
I found this line -
Code:
const-string v2, "_id IN (SELECT _id FROM calls ORDER BY date DESC LIMIT -1 OFFSET 500)"
I just changed 500 to 100000 and I knew my task was done.
I then recompiled the framework.jar and took backup of my original framework.jar (took Nandroid backup ), replaced the original with my modified JAR file. Set the permission rw-r-r or 644. Then rebooted my phone.
Testing:
After the phone started, I made a call, then took backup of the Call Log with Call Log Backup Restore it showed 501.
This means my task is done.
Then I thought, why not share the whole experience today in XDA. So I started Writing this Guide.
F.A.Q.
Why I need more than 500 Call Log ?
- Well I work in Billing Department of a GSM Phone Exchange/Gateway. I periodically cross check my phone Call Logs with the Exchange SoftSwitch Data. Except for that, It's just fun to try something new.
Why this guide has no steps or required steps?
- Because, if anything I missed, those will be added later in the FAQ, from the comments.
Is this tested on any device?
-Yes,
My # Xperia V with LOVINS X™ Z2 ROM 9.2.A.2.5
# Xperia V NeoWave™ ROM
# Xperia TX OmniRom
# Xperia TX (unknown ROM )
# Xperia Z2 (unknown ROM )
# Xperia P Stock ROM
#Xperia P JB based Enigma v7.2 ROM
#CyanogenMod 11 M11 and M12
Can this work on my T/TX/TL/Z/Z1 etc. etc.
- Theoretically it should work on any Device and any ROM. But, practically, I don't know, why don't you try yourself and let me know
I'm newbie, can you provide me more simple guide?
- Well I'm a Newbie myself Just take a Nandroid Backup and start the process. What can go wrong? At most you'll have to restore the backup.
Go to every link and read those too. And Don't forget to Thank those people who provided the Tools and Guides.
Still If you don't understand my guide, read it twice, if it doesn't work read again.
Ha Ha Ha kidding. Here you go A Simple guide
Update:
If you are planning to compile your ROM, and want to use this mod, then read This Post
I switched to NeoWave™ ROM and just as usual applied my MOD. Restored 800+ Call Log from Backup. Now I find another limitation. It's in the Dialer. In the KitKat Call History, there is a Statistics option. Here it always shows
TOTAL: 500 Calls,....
Click to expand...
Click to collapse
So Now I'm digging the sources again to make the stats go higher.
Update: The issue was caused because, after sometimes (any call), the call history automatically turned to 500. Because the framework.jar was odexed and i guess, odex file had the old value set again. And for the NeoWave I used android MultiTool, it showed one error while compiling, Unsigned Short value exceeds, I didn't notice that. My bad. Now I have done the Mod again with Apktool (Lovins shared one) and removed the odex file and then Everything seems fine. Even the Statistics Shows, TOATAL: 1203 Calls, ....
Tested on OmniRom and works as expected. I've used an Xposed module before which does the same thing, but it's always nice to find new ways to implement things without having to use Xposed.
Antiga Prime said:
Tested on OmniRom and works as expected. I've used an Xposed module before which does the same thing, but it's always nice to find new ways to implement things without having to use Xposed.
Click to expand...
Click to collapse
Thanks for the Confirmation. I am updating the Tested Device & ROM. Your device is TX, Right? I guessed from the signeture
Antiga Prime said:
Tested on OmniRom and works as expected. I've used an Xposed module before which does the same thing, but it's always nice to find new ways to implement things without having to use Xposed.
Click to expand...
Click to collapse
Would you like to share the Xposed module you used before?
pollob666 said:
Thanks for the Confirmation. I am updating the Tasted Device & ROM. Your device is TX, Right? I guessed from the signeture
Click to expand...
Click to collapse
Yes, I have a TX.
tianzhisun said:
Would you like to share the Xposed module you used before?
Click to expand...
Click to collapse
It's the same one linked in the OP, except it's named TrimNot, not TimNot. I thought it might be a different one given that the one linked above didn't work for @pollob666, but I guess it's because I'm on a 4.4 ROM.
It's the same one linked in the OP, except it's named TrimNot, not TimNot. I thought it might be a different one given that the one linked above didn't work for @pollob666, but I guess it's because I'm on a 4.4 ROM.
Click to expand...
Click to collapse
Oops.. It was a Typo Yes, TrimNot works on KK but not on JB. that is why I needed to modify my Android Framework.
This is great and I will try it out.
But there is also another ridiculous limitation, that is the maximum of 20 alarms you can have in the clock
acb123 said:
This is great and I will try it out.
But there is also another ridiculous limitation, that is the maximum of 20 alarms you can have in the clock
Click to expand...
Click to collapse
for the clock there is this guide http://forum.xda-developers.com/showpost.php?p=53591001&postcount=6 give it a look
acb123 said:
This is great and I will try it out.
Click to expand...
Click to collapse
After trying, give us the update.
But there is also another ridiculous limitation, that is the maximum of 20 alarms you can have in the clock
Click to expand...
Click to collapse
I didn't notice that. Let's see what we can do about that
pollob666 said:
I didn't notice that. Let's see what we can do about that
Click to expand...
Click to collapse
give a look at the link in the post above yours... it's for z2 but it could work also for other version
Works fine on Xperia P running JB based Enigma v7.2
It works on stock based Xperia P. pollob666 small typo. How about renaming "tasted" to "tested"
usb2 said:
give a look at the link in the post above yours... it's for z2 but it could work also for other version
Click to expand...
Click to collapse
Yeah, saw that, going to try it tomorrow. Hopefully, here I can find some DB sources too.
prasadkumar013 said:
It works on stock based Xperia P. pollob666 small typo. How about renaming "tasted" to "tested"
Click to expand...
Click to collapse
Sorry about that, I guess I'll have to check the whole OP
Please make the steps simple for a newbie
Well, I was looking for this feature since Google invented Android!:good:
I was using MIUI because of they're giving unlimited Call log. Then some one invented TrimNot on Aug 15, 201, I came again to OzcanRom (My Fav). Trim not doesn't work at all.
My question is, Can you make this step more simple. I'm a new bie. :fingers-crossed:
pollob666 said:
Background Story:
I was missing the CyberShot Camera too much and found Google Camera has been ported to JB And I also wanted to try the Moded LifeLog app, which somehow was not working on my Pacman Rom.
These were the reasons I Decided to come back to JB Stock Base. I had a previous Nandroid Backup of Lovin's Z2 ROM for XV. I took all my Call-Log and SMS Backups and also took backup of some apps that I used. Then I restored the NAND Backup today.
after that I started restoring the apps+data. Everything was fine.
After few hours of using, As I always do, I took the periodic backup of my Call Logs again. That's when I noticed, the previous Logs were 700+ and now after making some calls, it came down to 500. after Some test, I found out, this is not problem of Backup software.
A little Google search revealed Android has a default call log limit set to 500 Calls.
I searched for Xposed Mod for this, found TrimNot. But it showed error. Most probably, it is only for KK. Then I thought why not MOD it myself?
That's how it all started...
The research :
I first thought, OK, I need to find where the Calls are stored. After passing some time with Google, I found, the Logs are stored in a SQlite3 Database, in
Code:
/data/data/com.android.providers.contacts/databases/contacts2.db
There is no limit in this database storage. So, the limit must be in the code.
After another couple of hours, I found that Android checks if the contacts has reached 500 then removes the older. Searching with
in android API reference, where I found some leads on my research.
"public class CallLog" which is under "android.provider.CallLog"
Something told me, to look for this class, in the actual source code. But that's almost 30 GB and I don't have time. from some prior Java knowledge I knew, all class have their own source file, with the same name, So the name would be "CallLog.java"
Now I searched Google, with it and found exactly what I was looking for. The search took me to a Git page android/platform_frameworks_base
And here I found this code.
Java:
private static void removeExpiredEntries(Context context) {
final ContentResolver resolver = context.getContentResolver();
resolver.delete(CONTENT_URI, "_id IN " +
"(SELECT _id FROM calls ORDER BY " + DEFAULT_SORT_ORDER
+ " LIMIT -1 OFFSET 500)", null);
}
The file is located in
Code:
platform_frameworks_base/core/java/android/provider/CallLog.java
and from the name I guessed, this should be inside framework files. Then I went into action. I first tried to de-compile the framework-res.apk file. I used Advanced APKTool by BDFreak
Using the windows search tool, I searched for "call log". I found nothing. Then I tried to de-compile "framework.jar". For this, I followed guide by Rizal Lovins - [Share Latest Apktool 4.2.2/Guide/Tutorial/] How to Decompile/Compile/Sign Apk/Jar
after the de-compiling was Done, I found there is a "android/provider" folder. Yes, it look similar to "platform_frameworks_base/core/java/android/provider/CallLog.java"
So, here should be the files. And I found Two files
Code:
CallLog$Calls.smali
CallLog.smali
I opened both with Notepad++,
CallLog.smali gave me noting.
But after a careful search, I found the exact query inside the ]CallLog$Calls.smali file.
I found this line -
Code:
const-string v2, "_id IN (SELECT _id FROM calls ORDER BY date DESC LIMIT -1 OFFSET 500)"
I just changed 500 to 100000 and I knew my task was done.
I then recompiled the framework.jar and took backup of my original framework.jar (took Nandroid backup ), replaced the original with my modified JAR file. Set the permission rw-r-r or 644. Then rebooted my phone.
Testing:
After the phone started, I made a call, then took backup of the Call Log with Call Log Backup Restore it showed 501.
This means my task is done.
Then I thought, why not share the whole experience today in XDA. So I started Writing this Guide.
F.A.Q.
Why I need more than 500 Call Log ?
- Well I work in Billing Department of a GSM Phone Exchange/Gateway. I periodically cross check my phone Call Logs with the Exchange SoftSwitch Data. Except for that, It's just fun to try something new.
Why this guide has no steps or required steps?
- Because, if anything I missed, those will be added later in the FAQ, from the comments.
Is this tested on any device?
-Yes,
My # Xperia V with LOVINS X™ Z2 ROM 9.2.A.2.5
# Xperia TX OmniRom
# Xperia TX (unknown ROM )
# Xperia Z2 (unknown ROM )
# Xperia P Stock ROM
Can this work on my T/TX/TL/Z/Z1 etc. etc.
- Theoretically it should work on any Device and any ROM. But, practically, I don't know, why don't you try yourself and let me know
Click to expand...
Click to collapse
---------- Post added at 11:08 AM ---------- Previous post was at 10:10 AM ----------
Can you please share the framework.jar file that edited and recompiled by you? If you can make a edited framework.jar for OzcanRom 4.2, I will be very thankful. I spent almost two nights on this and failed. Please help. :silly::fingers-crossed:
Antiga Prime said:
Tested on OmniRom and works as expected. I've used an Xposed module before which does the same thing, but
it's always nice to find new ways to implement things without having to use Xposed.
Click to expand...
Click to collapse
A Simpler guide
jamoen said:
My question is, Can you make this step more simple. I'm a new bie. :fingers-crossed:
Can you please share the framework.jar file that edited and recompiled by you? If you can make a edited framework.jar for OzcanRom 4.2, I will be very thankful. I spent almost two nights on this and failed. Please help. :silly::fingers-crossed:
Click to expand...
Click to collapse
No need to Quote the whole OP
My framework.jar won't work for you. We need to modify your ROM's framework.jar if you can provide me that file, I can MOD it for you.
But, I am giving the Simple steps. I would be very happy if you can do it yourself.
I am assuming you already have Notepad++ or Similar text editing tool and know how to pull files from /system
Step 1: Download APKTool of your choice. I used Advanced APKTool by BDFreak
Step 2: Decompile your framework.jar. For this, I followed guide by Rizal Lovins - [Share Latest Apktool 4.2.2/Guide/Tutorial/] How to Decompile/Compile/Sign Apk/Jar
Step 3: Open the CallLog.smali file and any other files that starts with CallLog ( like in my case CallLog$Calls.smali ) in Notepad++ or any other Text Editor.
Step 4: search for "SELECT _id FROM calls ORDER BY" or similar lines. You will find LIMIT -1 OFFSET 500 change 500 with any number you want.
Step 5: Save the modified file smali, and recompile the jar file.
Step 6: Just to be safe, take a NANDROID backup.
Step 7: Take a backup of the original framework.jar, delete it from system and push the modified framework.jar to System and change permission to rw-r-r or 644. Reboot.
Step 8: test
I couldn't find Provider folder. Please help.
I couldn't find Provider folder. Please help.
Failed! Please help
pollob666 said:
No need to Quote the whole OP
Click to expand...
Click to collapse
Thank you for the reply.
I could not find any folder called Provider. Searched all folders and failed to find a call entry.
I took the framework.jar from system folder. Any wrong?
Attached my framework.jar file. Please help me.
Found the string in framework2.jar and edited. Success!!
Please help me to push it again...
Can I use esfile explorer?
---------- Post added at 02:31 PM ---------- Previous post was at 02:09 PM ----------
jamoen said:
Found the string in framework2.jar and edited. Success!!
Please help me to push it again...
Can I use esfile explorer?
Click to expand...
Click to collapse
Unfortunately.. The method failed. Going back to MIUI in tears..
jamoen said:
Found the string in framework2.jar and edited. Success!!
Please help me to push it again...
Can I use esfile explorer?
---------- Post added at 02:31 PM ---------- Previous post was at 02:09 PM ----------
Unfortunately.. The method failed. Going back to MIUI in tears..
Click to expand...
Click to collapse
WOW, you really did it. Sorry I was in training my juniors at office, didn't reply earlier.
You can use es explorer, or if you have adb, then you can use some shell commands. I can give you the commands, if you haven't done it already.
It should work. Let me check and mod a it for you.
Edit: Sorry, I don't have the framework2.jar. ant the ROM is too big for downloading now at office. But for Samsung device, I guess the re-compile process needs a bit working. you need to recompile the file, then open it in 7zip or WinRAR replace the AndroidManifest file with the file of the original, (then sign it then zipalign it not sure for jar file though). Then push it to the system.
pollob666 said:
WOW, you really did it. Sorry I was in training my juniors at office, didn't reply earlier.
You can use es explorer, or if you have adb, then you can use some shell commands. I can give you the commands, if you haven't done it already.
It should work. Let me check and mod a it for you.
Edit: Sorry, I don't have the framework2.jar. ant the ROM is too big for downloading now at office. But for Samsung device, I guess the re-compile process needs a bit working. you need to recompile the file, then open it in 7zip or WinRAR replace the AndroidManifest file with the file of the original, (then sign it then zipalign it not sure for jar file though). Then push it to the system.
Click to expand...
Click to collapse
I double checked it. Again extracted the framework.jar and decompliled it.The string of 100000 is there. But this thing is not working. I don't know why.
Can I share you the framework2.jar with you?
jamoen said:
I double checked it. Again extracted the framework.jar and decompliled it.The string of 100000 is there. But this thing is not working. I don't know why.
Can I share you the framework2.jar with you?
Click to expand...
Click to collapse
I will modify it and upload it for you. But I guess I will need the framework-res.apk with it. if there is any. But, I'm going home now, I'll update you by 11pm.
Q&A for [JANICE][OFFICIAL][DEVELOPMENT] - CrystalPA 6.00 - Android 4.4.4 - CRX Team
Some developers prefer that questions remain separate from their main development thread to help keep things organized. Placing your question within this thread will increase its chances of being answered by a member of the community or by the developer.
Before posting, please use the forum search and read through the discussion thread for [JANICE][OFFICIAL][DEVELOPMENT] - CrystalPA 6.00 - Android 4.4.4 - CRX Team. If you can't find an answer, post it here, being sure to give as much information as possible (firmware version, steps to reproduce, logcat if available) so that you can get help.
Thanks for understanding and for helping to keep XDA neat and tidy!
Good to see someone doesn't forgot our mob :highfive:
When update ??.. project lost ???
Where is t
Where is the download link for v8.00 ? I found only 7.00 in the website :/
Where can i download the gapps?
MuhdMuzakkir said:
Where can i download the gapps?
Click to expand...
Click to collapse
Anywhere. Just search XDA 4.4.4. gapps.
Problems
Can't download the file from crxteam page. do you guys have a new link?
Can anyone tell me how to replace keyboard apk in system folder ? Do I need to resign the apk? Or what am I missing? Seems that Whatever I try, it doesn-t want to work at all ( with custom keyboards )
pictorul20 said:
Can anyone tell me how to replace keyboard apk in system folder ? Do I need to resign the apk? Or what am I missing? Seems that Whatever I try, it doesn-t want to work at all ( with custom keyboards )
Click to expand...
Click to collapse
You can just put it in data, no need to be in system partition. And probably it is because it is not signed.
P.S. Try to put same permission like on other apks there. 644
shut_down said:
You can just put it in data, no need to be in system partition. And probably it is because it is not signed.
P.S. Try to put same permission like on other apks there. 644
Click to expand...
Click to collapse
to make things clearly, maybe i didin-t say all the right story ............. I am trying to make a full blacked out rom ( Fully with only hdpi icons ) so ........ that all been said , I need every apk to be modified in order to achieve this goal ( I must to confirm, I gained some more free ram and more space for installing apk-s ) so .......... thing is ........... i get errors with camera2.apk and with latinIME.apk everytime I try to repack the apk and replace with the quote stock keyboard . no matter if i try to sign/unsign it ......... it doesn„t like the repack process or maybe I-m missing something? Maybe it needs to be recompiled? I did this method for every other apk that can be found in system folder, without problems. Only camera 2 and LatinIME gave me those nasty errors.....maybe they are repacked in other way ?
P.S : I-m on dark cm rom , so yeahh........ that-s my experiment rom .
L.E : I found out that I don-t have to repack the apk. I only need to zip it normally without any modification like decompiling or whatever else
pictorul20 said:
to make things clearly, maybe i didin-t say all the right story ............. I am trying to make a full blacked out rom ( Fully with only hdpi icons ) so ........ that all been said , I need every apk to be modified in order to achieve this goal ( I must to confirm, I gained some more free ram and more space for installing apk-s ) so .......... thing is ........... i get errors with camera2.apk and with latinIME.apk everytime I try to repack the apk and replace with the quote stock keyboard . no matter if i try to sign/unsign it ......... it doesn„t like the repack process or maybe I-m missing something? Maybe it needs to be recompiled? I did this method for every other apk that can be found in system folder, without problems. Only camera 2 and LatinIME gave me those nasty errors.....maybe they are repacked in other way ?
P.S : I-m on dark cm rom , so yeahh........ that-s my experiment rom .
L.E : I found out that I don-t have to repack the apk. I only need to zip it normally without any modification like decompiling or whatever else
Click to expand...
Click to collapse
Read part titled Signing: http://forum.xda-developers.com/showthread.php?t=2295002
Hi, i used the 8.00ver, but camera apk doesn't work. How can i solve this probleme?
Mocsokba said:
Hi, i used the 8.00ver, but camera apk doesn't work. How can i solve this probleme?
Click to expand...
Click to collapse
Just curious: where did you get CPA 8.00.
AFAIK ver 7.00 is the latest one for the SGSA.
rog_star said:
Just curious: where did you get CPA 8.00.
AFAIK ver 7.00 is the latest one for the SGSA.
Click to expand...
Click to collapse
Sorry, your right. I was on 7.00ver
Hello devs, and thank you for sharing your ROM with us.
I got a question. When I got missed call notification for the very first time after installation I have swiped it to the left. Then, i was asked if I want to enable opening apps in floating window after swiping notification to the left. I pressed "Yes", but now I regret that decision. Now, the question - how to disable opening app in window after swiping notification? I cannot find any kind of settings.
davider said:
Hello devs, and thank you for sharing your ROM with us.
I got a question. When I got missed call notification for the very first time after installation I have swiped it to the left. Then, i was asked if I want to enable opening apps in floating window after swiping notification to the left. I pressed "Yes", but now I regret that decision. Now, the question - how to disable opening app in window after swiping notification? I cannot find any kind of settings.
Click to expand...
Click to collapse
@davider Go to setting - Backup & reset - reset prefernce...i think there should be reset option to disable floating window
new version
a new version 8.50 is available on the crx site, dont know about the stability any one tried it?
Hi everyone,
I wanna build old version of Xposed, for Android SDK 16-19, then have tried to compile Xposed fw for hundreds time but still failed.
Environment: Ubuntu 15.10 x64 | tools: JDK 1.6, libc6 ....
AOSP: JZO54L / android-4.1.2_r2 /Jelly Bean ("make app_process" have been run successfully).
My steps:
- Download AOSP into /opt/android/aosp
- XposedBridge.jar: Download Xposed Installer here repo[dot]xposed[dot]info/module/de.robv.android.xposed.installer and detach jar from apk. Put it to /opt/out/java
- Download XposedTools source from github into /opt/xposed/ then make build.conf file:
[General]
outdir = /opt/out
[Build]
# Please keep the base version number and add your custom suffix
version = 58
# makeflags = -j4
[GPG]
sign = release
user = 852109AA!
# Root directories of the AOSP source tree per SDK version
[AospDir]
16 = /opt/android/aosp
# SDKs to be used for compiling BusyBox
# Needs github[dot]com/rovo89/android_external_busybox
[BusyBox]
Click to expand...
Click to collapse
- To integrate Xposed to AOSP, I tried following 2 ways in the instruction (local manifest and manual cloning)
+ local manifest: link [XposedTools]/local_manifests/xposed_sdk16.xml to [aosp]/.repo/local_manifests/ then run repo sync.
+ manual cloning: remove [aosp]/build; clone github[dot]com/rovo89/platform_build/ to replace; clone github[dot]com/rovo89/Xposed into [aosp]/framework/base/cmds/xposed
- Go back to [XposedTools] and run ./build -t x86:16
>>output: cd /opt/android/aosp && . build/envsetup.sh >/dev/null && lunch full_x86-user >/dev/null && make -j8 TARGET_CPU_SMP=true xposed
Click to expand...
Click to collapse
The result I received is a big "app_process_xposed" file (~ 270-350 KBs), it size is as many times as the origin app_process file (~20 KBs). I think there are somethings wrong. I open them by 7z and see some differences:
i.imgur.com/PU80vSV.png
Click to expand...
Click to collapse
I may did some mistakes in these steps. Could you please give me any advice?
Thank so much!
Help me Pls...
Did you actually try the app_process_xposed you got, or did you just assume it was wrong because it was bigger? If you did try it, what did it do?
josephcsible said:
Did you actually try the app_process_xposed you got, or did you just assume it was wrong because it was bigger? If you did try it, what did it do?
Click to expand...
Click to collapse
Thank for your reply. I tried rename app_process_xposed to app_process_sdk16 then push new file to assets folder of XposedInstaller project. When XposedInstaller.apk file installed, i had receive messages not compatible with my sdk 19...
hahalulu said:
When XposedInstaller.apk file installed, i had receive messages not compatible with my sdk 19...
Click to expand...
Click to collapse
What was the exact message that you got? Can you post a screenshot of it?
josephcsible said:
What was the exact message that you got? Can you post a screenshot of it?
Click to expand...
Click to collapse
My message i had received
Update: sdk16.zip file
I'm still stuck at this problem :crying:
hahalulu said:
I'm still stuck at this problem :crying:
Click to expand...
Click to collapse
build duoc chua ban. minh cung dang bi giong ban. khong biet giai quyet the nao
hellboy211 said:
build duoc chua ban. minh cung dang bi giong ban. khong biet giai quyet the nao
Click to expand...
Click to collapse
Please post in English, I have translated this one for you
Regards
Sawdoctor
Build is not acid. You are also welcome. Not the right time