[Q] System changes without needing to reboot? - Android Software Development

I hope this is pretty simple for someone to answer....
I'm replacing the file below to apply hardkey changes in certain phone states.
Code:
system/usr/keylayout/Bravo-keypad.kl
However, the phone needs to be rebooted if I replace the file using a standard file explorer.
[Q] Is there a terminal command I can run that will replace the file with one stored from another location that will take effect immediately? Alternatively, is there a terminal command I can use to 'scan' 're-read' that directory and apply the changes?
For what I'm doing, I only have linux/terminal commands available to me...
Hope someone can help!?
Thanks in advance..

I hopeful bump...
Surely there is a way to notify of system changes without the need of a reboot...?

Related

[Q] Writing an that executes linux commands

I have an compiled executable that is supposed to copy itself from the res folder, and into the /data/data/package-name/ folder, and change the permissions, and then execute. Every step completes all the way to the end. The output stream seems to be writing, etc. Except when I go check the file system, nothing has been done. I first tried with 'sh' then with 'su' (I have a rooted Cyanogen rom).
Here is the code:
pastebin yFFUcx2H
If anyone could fix this up for me, (and hopefully use sh!) I would be eternally grateful.

[Q] Push using adb fail (no room)

Hey guys. I'm trying to push a libwebcore.so file from one .zip onto my current MyTouch phone that has CM 6 on it. The reason why I'm doing this is to have the Arabic browser support. This file causes the letters to be connected which they are in text messages, but not the browser. I heard pushing the libwebcore.so from a downloaded source (or from a rom .zip that has it from another rom) will do the trick.
However, everytime I try to push it to /system/lib it gives me an error saying that there is no room on the device. That's pretty unprobable since I'm sure I have a lot of space. How do I fix this and sucessfully push the file?
Shadowafs8 said:
Hey guys. I'm trying to push a libwebcore.so file from one .zip onto my current MyTouch phone that has CM 6 on it. The reason why I'm doing this is to have the Arabic browser support. This file causes the letters to be connected which they are in text messages, but not the browser. I heard pushing the libwebcore.so from a downloaded source (or from a rom .zip that has it from another rom) will do the trick.
However, everytime I try to push it to /system/lib it gives me an error saying that there is no room on the device. That's pretty unprobable since I'm sure I have a lot of space. How do I fix this and sucessfully push the file?
Click to expand...
Click to collapse
Do "adb shell df -h" to see how much room is available in your system partition. You may have to remove some unused system apps to make room.
I'm trying that now...but is it safe to delete the current libwebcore.so now and add the new one? If so what's the command. Also, if the libwebcore.so was for a testing version of CM 6 (specifically RC3), will it still work?
Also, is there a way to take some space from other parts of the system?
First of all, i'm going to move this to General since I fail to see how this is regarding the Development of anything. Some good information, but not related to Development.
Secondly, have you considered performing a nandroid backup, booting to recovery, mount the /system directory, then 'adb shell rm /system/lib/webcore.so' to remove your file then 'adb push webcore.so /system/lib'
Also, if you use the file directly from SOURCE it may not work since it may need to be compiled first. I'm not sure about that though since I've never tried it.
If any of the above goes wrong you can always nandroid restore and try again.
I personally use Clockwork Recovery since you can restore specific partitions individually (such as System) so it saves time.
Good luck.
I'm pretty much done trying...unless somebody can comply the file for me and test it. I'm really done trying this when all it does is fail over and over again. Hopefully somebody can come up with something

Full Charge Popup!? Please help

Can anyone put this in a cw flashable zip or have one already? I need to get rid of the stupid popup that tells me my battery is full. It wakes me up and it seems to keep my alarm clock from going off sometimes!?
1. decompile/de-odex services.jar/odex
2. open "com\android\server\status\StatusBarPolicy.smali" in a text editor
find ".method private showFullChargePopup()V" about line 2779
and remove the entire method all of it from ".method private showFullChargePopup()V"
to .end method
and delete this line at about line 3441
invoke-direct {p0}, Lcom/android/server/status/StatusBarPolicy;->showFullChargePopup()V
3. save, compile and re-odex as necessary
Click to expand...
Click to collapse
What ROM version and theme? The services.jar file changes between roms and themes.
Blackhole 3.0 DL09
Oh my god! If you could also do this for me, or just tell me how or something ( I have no idea what the dedeoxin' does or anything) I would be forever thankful! haha
I have DJ05 Superclean JT rom
Its just an simple apk you can get rid of via root explorer or titanium backup or whatever.
In titanium its called FullBatPopupApp 1.0, I have removed it with no ill effects. The name of the apk in /system/app/ is FullbatPopup.apk
Sent from my SCH-I500 using Tapatalk
1. You need to have java installed for this. You will also need smali/baksmali
2. Open command prompt or linux terminal with your phone plugged in. Also navigate to or create a directory to perform the work in.
3. Once in your working directory, run:
Code:
adb pull /system/framework/services.jar
3a. If your system isn't de-odexed, you may need to pull an odex file as well
4. Take the smali/baksmali files you downloaded earlier and put them in the same directory that your services.jar file is in.
5. Run the following (assumes windows command prompt):
Code:
java -jar baksmali-<version>.jar services.jar
5a. If your system is not deodexed, you will likely need to deodex the system/services.jar for this to work.
6. Open the file required for the edit and make the needed changes.
7. Run the following (again, assuming windows command prompt):
Code:
java -jar smali-<version>.jar out -o classes.dex
8. Replace the classes.dex file within services.jar with the new classes.dex file
9. Push the file to /system/framework with adb, then reboot:
Code:
adb push services.jar /system/framework/services.jar
adb reboot
9a. You may need to remount the /system partition as rw to push the file.
10. On restart, the phone will take longer to boot, but assuming the changes were made properly you should be good.
I left out some information for the "a" steps on purpose. If you cannot do these steps yourself, or find how to do them, you likely shouldn't be doing this on your own. As always, backup your phone/data before trying this, and I am not responsible for any lost data, non-booting phones, or bricked devices. If you are unsure of what you are doing, then don't do it.
n0yd said:
Its just an simple apk you can get rid of via root explorer or titanium backup or whatever.
In titanium its called FullBatPopupApp 1.0, I have removed it with no ill effects. The name of the apk in /system/app/ is FullbatPopup.apk
Sent from my SCH-I500 using Tapatalk
Click to expand...
Click to collapse
Removing that does nothing, already did it and I still get the popup.
Or just find the post with the hidden menu dialer codes and turn it off that way.........
Sent from my SCH-I500 using XDA App
Even the hidden dialer menu does not always work either. Plus I thought the hidden menu was not accessible in DJ05/DL09? Maybe this is with certain roms?
yea I hate that popup. Ive removed the apk also and still it keeps popping up. A fix would be greatly appreciated!!!
The dailer codes worked for me. Using Blackhole 3.0. Just make sure you include the Hidden Menu when building your rom.
Sent from my SCH-I500 using XDA App
imnuts said:
Removing that does nothing, already did it and I still get the popup.
Click to expand...
Click to collapse
Weird, I never noticed. Thanks for letting me know
Sent from my SCH-I500 using Tapatalk
+1 on getting rid of this stupid pop up.
Man I hate that thing.
I posted instructions on how to do it. I'm not going to do the mod for everyone, so do it on your own, or ask the rom builder to include the change in the rom. There are to many roms and themes out there to try and accomplish this for every possible combination.
Hidden menu method would not work for me on dj05.
Changed it to disabled and it still pops up
I just went in with root explorer and mounted system/app as RW, renamed FullBattPopup.apk to FullBattPopup.apk.OLD and it did not get recreated after a reboot. I guess I'll have to wait till a full charge to see if it comes back.
I just used Titanium Backup to freeze FullBatPopupApp.
Will report back after I change my phone....
Sent from my Samsung Fascinate
Pfredd said:
I just used Titanium Backup to freeze FullBatPopupApp.
Will report back after I change my phone....
Sent from my Samsung Fascinate
Click to expand...
Click to collapse
As I figured, freezing didn't remove the popup.
I went ahead and edited the services file, as specified earlier in this post. I followed the procedure provided by imnuts and did the edits as specified in the post by Nimhlan.
It appears to work like a charm. No more Full battery popups!
I would post my edited file, but I suspect it is dependent on what kernel/ROM you are running....
Do you download the smali 1.26.jar & baksmali 1.26 jar or just the baksmali & smali file in the link provided.
ellisz said:
Do you download the smali 1.26.jar & baksmali 1.26 jar or just the baksmali & smali file in the link provided.
Click to expand...
Click to collapse
You need the *.jar files. However, I tried making the edit and I still get the popup.

Free 50 GB Box Account HELP

I followed the instructions according to mdalacu
Working great, and all i had to do was to change only 2 lines in buid.prop using ES File explorer with 2 options activated: Root Explorer and Mount File System.
1. Be sure that you have root
2. Install ES File explorer and Options and check this: Root Explorer and Mount File System
3. Navigate to /system. Long press on buid.prop , open as text.
4. Edit the file by modifying this lines:
ro.product.model=GT-N7000
ro.product.brand=samsung
into
ro.product.manufacturer=LGE
ro.product.model=VS910 4G
5. reboot
6. install from market box (box.net)
7. Create the account. A confirmation message will appear that you have 50 GB capacity.
8. Again from EFS File Explorer navigate to /system. Check that you have a file named build.prop.bak and if so, delete buid.prop. Rename build.prop.bak into build.prop. Now you can disable from options : "Root Explorer" and "Mount File System"
9. Reboot
10. Enjoy your amizing phone
Note: I had done this on KL7 with stock kernel.
Was able to create a bunch of accounts, then deleted the build.prop file and renamed the build.prop.bak back to build.prop, rebooted the phone, and I get to the Samsung Galaxy Note N7000 screen, then it goes black. I cannot boot up the device now.
Any suggestions?
yeahmon said:
4. Edit the file by modifying this lines:
ro.product.model=GT-N7000
ro.product.brand=samsung
into
ro.product.manufacturer=LGE
ro.product.model=VS910 4G
Click to expand...
Click to collapse
I don't think you are supposed to change "brand" to "manufacturer". For me, there was already a "ro.product.manufacturer" value (edit: of course, I also changed the "model" value) and I just changed that.
However, I don't see how this could have caused your problem. Are you sure you renamed the backup file "build.prop" correctly? Maybe accidentally left a symbol there, or deleted one too many?
bnapalm said:
However, I don't see how this could have caused your problem. Are you sure you renamed the backup file "build.prop" correctly? Maybe accidentally left a symbol there, or deleted one too many?
Click to expand...
Click to collapse
Sounds like OP deleted the build.prop and perhaps the rename failed and didn't notice, so now they have no build.prop file whatsoever.
--
Are you able to access the device using a cable via adb (is USB debugging enabled on your phone)?
I know nothing about rooting the Note just yet, though if it's the same setup as G1/Nexus/Desire (I guess it would be) you should be able to get into recovery then use adb at a command line to push a new build.prop file to /system which should allow your device to boot.
bnapalm said:
I don't think you are supposed to change "brand" to "manufacturer". For me, there was already a "ro.product.manufacturer" value (edit: of course, I also changed the "model" value) and I just changed that.
However, I don't see how this could have caused your problem. Are you sure you renamed the backup file "build.prop" correctly? Maybe accidentally left a symbol there, or deleted one too many?
Click to expand...
Click to collapse
It worked, and I was able to reboot back into the Note with these settings.
jayshah said:
Sounds like OP deleted the build.prop and perhaps the rename failed and didn't notice, so now they have no build.prop file whatsoever.
--
Are you able to access the device using a cable via adb (is USB debugging enabled on your phone)?
I know nothing about rooting the Note just yet, though if it's the same setup as G1/Nexus/Desire (I guess it would be) you should be able to get into recovery then use adb at a command line to push a new build.prop file to /system which should allow your device to boot.
Click to expand...
Click to collapse
I think you're right about losing the build.prop file. Fortunately, I backed it up. I am trying to access the device now. I have no GUI on the Note. I am hoping it is just a blank screen and the device is still functioning in the background. I'll be back momentarily with an answer to accessing it.
ok...I can access the Note's file system. However, when I try to copy the backup build.prop file into the system directory via Android Commander, it says I need root access to do this permission.
The Note IS rooted. I don't get it.
This appears to be a problem with Android Commander. There are threads about this same problem, but rather than the software creator place a link to his FAQ that he ridicules everyone for not reading, he lambasts them instead. Thats a real good way to get a donation.
Anybody got any other suggestions for a root file explorer, preferably for Mac, but PC will work too.
be careful, backup buid.prop and restore it after creating Box account.
amincom said:
be careful, backup buid.prop and restore it after creating Box account.
Click to expand...
Click to collapse
I am having no luck finding a way to get root access from a computer.
deleted post
user error
The tumbleweeds are big around here
There's an app for that
Without having to edit files and without root.
http://www.androidguys.com/2011/12/28/get-50gb-of-free-box-cloud-storage-without-rooting/
But is there an app to copy my file over from my computer?
amincom said:
be careful, backup buid.prop and restore it after creating Box account.
Click to expand...
Click to collapse
vcespon said:
Without having to edit files and without root.
http://www.androidguys.com/2011/12/28/get-50gb-of-free-box-cloud-storage-without-rooting/
Click to expand...
Click to collapse
Please read the OP before posting.
--
The fact that you are using Android Commander implies you have adb access, this is good.
Here's what I would do to fix your problem, it definitely isn't the only way, but it will work.
#1: Get ADB installed on your PC/Mac/Linux
#2: Open a command line and run
Code:
adb devices
as a test, you should get output that one device is connected via cable, if you don't abort here, nothing else will work
#3: run
Code:
adb remount
This will make your /system writeable
#3: I'll put this as a windows instruction because I don't know the Mac filesystem, but it's almost identical
Code:
adb push C:\build.prop /system/
This will push C:\build.prop (please put your backup copy here) into /system/ of your Note. If you're on a mac, you will need to find another place to put it, e.g. if it's /users/bob/build.prop the command just becomes
Code:
adb push /users/bob/build.prop /system/
I hope this helps
Edit: Paste a copy of output here if it doesn't work so I can help debug
I was onto this earlier but a Command line gets me this:
'adb' is not recognized as an internal or external command, operable program or batch file.
yeahmon said:
I was onto this earlier but a Command line gets me this:
'adb' is not recognized as an internal or external command, operable program or batch file.
Click to expand...
Click to collapse
You'll need to download/install adb first.
jayshah said:
You'll need to download/install adb first.
Click to expand...
Click to collapse
standby...
its taking forever to install SDK
This is a lost cause.
No matter what I do, I get the same errors. Anything I try to do to remedy the issue only opens another door to hell.
I should have stuck with Dropbox.
yeahmon said:
This is a lost cause.
No matter what I do, I get the same errors. Anything I try to do to remedy the issue only opens another door to hell.
Click to expand...
Click to collapse
You're really going to have to paste the error messages here for any of us to help you further
Alternatively, can't you just reflash your current ROM on top?

Auto mount or symlink at boot

Hello, is it possible to do that ?
Regards
Sure, you have a few options.
The best way (hardest):
-requires root and knowledge of the boot.img and ramdisk partitions of Android
-create the symlink or mountpoint by adding the necessary lines the /init.rc file.
Next best way (not hard if you have init.d support):
-requires root
-requires init.d support
-simply write a script to create your symlink/mountpoint, name it appropriately, and place it in the /system/etc/init.d directory.
-with init.d support, this will automatically run the script at boot and set the parameters you've outlined in said script.
The "other" method (avoid this if possible since it relies on loading an app on boot):
-requires root
-download Script Manager from the play store
-write a script to create your mountpoint or symlink
-configure Script Manager to execute the script on boot.
Hello
I found /init.rc, also found init.00.rc and init.01.rc, but i guess we are talking about the first one (init.rc)
I wasn't able to edit it with a text editor on my tf101, do i need something i don't have to edit it ? Or notepadd++ will be enough ?
In case i fail completly with this, is tasker able apply the line for me too ?
Thanks you for your time.
Regards
Magissia said:
Hello
I found /init.rc, also found init.00.rc and init.01.rc, but i guess we are talking about the first one (init.rc)
I wasn't able to edit it with a text editor on my tf101, do i need something i don't have to edit it ? Or notepadd++ will be enough ?
In case i fail completly with this, is tasker able apply the line for me too ?
Thanks you for your time.
Regards
Click to expand...
Click to collapse
The /init.rc can't be directly modified that way. Everything in the root filesystem "/", as well as the kernel zImage, are loaded at boot from the boot.img image. Therefore, any changes you make will just be reverted when you reboot because it reloads the original from the boot.img image. In order to modify /init.rc, you must pull your boot.img and then extract the files from it. Now you can add the necessary lines to it. After that, you re-combine everything back into the boot.img, and push it back to your device.
If all that sounds unfamiliar to you, you will have some reading to do. Most of this will need to be done on a linux machine too.
What ROM are you running? If you have init.d support, that would be the most straightforward way to accomplish your goals.
I'm running asus' rom .24 on a tf101
I don't know if it support init.d, didn't found this file on my device.
Regards
You can also use an app from here, XDA, called directory bind. It all depends what you're looking to do with those symlinks.
Sent from my Sprint Evo View 4G (PG41200) using Xparent Purple Tapatalk 2
Hello, i plan to move game data to sdcard and symlink it to the old internal place.
Also plan to symlink some folders to the movie folder
Regards
Then directory bind app is designed for just your need. All these solutions require rooting your device.
Sent from my HTCEVOV4G using Xparent Purple Tapatalk 2
I will look at this, thanks.
Directory bind run during boot or after boot ?(little delay before things get re symlinked ?)
Regards

Categories

Resources