Does anybody know what everything is related to screen orientation if I want to build custom ROM with locked portrait mode?
I saw one row in settings.db named user_rotation.
Also there is "ro.sf.hwrotation" in build.prop
In framework-res.apk is "config_AllowAllRotation".
Is this needed to be changed at all? Where I can look android platform files details, explanations etc?
Related
Ok, got a bit of a problem here... I need to change the default homepage of the browser in a Rom I'm cooking... that means the homepage you get after a full factory reset, not that you set in the menu.... Please don't tell me how to set it in the browser menu....
A bit of background... I'm using a leaked Rom to build from. It was leaked from a Tracfone "LG-L95G" which is identical in every way to the LG-P999 aka T-Mobile G2X. Everything is working 100%. The only problem left from the "porting" is removing Tracfone as the default browser homepage.
This has turned out to be harder than I expected.
What I have done:
Browser.apk - the xml lists Google as the homepage. The word "tracfone" appears NOWHERE in the entire structure of the decompiled xml or values or even in the smali code.
SystemUI & framework-res - I've seen suggestions the homepage hides here. Can't find anything suggesting a setting to "tracfone"
flexdb - I really thought I had it kicked here. /system/etc/flex.db listed m.tracfone.com as the homepage for T-Mobile US. I changed all occurrences here to about:blank. I have also tried simply copying the flex.db from a P999 itself. Ie, removed ALL references to tracfone service and made it identical to a P999 in every way.
Ran grep -R tracfone * on the entire ROM.
Dug through tons of files by hand looking for any clue.
Unfortunately, even with all of that, do a wipe, open the browser, and you GET M.TRACFONE.COM again!
The word "tracfone" does not appear in build.prop, it does not appear in any init scripts, not even in the kernel scripts! Yet it comes back like Christine...
Does anyone have a clue where I could look next? Or failing that, even some way from an init.d script that I can overwrite the setting myself?
EDIT
Okay, I hate giving myself clues like this, but maybe this will help others (if I'm on the right track)...
Instead of doing a grep on the ROM from my PC, pre-install, I decided to actually hit up the RUNNING copy... so from adb into a Bash prompt on the phone itself, I ran a grep -r tracfone * and got the following result:
Code:
data/data/com.android.browser/databases/browser.db:Web page not availablehttp://m.tracfone.com/
data/data/com.android.browser/shared_prefs/com.android.browser_preferences.xml:<string name="homepage">http://m.tracfone.com</string>
data/data/com.lge.providers.flex/databases/flex.db:M77BRW_SETTINGDB_CURRENT_HOME_URL_Ihttp://m.tracfone.comhttp://m.tracfone.comI#
data/data/com.lge.providers.flex/databases/flex.db:=77BRW_SETTINGDB_HOME_URL_Ihttp://m.tracfone.comhttp://m.tracfone.como"
data/data/com.lge.providers.flex/databases/flex.db:=;;DATACOM_ACCOUNT_MMSC_0_Ihttp://mms.tracfone.comhttp://[email protected]
data/data/com.lge.providers.flex/databases/flex.db:;%%DATACOM_ACCOUNT_APN_0_Iwap.tracfonewap.tracfone:?
data/data/com.lge.providers.flex/databases/flex.db:M77BRW_SETTINGDB_CURRENT_HOME_URL_Ihttp://m.tracfone.comhttp://m.tracfone.comI
data/data/com.lge.providers.flex/databases/flex.db:=77BRW_SETTINGDB_HOME_URL_Ihttp://m.tracfone.comhttp://m.tracfone.como
data/data/com.lge.providers.flex/databases/flex.db:=;;DATACOM_ACCOUNT_MMSC_0_Ihttp://mms.tracfone.comhttp://mms.tracfone.com6%
data/data/com.lge.providers.flex/databases/flex.db:;%%DATACOM_ACCOUNT_APN_0_Iwap.tracfonewap.tracfone:$
Which is very odd.... considering that is NOT the content of the actual flex.db that was flashed to the phone. That leads to 1 question: Why isn't the phone respecting the flex.db? I've noticed other edits to the file (such as bookmarks) do not apply either. So it is being ignored at somepoint. FlexProvider.apk maybe? Or is something in the ROM still identifying the phone to T-Mobile as an MVNO device and they're pushing out an OTA flex update?
EDIT 2:
AHA! There's a flex.db *INSIDE* the FlexProvider.apk file! So it *IS* ignoring the one placed in /system/etc/flex/! Editing this should solve it - but I'm going to test test test to make sure.
lotherius said:
Ok, got a bit of a problem here... I need to change the default homepage of the browser in a Rom I'm cooking... that means the homepage you get after a full factory reset, not that you set in the menu.... Please don't tell me how to set it in the browser menu....
Click to expand...
Click to collapse
firstly to say interesting question!!
but I think it it not possible to change programmatically default homepage
this is a system app so will be signed by your provider let us suppose you find homepage location in code (could by result of a script parsing) by modifying source of that apk package how to solve signature problem ?!
if in .db file ...this file is created after flashing as a result of script parsing
not framework-res.apk better browser-res.apk if you have one
ruscan.calin said:
firstly to say interesting question!!
but I think it it not possible to change programmatically default homepage
this is a system app so will be signed by your provider let us suppose you find homepage location in code (could by result of a script parsing) by modifying source of that apk package how to solve signature problem ?!
if in .db file ...this file is created after flashing as a result of script parsing
not framework-res.apk better browser-res.apk if you have one
Click to expand...
Click to collapse
man use a ... editor...I can show you for fifty bucks
I was just curious about this tricky change (from your post) so thinking about Google motto don't be bad finally I have found but should recognize that I am bad at this time
here is solution
Actually, you can use an sqlite editor to change the values in the flex.db file... the problem I was having in the OP is that on an LG phone (maybe others?) the flex.db file is ignored and the one inside FlexProvider is used instead, so you have to edit both. You can add new locales the same way. No need to use a hex editor, as that would be much more difficult.
lotherius said:
Actually, you can use an sqlite editor to change the values in the flex.db file... the problem I was having in the OP is that on an LG phone (maybe others?) the flex.db file is ignored and the one inside FlexProvider is used instead, so you have to edit both. You can add new locales the same way. No need to use a hex editor, as that would be much more difficult.
Click to expand...
Click to collapse
maybe you are right regarding your phone... but also I prepare a custom rom for Alcatel ot-908 also to change default homepage was a problem for me but I did and simply works !
I currently use a HTC HD Mini (Photon) running the SCREAM ROM by Ling Gan. It has a few bugs for most of which there is either a workaround or fix but there is the one problem which has remained unsolved: the default wallpaper on everything BUT the home and lockscreens cannot be changed. It is of a tree in a meadow under a blue sky and when rotated to landscape changes to some smiling chinese lady in the "settings" submenu. Doesn't hamper use much but it is quite annoying.
I have tried a number of solutions some of which resulted in my having to reflash and others did nothing. I post this here because I think it is a CM7 issue. The ROM developers have so far been unable to post a solution within the thread and I am aware that a fix for similar problems on CM9 ROMs exists using ADB to edit framework-res.apk. I felt it was time the problem was tackled by the wider XDA fam. Used google translate to look on the chinese site where the ROM is native to (mobile-kon) but found no help as well. Any help would be greatly appreciated.
i think ur problem lays in the framework-res.apk it contains the look of the rom and the transition effects
you can mod apk with the apkmanager tool for ur computer in the frameworkresapk you should find the images u want to change replace them witch a black picture or something like that
if never done this befoure exept from changing some transition effects and i had a couple of errors among this
the easier way seems to search for the rom on another page cus the images ure stating are not standart in the cm7
SOLVED!
jiffer1991 said:
i think ur problem lays in the framework-res.apk it contains the look of the rom and the transition effects
you can mod apk with the apkmanager tool for ur computer in the frameworkresapk you should find the images u want to change replace them witch a black picture or something like that
if never done this befoure exept from changing some transition effects and i had a couple of errors among this
the easier way seems to search for the rom on another page cus the images ure stating are not standart in the cm7
Click to expand...
Click to collapse
Many thanks!
I started off looking through the "res" folder in framwork-res.apk using Root Explorer to identify the images for the wallpaper. They were
Res/drawable-land-mdpi/screen-background-dark-transparent.png
And
Res/drawable-mdpi/screen-background-dark-transparent.png
I then created a copy of framework-res.apk on my SD card and copied it onto my pc. I created new wallpapers to replace the ones I just mentioned, one in portrait, the other in landscape. They were 320x480 and 480x320 respectively. Using 7zip on the pc, I placed them in the corresponding folders (/drawable-mdpi for protrait and /drawable-land-mdpi for landscape).
I copied framework-res.apk back to my sdcard and then fired up terminal emulator to run the following commands
su
sys -rw
busybox cp /sdcard/framework-res.apk /system/framework
sys -rw
You might get error messages from running apps after this but ignore them and reboot. The idea is to replace the framework-res.apk in system/framework with the one you just edited.
After the reboot, you should have your newly created wallpaper showing up in settings in both landscape and portrait modes.
Please hit "thanks" for both jiffer1991 and I if this was helpful. Big ups to jiffer1991for pushing me in the right direction.
Hi,
i did something wrong.
So my Phone didn´t run.
He show me the Bootsceen and the Animation.
But the he will run again and again and again.
Can i handle my Phone via USB so i can restore the framework.resp.apk on my System? Or i have to reinstall Android again?
I have no backup and i don´t want to erase my system settings.
Thanks
Felix
obstgarten said:
Hi,
i did something wrong.
So my Phone didn´t run.
He show me the Bootsceen and the Animation.
But the he will run again and again and again.
Can i handle my Phone via USB so i can restore the framework.resp.apk on my System? Or i have to reinstall Android again?
I have no backup and i don´t want to erase my system settings.
Thanks
Felix
Click to expand...
Click to collapse
hm u got stuck in a bootloop thats what i meant when i mentioned errors =)
you could make a zip with the old framework res apk or reflash the cm rom
if u dont whipe data/cash ure setting will be safed
read some tutorials how to mod the framework res apk
I have an .zip file on the sd card.
Can i copy it to the Android system somehow?
Felix
P.S. can i zip the framework and remove the ".zip" to ".apk"?
It is most likely that the zip file you have is the ROM image from which you flashed in the first place. Changing the extension to apk is NOT what you want to do. I suggest you create a backup in CWM of you present configuration and after reflashing, you can then do a partial restore of your user data. But its like Jiffer1991 said, read up on CWM, theres an exhaustive guide on xda somewhere.
Thanks,
i installed my modified cm rom without wipe caches data or something.
And now i have my old datas back, with the new Background.
Hey guys, Im here to complain. I'm super tired, so I probably won't be very easy to understand.
Anyway, my Huawei Activa 4g was rooted and all was well. I went to change the DPI with the DPI Modded app from the play store, and its all screwed up now. I can't get past my lock screen, it only shows the clock and the emergency call button. I can't swipe the dots, and they aren't just invisible. I was dumb and deleted my backup.
Please, get back ASAP, as I am panicking.
PS: Usually I sound much more intelligent, but I literally nodded off three times as I wrote this.
You have a custom recovery like CWM, right? When you used the DPI Modded app, did it make a backup of your build.prop file on your SD card? If not, do you remember what your stock DPI value was prior to you changing it?
I can tell you what to do, but it's easier if you just follow this guide. Since you can't boot into your ROM, boot into recovery and follow the rest. adb works in both the ROM (if USB debugging is enabled) and in custom recoveries.
http://forum.xda-developers.com/showthread.php?t=1236732
If you have the backed up stock build.prop file, then you can directly skip to the part where you copy it from sdcard to the system partition. If you don't have it, then you need to open this build.prop file (that you get on your computer using adb pull) with a text editor and change the value of this one line ro.sf.lcd_density=, to whatever the stock DPI value was before you changed it. If you don't remember, then try 160. If that doesn't work, repeat the process with 240. Standard DPIs for devices are -
LDPI (Low DPI) = 160
MDPI (Med DPI) = 240
HDPI (High DPI) = 320
Your phone falls into the LDPI category, so 160 should work. Any DPIs other than these are non-standard DPIs and cause compatibility issues. Even to use to these standard DPIs, the ROM needs to support DPI scaling. Usually stock ROMs don't, while custom ROMs especailly AOSP ROMs like CyanogenMod, AOKP, Paranoid Android etc do. If you don't have the Android sdk installed on your computer, and you need the adb files, then use the attached file. Remember to open command prompt in the extracted zip folder, otherwise it'll return 'adb not found'. CMD needs to be opened in the same directory to be able to detect the adb.exe file. Alternatively, you can open cmd directly in the folder by running 'Start_here.bat'.
or go to recovery an clear dalvik caseh
-fluffy- said:
or go to recovery an clear dalvik caseh
Click to expand...
Click to collapse
That won't help because his stock ROM is incompatible with whatever custom DPI he set. Dalvik cache is only related to apps, and this has nothing to do with apps. Only way to fix this is to change the LCD density back to stock value in build.prop.
Hallo @ all
I want to write a special App just for me for my custom ROM. For this I have to put new values in the settings.db so my app is able to call and set the value of the new settings. I wan't something like this:
Settings.System.getInt(resolver, Settings.System.MYVALUE, 0);
But I have two problems: How can I add a new entry to the settings.db? Do I have to do this with an update.zip and flash this from the recovery? And if I develop my App in Eclipse my app does not know that these values in the settings.db are available and it comes to an compiler error. How can I tell my App (or Eclipse) that these values are available?
Is it even possible to change the settings.db? If not are there any good alternatives? I want to create something like the "quite hours" from CyanogenMod for my custom ROM.
hello there,
i have a GT-I9100 phone best known as the Galaxy S II International, and i'm very fond of messing around with the custom firmwares and stuff. i like to test every nightly that comes out from CyanogenMod, so i'm almost always installing new firmwares, and i'd like to carry on some small updates that i do to each firmware.
however, there is a problem. an update.zip would be useful for static files such as replacing the bootanimation.zip and adding the init.d scripts i want. however, i also like to edit the build.prop files, that are changed each nightly, to show the correct date and other minimum details.
following that, i'd like to know if there's a way to not replace the build.prop file, but just edit/add some lines into it through some script that could go inside the update.zip.
thank you.