Installing Maps w/ Navigation - G1 Android Development

Thanks to FollowingInsanity for editing the build.prop file to get it working corectly, and thanks to Maxisma for the Droid dump. Thanks to everyone else who pitched in on this whole thing. Really all I did was realize the exact line that needed to be changed....everyone else did the rest
Here are instructions on how I got the new maps w/ Navigation to work via adb. I'm running the official rooted 1.6 build, but this should work for anyone.
(if you don't know how you use adb, go to the here
Next, you need to uninstall the old maps.apk file and here's how I personally did it since you can't just go to "uninstall" from the Application Settings(these instructions start already in the ADB shell):
# mount -o rw,remount /dev/block/mtdblock3 /system
# cd system
# cd app
# rm xxxxxxx (this is whatever your maps.apk is titled. sometimes is just maps.apk, but it could also be com.android.google.maps.apk or somethin like that)
# exit
Click to expand...
Click to collapse
Now you've uninstalled the google maps. You can then do these next steps outside of adb.(for instructions purposes i'm using my own Android location):
C:\android\tools> adb pull /system/build.prop C:\Android
C:\android\tools> adb pull /system/build.sapphire.prop C:\Android
The 2nd may not be may be build.trout.prop or something to that effect...build.xxxx.prop
Click to expand...
Click to collapse
Next, change those 2 file names on your PC from build.prop to build-backup.prop and build.xxxx-backup.prop(if you have one) so that you don't lose those files in case anything stupid happens in the mean time lol.
Make a 2nd copy of build.xxxx-backup.prop and rename it is build.xxxx.prop. So now you should have a build.xxxx.prop AND a build.xxxx-backup.prop
Now you'll need the build.prop file to use
build.prop
(IF you are running a sapphire build, you can also use the build.sapphire.prop file located there and skip down to "re-loading prop files")
I saved that file to the same location that I saved my original files.
open build.xxxx.prop in notepad. look for where it says:
ro.build.description=kila-user 1.6 DRC83 14721 ota-rel-keys,release-keys
ro.build.fingerprint=xxxxxxxxxx:user/ota-rel-keys,release-keys
# end build properties
Click to expand...
Click to collapse
you'll need to delete the line that says ro.build.fingerprint=xxxxxxxxxx:user/ota-rel-keys,release-keys but DO NOT delete the line that says #end build properties
replace the line you deleted with the following:
ro.build.fingerprint=verizon/voles/sholes/sholes:2.0/ESD20/17572:user/ota-rel-keys,release-keys
Reloading Prop Files
next, back in your command line window do the following:
c:\android\tools> adb push c:\android\build.prop /system/
c:\android\tools> adb push c:\android\build.xxxx.prop /system/
Click to expand...
Click to collapse
then restart your phone
while the phone is restarting, go back and rename your build.prop and build.xxxx.prop files to build-update.prop and build.xxxx-update.prop, then change your build-backup.prop and build.xxxx-backup.prop to build.prop and build.xxxx.prop
After it restarts you'll want to locate your maps.apk file(the new one) and go back into your command line and type:
c:\android\tools> adb shell
# mount -o rw,remount /dev/block/mtdblock3 /system
# exit
c:\android\tools> adb install c:\android\maps.apk
(install crap...if it doesn't install correctly then don't do whats below)
Click to expand...
Click to collapse
Go check your google maps, type in two locations and click "go" and on the next screen you should see a button that says "Navigate"
go back to your command line screen and type:
Sorry if this is confusing, anyone who could make it more simple, please feel free to give it a try, but this is the best I could offer so people wouldn't have to go looking though the whole think tank thread to get everything they need to get it working
IF THE INSTALL GAVE YOU AND INVALID_UPGRADE ERROR THEN TRY THIS:
(again these instructions are using my own android sdk location, replace the
c:\android\tools with YOUR sdk location
from the command line type the following:
c:\android\tools> adb shell
# mount -o rw,remount /dev/block/mtdblock3 /system
# exit
c:\android\tools> adb pull /data/system/packages.xml c:\android\
Click to expand...
Click to collapse
BACK UP THIS FILE BEFORE EDITING IT
Once that's done, open that xml file in a text editor hit ctrl+f and search for maps, the first one will probably say auth.sitemaps, ignore that, keep searching untile you get to something to the effect of com.android.google.maps.apk or something like that. when you see that, you'll want to delete everything from "<packagename=" to "</package>" for the google maps app. BE VERY CAREFUL!!!! you don't want to accidentally delete something else, thus the reason for the back up.
after you've done that, go back to your command prompt and type:
c:\android\tools> adb push c:\android\ /data/system/packages.xml
c:\android\tools> adb install c:\android\maps.apk
Click to expand...
Click to collapse
it should then install perfectly fine. thats what I had to do to get it to work for me

I love you guys! will try this when I get home from work!

it does not appear to be 100% working....yet...
as posted by dwang, http://forum.xda-developers.com/showpost.php?p=4921655&postcount=275
dwang said:
If you push the old build.prop files back, after a while, the nav option disappears.
Click to expand...
Click to collapse
which I can confirm. About midnight last night it was working okay, and this morning it was gone.
followinginsanity says he will work on it today. http://forum.xda-developers.com/showpost.php?p=4921665&postcount=278
followinginsanity said:
Confirmed... will work on it tomorrow.....
Click to expand...
Click to collapse
may not want to rush to get it working only for it to not work a few hours later...but ..like most people here...that probably won't stop many

I edited the build.prop file...and now it will only work with Sapphire builds. For CM builds, build.prop file that FollowingInsanity created

Code:
c:\android\tools> abd push c:\android\build.prop /system/
c:\android\tools> abd push c:\android\build.xxxx.prop /system/
Should be
Code:
c:\android\tools> adb push c:\android\build.prop /system/
c:\android\tools> adb push c:\android\build.xxxx.prop /system/

Takenover83 said:
Code:
c:\android\tools> abd push c:\android\build.prop /system/
c:\android\tools> abd push c:\android\build.xxxx.prop /system/
Should be
Code:
c:\android\tools> adb push c:\android\build.prop /system/
c:\android\tools> adb push c:\android\build.xxxx.prop /system/
Click to expand...
Click to collapse
Changed lol. thanks

where can i get the new maps apk? the old one fails to install

i get error
Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]

ahronzombi said:
where can i get the new maps apk? the old one fails to install
Click to expand...
Click to collapse
http://forum.xda-developers.com/showpost.php?p=4921092&postcount=196
That's the one I did, it also has all the needed files just grab the files from there and you should be able to use them for these instructions

ahronzombi said:
i get error
Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
Click to expand...
Click to collapse
When that happens you need to:
adb push <path to>/Maps.apk /system/app
adb shell
# install /system/app/Maps.apk
# exit

hey hey hey
could you or somone who got this to work try to make a video tuturiol on this so we can all clearly see how it works!!! please someone make an post it on youtube if possible thanks!!!!!!!!!

navigation doesn't work outside of the US at the moment right?

I was able to get the new maps.apk to install - and it is clearly a different application (with the new layers), but no navigate button. : (

seaweeduk said:
navigation doesn't work outside of the US at the moment right?
Click to expand...
Click to collapse
Nope, not until the big G says so.

mianosm said:
I was able to get the new maps.apk to install - and it is clearly a different application (with the new layers), but no navigate button. : (
Click to expand...
Click to collapse
what rom are you using?

mianosm said:
I was able to get the new maps.apk to install - and it is clearly a different application (with the new layers), but no navigate button. : (
Click to expand...
Click to collapse
You might have to try editing your packages.xml file even though it didn't give you an install error. Also, if you push your original build.prop's back, you lose navigation after a few hours. I guess the quick solution to that would be to keep the new build.prop's, but I'm not sure what the problems that might or might not create for other apps.

I'm using CM-4.2.3.1 with the edited build.prop and the build.sapphire.prop files.

# mount -o rw,remount /dev/block/mtdblock3 /system
Click to expand...
Click to collapse
A quick shortcut is to drop the device from this command. As you're re-mounting, the kernel knows the device name. Like this:
# mount -o rw,remount /system
Click to expand...
Click to collapse

Wow dude your the bomb, I did it a different way but it worked perfect. I just took a dount rom extracted it, deleted the maps.apk, then I took the droid dump maps app and put it into the donut rom. Then I made the changes to the build.trout.prop so that it recognized the g1 as the verizon phone, used your downloadable build.prop, of course I just deleted the original build.prop in the donut build, I resigned the donut rom, flashed it like it was brand new, and bingo everything worked perfectly. Wow good job dude. I would upload my rom but I dont want to get into any trouble.

I am using "AOSP1.6_r1.4+ADP DRD20 ROM". Maps on here is called "GoogleMaps.apk". I also do not have just a build.prop. I have a build.sapphire.prop and build.trout.prop. I modified both and replaced according to the first post. When I rebooted, GoogleMaps.apk was reinstalled, so I had to uninstall it again.
I did get the error described in post #8, but was able to get around it with the help of post #10.
But for some reason my network is completely down so I can't do nothing. Wifi and Cellular network. Hmmmm.
Edit: Replacing the files I backed up with the originals, brought my networks back.

Related

Stock 2.1 rom rooted ROM Manager won't FIX Permissions

I searched and got on IRC and can't get a fix for this. WHen i try to use the Fix permissions option in ROM Manager Premium i get the following error.
"error occurred while attempting to run privelaged commands"
I checked superuser and ROM Manager is in there so i selected "forget" then rebooted and tried "fix permissions" again. I got the promp to allow SU and then the error.
Any idea how i can fix this? Is this a bug or a isolated problem?
Not sure if it is related or not but I had to same problem until I bought the full version off of the market.
Maybe it's part of the extended functionality?
As I noted I have "Rom Manager Premium" I don't think it's related anyway.
Just found the answer to this (as I too was having this problem). See the link below:
http://androidforums.com/899973-post26.html
It has to do with busybox not installed in the correct place.
One more thing: Make sure that busbox is set to "755" so that it can execute.
Thanks
sw99 said:
Just found the answer to this (as I too was having this problem). See the link below:
http://androidforums.com/899973-post26.html
It has to do with busybox not installed in the correct place.
One more thing: Make sure that busbox is set to "755" so that it can execute.
Click to expand...
Click to collapse
Thanks for the link to the fix!
I am unable to get the busybox file to copy from the /data.... directory into the /system/bin/ directory. Any ideas?
jtoole1 said:
I am unable to get the busybox file to copy from the /data.... directory into the /system/bin/ directory. Any ideas?
Click to expand...
Click to collapse
did you mount the system partition prior to trying this?
I'm also having an issue moving the file using root explorer. Any other ideas?
the_grobe said:
I'm also having an issue moving the file using root explorer. Any other ideas?
Click to expand...
Click to collapse
Yeah, same here. My problem is that I've never used Root Explorer before. At the top it says mounted as r/w (in the /system/bin directory) , but it won't copy the file using the Root Explorer program. When I click [Paste] it doesn't give me an error, but when I go and check the directory, the file is not there. I even tried refresh. Any ideas?
UPDATE: I have not solved the problem yet, but I did notice that the /system/bin directory that I am trying to copy to says "0K bytes available," which is probably why it won't copy. So I guess my (no copy) problem is due to my lack of understanding of the file structure of the DI.
UPDATE: I finally got it working. Here is what I did.
1. Boot phone into recovery
2. Push busybox from /sdk/tools folder to sdcard
Code:
adb push busybox /sdcard/busybox
adb shell
3. Installed busybox to /system/xbin
Code:
$ su
#export PATH=$PATH:/system/bin
#cd /system/xbin
# cat /sdcard/busybox > busybox
# chmod 06755 busybox
# busybox --install -s /system/xbin
# rm /sdcard/busybox
# exit
$ exit
4. Booted up phone, and ROM manager fixed permissions as per request.
Hope that helps.
Thanks. I appreciate your feedback. But it looks like I wasted my money again on a useless program like "Root Explorer." I was hoping that I wouldn't have to do all of that command line crap anymore after having rooted.
Does anyone know if there is a file manager out there that will push/pull files via cut/paste rather than using a seperate computer with a command line interface?
I don't think that there is going to be a program like that until we've got full NAND unlock.
the_grobe said:
I don't think that there is going to be a program like that until we've got full NAND unlock.
Click to expand...
Click to collapse
Is someone working on that? I believe the facts are, that the Unrevoked team knows how to do it...but they won't give us the means to do it. Probably because they think we'll shoot ourselves in the foot...and blame them...and they're probably right!
I can not do the cat command it tels me Cant create busybox, read only file system.
Any ideas????????????????
when i was modding widget locker i was using linda file manager free to cut and paste out of the system folder im gonna try it right now to fix this problem ill let u know if it works

How to root the Droid 2

All credit for the binary goes to Sebastian Krahmer at http://c-skills.blogspot.com/. Please see fit to donate via Paypal to [email protected]
If you want a simpler 'one-click' process, go to this thread: Easier 1-2-3 Droid 2 Root for Windows / Linux / Mac
***NOTE: Proceed at your own risk. I and the providers of this code are not responsible for anything you do to your phone!***
Setup:
- Install adb (here) and Motorola drivers for windows(32-bit or 64-bit)
- Download attached archive
- Extract to a directory, I used c:\Droid2Root
- Make sure you have USB degugging enabled
- Change connection to PC Mode
Process:
- Open command prompt
- cd c:/wherever-your-sdk-tools-folder-is
- adb devices (to verify the connection)
- cd c:/Droid2Root
- adb push Superuser.apk /sdcard/Superuser.apk
- adb push su /sdcard/su
- adb push busybox /sdcard/busybox
- adb push rageagainstthecage-arm5.bin /data/local/tmp/rageagainstthecage-arm5.bin
- adb shell
- cd data/local/tmp
- chmod 0755 rageagainstthecage-arm5.bin
- ./rageagainstthecage-arm5.bin
- let the process run until it 'kicks' you out (may take a minute or two) to c:/Droid2Root
- cd c:/wherever-your-sdk-tools-folder-is
- adb kill-server
- adb devices (to verify the connection)
- adb shell (you should now have a # prompt, if not return to ./rage step above)
- mount -o rw,remount -t ext3 /dev/block/mmcblk1p21 /system
- cp /sdcard/Superuser.apk /system/app/Superuser.apk
- cp /sdcard/su /system/bin/su
- cp /sdcard/busybox /system/bin/busybox
- chmod 4755 /system/bin/su
- chmod 4755 /system/bin/busybox
- mount -o ro,remount -t ext3 /dev/block/mmcblk1p21 /system
- exit
- exit
I'm sure there are certain steps that could be streamlined or eliminated, so please feel free to make a suggestion and I'll edit the post.
Additional thanks to @rainabba and AllDroid.org for their excellent Droid X rooting tutorial, which assisted me greatly in this process.
waiting for a recovery, glad to see its rooted
Android n00b here, I can remove the Verizon crapware with this right? And tether?
thelolotov said:
Android n00b here, I can remove the Verizon crapware with this right? And tether?
Click to expand...
Click to collapse
yes and yes
thelolotov said:
Android n00b here, I can remove the Verizon crapware with this right? And tether?
Click to expand...
Click to collapse
I wouldn't remove anything yet since we don't have a sbf file to recover from partial bricks. However, tethering and any other apps that require root can be used now.
I'm new to doing this all the adb way.
When you say extract to a directory what do you mean to extract. After it downloads the achive files its done.....
i understand the rest of the commands but im lost there
Hmm, alright, that's still worth it, will I lose my data/have to hard reset to root?
Right click the downloaded archive and "extract files". You need to do this so adb can push them to the phone.
thelolotov said:
Hmm, alright, that's still worth it, will I lose my data/have to hard reset to root?
Click to expand...
Click to collapse
Nope, it just gives you access. Nothing deleted.
I'm retarded i didnt realize it was attached to the post, i thought it was what adb downloaded when i first opened it cause it called them archives.
cannot access
I got as far as pushing super user su and busy box onto my phone but it says that system in read only.. how do i fix this?
Anybody actually try this?
Hello,
I am following your directions and when I get to the "adb push Superuser.apk" step I receive the following error:
"failed to copy 'Superuser.apk' to '/system/app/Superuser.apk': Read-only file system"
I get this same error for the other adb push steps that follow.
Edit: To verify, I get a # shell.
Edit 2: I tried pushing the Superuser.apk to /data/local/tmp then cp to /system/app/, this also popped up a read-only file system error.
I'm currently trying it.
I have a 64 bit driver on my computer that i used to use for my D1 but it doesn't recognize my D2 when doing adb devices and i cant install the 32 bit driver
GSletta said:
I got as far as pushing super user su and busy box onto my phone but it says that system in read only.. how do i fix this?
Click to expand...
Click to collapse
Did you verify you have the # prompt three steps before that?
Yeah i get the # but it wont let me push superuser su and busybox
GSletta said:
Yeah i get the # but it wont let me push superuser su and busybox
Click to expand...
Click to collapse
Weird.. I didn't need to mount the system manually, but let me if there's a step I left out.
and some more screens (feel free to use in first post):
http://i.imgur.com/nPllt.jpg
http://i.imgur.com/COTEA.jpg
http://i.imgur.com/open3.jpg
djh816 said:
and some more screens (feel free to use in first post):
http://i.imgur.com/nPllt.jpg
http://i.imgur.com/COTEA.jpg
http://i.imgur.com/open3.jpg
Click to expand...
Click to collapse
Did you add any steps to mount the system? I don't believe I did, but it seems others are finding it to be read-only.
jerseyh22accord said:
I'm currently trying it.
I have a 64 bit driver on my computer that i used to use for my D1 but it doesn't recognize my D2 when doing adb devices and i cant install the 32 bit driver
Click to expand...
Click to collapse
Don't know if it will help you, but if it's anything like the DInc, you could just use the SDK's drivers and add a few device identifier lines to the INF file before installing them.

How do I install an apk to the /system/app folder?

Can someone please take the time to explain how to install apps in the system/app folder? I'm trying to install the superuser.apk app but I just dont want to install it where it can be deleted easily from the menu/settings/applications/manage applications. I want to install it the same way sprint installs their programs where root is required to remove. Thanks/
rose1 said:
Can someone please take the time to explain how to install apps in the system/app folder? I'm trying to install the superuser.apk app but I just dont want to install it where it can be deleted easily from the menu/settings/applications/manage applications. I want to install it the same way sprint installs their programs where root is required to remove. Thanks/
Click to expand...
Click to collapse
Place the superuser.apk in the tools folder of your sdk
Open up command prompt
Cd c:\android-sdk-windows\tools
Abd push superuser.apk /system/app/
That's it, you're done. If you get a write permissions error, then you'll have to mount the /system folder. If you have remount installed, add adb remount before pushing the file. If not, then you'll have to add
adb shell
Yaffs2....mtdblock don't remember the entire phrase... or most of it. I just copy and past it from some of the write-ups... its in the manual root thread
Then:
Exit
Adb push...
Sent from my SPH-D700 using XDA App
Okay, I tried it and getting the following error. "failed to copy 'superuser.apk' : read-only file system. Then I did adb shell and it showed a $ then I typed in su and it showed a # then I did:
mount -t rfs -o remount,rw /dev/block/stl9 /system/app
Then that line repeated itself. So I tried Adb push superuser.apk /system/app/ again and now it says:
failed to copy 'superuser.apk' to '/system/app//superuser.apk' : Permission denied.
What am I missing?
I also tried adb remount /system/app/ and it says remount failed. No such file or directory.
http://forum.xda-developers.com/showthread.php?t=780759
Last post of mine
Aridon said:
http://forum.xda-developers.com/showthread.php?t=780759
Last post of mine
Click to expand...
Click to collapse
Cool. Thanks. I haven't rooted my epic yet, so I haven't done any pushing. Pushing it to the hero as I described always works fine, then again, it may have to do with remount being on all the roms I used.
Sent from my SPH-D700 using XDA App
Aridon said:
http://forum.xda-developers.com/showthread.php?t=780759
Last post of mine
Click to expand...
Click to collapse
Thanks Aridon but I tried that and now I get the error when trying mv /sdcard/Superuser.apk /system/app/Superuser.apk The error says Failed on '/sdcard/Superuser.apk' -Cross-Device link
Change mv to cp
You need busy box installed
Aridon said:
Change mv to cp
You need busy box installed
Click to expand...
Click to collapse
Thanks. I'll try that
rose1 said:
Thanks. I'll try that
Click to expand...
Click to collapse
Also once you get busy box installed you can do:
busybox cp /sdcard/File.apk /system/app/File.apk
and that will work fine.
okay I am a little lost, I need to re-install sprint tv and sprint zone in order to preform new update. I am really new to this process, I have the .apk's I need to put back on phone but not sure what your talking about. I have sdk and adb on computer but not sure what to do with them. Please help a tard.

[Q] how to edit GPS.conf in system folder ?

I would like to set my phone to europe.pool.ntp.org becouse it's default northamerica.pool.ntp.org
How can I edit this file ? When I try to type adb shell to terminal it gives me an error message.
Thanks
Not development related moved to General
At first U must root R phone and then install Root Explorer. After that go to SYSTEM/ETC/
Here u need to edit GPS.CONF file and change NTP Server from northamerica.pool.ntp.org to europe.pool.ntp.org.
I hope that I help U m8.
Get write acces in system folder
I used the post I've quoted down here. After you have gained write acces in the system folder you can edit gps.conf!
octy said:
By default the /system is mounted in read-only mode.
With 'root' access you can change this.
First 'root' your phone with tutorial 'slumpolo' has provided at
the begining of this thread.
Then open a shell on your phone with adb
Code:
adb shell
Grant 'root' access with 'su' command and have a look of memory partitions
Code:
su
mount
In 'mount' command output, identify the partition on which /system was mounted.
In my phone it was '/dev/block/stl6'
Finally you can remount it to get read-write permissions on it.
But before be sure to be outside /system in the shell (by typing 'cd /' for example).
Code:
mount -o remount,rw /dev/block/stl6 /system
Do the modification you want..... BECAREFUL of want you do, you can damage your phone.
Set read-only mode again
Code:
mount -o remount,ro /dev/block/stl6 /system
Sorry I cannot made any snapshot for the moment, I can't use my phone.
Hope it can help you.
Click to expand...
Click to collapse
By the way, for Slovakia I think you can better change to sk.pool.ntp.org
Complete list of European NTP servers:
http://www.pool.ntp.org/zone/europe
Other area's:
http://support.ntp.org/bin/view/Servers/NTPPoolServers
LeoApollo said:
By the way, for Slovakia I think you can better change to sk.pool.ntp.org
Complete list of European NTP servers:
http://www.pool.ntp.org/zone/europe
Other area's:
http://support.ntp.org/bin/view/Servers/NTPPoolServers
Click to expand...
Click to collapse
I see, probably I can use also CZ, HU, AT, DE or SK or EU .. I've red that the best is with more sites.
"After you have gained write acces " How can I gain write access ? I have rooted - but Adb shell doesn't work, did I missed something ? Thaks
nastyba said:
"After you have gained write acces " How can I gain write access ? I have rooted - but Adb shell doesn't work, did I missed something ? Thaks
Click to expand...
Click to collapse
i think yes adb is for the PC. it is part of the android sdk tools.
i did that on my desire (it should be same) but i have problem i edit and save file and now i cant see it
i can see that backup file but how do i restore it?
i tried create new file it wont work i cant see it (it says file created sucessfuly)
aantdesign said:
At first U must root R phone and then install Root Explorer. After that go to SYSTEM/ETC/
Here u need to edit GPS.CONF file and change NTP Server from northamerica.pool.ntp.org to europe.pool.ntp.org.
I hope that I help U m8.
Click to expand...
Click to collapse
U can use adb on Win or linux or qtadb.
Give these commands on adb shell..
su
mount -o remount,rw /dev/block/stl6 /system
exit
exit
adb pull /system/etc/gps.conf
Edit the gps.conf the way u like.
Then mount again in rw mode.
adb push gps.conf /system/etc/gps.conf
adb reboot
Done.
moved
new post @sgs2
nastyba said:
I would like to set my phone to europe.pool.ntp.org becouse it's default northamerica.pool.ntp.org
How can I edit this file ? When I try to type adb shell to terminal it gives me an error message.
Thanks
Not development related moved to General
Click to expand...
Click to collapse
U can use the apo "FasterFix" from market.
arunmcops said:
U can use the apo "FasterFix" from market.
Click to expand...
Click to collapse
Thanks for the tip much easier to change with this application done in seconds

[MOD] Enable Stock Hotspot on Verizon

I have gotten the built-in wireless tether to work. I know there's been some discussion about getting Wireless tether without FoxFi and similar.
Since we cannot use the recovery method directly, you can still use the tools and everything from it.
So to begin:
Obviously, you must have root for this to work.
1) Download the patch.zip from the original thread. [here: http://forum.xda-developers.com/showthread.php?t=2768837 ]
2) extract the zip to somewhere on sdcard. I extracted mine to the Download folder. You may need to edit the script below to reflect your locations.
3) okay, this part gets a little weird, but bear with me...
Save this code as run.sh in Download folder or wherever you extracted. You can over-write the old run.sh if you save it in toggle folder where original was located-- BE SURE TO EDIT AS REQUIRED
Code:
#!/sbin/sh
cp /mnt/sdcard/Download/toggle/sqlite3 /data/local/tmp/sqlite3
chmod 0777 /data/local/tmp/sqlite3
mount -o remount,rw /dev/block/mmcblk0p23 /system
cp /system/framework/framework-res.apk /system/framework/framework-res.apk.bak
cp /mnt/sdcard/Download/system/framework/framework-res.apk /system/framework/framework-res.apk
/data/local/tmp/sqlite3 /data/data/com.android.providers.settings/databases/settings.db < /mnt/sdcard/Download/toggle/toggles.sql
4) now open up adb on pc (preferred!!! So you can still see progress and if necesary you can undo/alter/fix things) or terminal emulator (untested but should work, may be weird since you have to reboot phone while it's interface is locked up)
Run:
adb shell
su
sh /mnt/sdcard/Download/toggle/run.sh [or where ever you saved it]
5) Your phone will probably lock up now because you've just replaced the framework-res.apk while the system was running.
adb reboot or reboot by other methods.
6) Profit ;]
I DO NOT WARRANTY OR GUARANTEE THIS METHOD. USE AT YOUR OWN RISK
I believe the sqlite edits serve the purpose of showing the icon in the quick settings pull down. Otherwise, just replacing the framework-res.apk with the correct changes is enough: See this thread for the changes needed:
http://forum.xda-developers.com/showthread.php?t=2759119
Incidentally, I was attempting to make the changes on my own and recompile the framework-res.apk, and I must've done something not quite right because the phone hung at the verizon logo. Thankfully adb was up so I was able to remount system as rw to replace the edited framework-res.apk from the original thread OP linked. Interestingly enough, as soon as I finished copying the edited file, the phone continued booting just fine, and I'm posting from the native tethered connection now.
Edit: I was able to do the changes on the framework-res.apk extracted/decompiled from my phone after all. I'm guessing that the phone didn't like deflate method as opposed to store method (no compression) on the resources.arsc file in the apk file. Had to use the 7zip command line tool to save the modified resources.arsc file without compression to the original apk:
7z u -mx0 framework-res.apk.zip resources.arsc
where -mx0 means no compression (copy)
Got it enabled by just replacing the framework-res.apk, and noticed speeds were really slow. I get 1.88mbps on LTE at home (so-so coverage), but only .15mbps on my iPad connected to my phone via Wi-Fi.
I did this: http://forum.xda-developers.com/showpost.php?p=53431713&postcount=9
SO MUCH EASIER than what you guys were doing. :good:
Droid_Evo_8 said:
I did this: http://forum.xda-developers.com/showpost.php?p=53431713&postcount=9
SO MUCH EASIER than what you guys were doing. :good:
Click to expand...
Click to collapse
It's a manner of preference. In terms of overhead, this native method should technically be quicker to enable, as it does not have to wait for the exposed module to intercept the call and return an empty array of apps to execute for the provision check. That being said, we're probably talking miliseconds at most. While I use xposed for other modules sometimes, others might prefer not to, and this native method does not require it.
vacaloca said:
It's a manner of preference. In terms of overhead, this native method should technically be quicker to enable, as it does not have to wait for the exposed module to intercept the call and return an empty array of apps to execute for the provision check. That being said, we're probably talking miliseconds at most. While I use xposed for other modules sometimes, others might prefer not to, and this native method does not require it.
Click to expand...
Click to collapse
I don't know much about adb or terminal emulator so I'm fine with it. :good:
Here's to hoping for an easy tethering mod!
fillyo said:
Here's to hoping for an easy tethering mod!
Click to expand...
Click to collapse
I'm not sure how easier it can get than installing xposed framework + X Tether mod and rebooting, or replacing the framework-res.apk file on your phone with the one listed in the OP... either will work. This of course assumes you have the Verizon model. Replacing the premade framework-res.apk on any other S5 model would probably cause issues and wouldn't solve anything .
I just made it 'harder' on myself by deciding to copy the original framework-res.apk from my phone, and using the latest apktool and aapt to extract the apk, make the modifications, rebuild it, and replace it on my phone (after renaming the original to .bak). I mostly did this to refresh my memory on how to do it as I had done the process with another phone a while back to do the same mod. As I mentioned earlier, the sqlite stuff is only necessary if you want a toggle in the quick settings bar... otherwise you can just go into settings menu and enable it that way.
vacaloca said:
I'm not sure how easier it can get than installing xposed framework + X Tether mod and rebooting, or replacing the framework-res.apk file on your phone with the one listed in the OP... either will work.
Click to expand...
Click to collapse
I don't see the framework-res.apk file in OP, am I missing something? I have no idea how to decompile mine to make changes.
fillyo said:
I don't see the framework-res.apk file in OP, am I missing something? I have no idea how to decompile mine to make changes.
Click to expand...
Click to collapse
It's linked to in step (1). It's inside the zip file that's meant to be flashed in a recovery... however, because our bootloader is still locked, we cannot flash a recovery, so the way to do it is by replacing the framework-res.apk file as the filesystem is live, which as the OP mentions, will trigger a soft reboot as this file is used extensively by Android apps.
vacaloca said:
It's linked to in step (1). It's inside the zip file that's meant to be flashed in a recovery... however, because our bootloader is still locked, we cannot flash a recovery, so the way to do it is by replacing the framework-res.apk file as the filesystem is live, which as the OP mentions, will trigger a soft reboot as this file is used extensively by Android apps.
Click to expand...
Click to collapse
I got the framework-res apk from the zip package, I guess I am a little nervous since this is from a dev edition, correct? Anyone else successfully just replace framework-res from the zip package on their retail Verizon GS5?
fillyo said:
I got the framework-res apk from the zip package, I guess I am a little nervous since this is from a dev edition, correct? Anyone else successfully just replace framework-res from the zip package on their retail Verizon GS5?
Click to expand...
Click to collapse
The OP (presumably), user in post #3, and myself before I did the changes manually.
SO I followed these instructions and this is what i get both from adb and Term Em.
mount: No such file or directory
: Read-Only file systemramework-res.apk.bak
: Read-Only file systemramework-res.apk
/mnt/sdcard/download/toggle/run.sh[8]: /mnt/sdcard/download/toggle/sqlite3: can't execute: permission denied
I use the same folder structure you did, created a download folder and extracted the zip...
Thoughts?
tangoboyz said:
SO I followed these instructions and this is what i get both from adb and Term Em.
mount: No such file or directory
: Read-Only file systemramework-res.apk.bak
: Read-Only file systemramework-res.apk
/mnt/sdcard/download/toggle/run.sh[8]: /mnt/sdcard/download/toggle/sqlite3: can't execute: permission denied
I use the same folder structure you did, created a download folder and extracted the zip...
Thoughts?
Click to expand...
Click to collapse
Seems at least like 2 errors... the mount command can't find the input or output directories, thus you attempt to copy the files and get read-only file system, and it looks like sqlite3 needs to be changed to executable... chmod +x sqlite3
Also make sure you're running as root, obviously.
I saw a similar post int the android development subforum, and they seem to believe you will bootloop if you try to overwrite your framework-res. I chickened out and just did the xposed and x tether mod.
vacaloca said:
Seems at least like 2 errors... the mount command can't find the input or output directories, thus you attempt to copy the files and get read-only file system, and it looks like sqlite3 needs to be changed to executable... chmod +x sqlite3
Also make sure you're running as root, obviously.
Click to expand...
Click to collapse
I am rooted. Here's what i had in my run.sh:
#!/sbin/sh
cp /mnt/sdcard/Download/toggle/sqlite3 /data/local/tmp/sqlite3
chmod 0777 /data/local/tmp/sqlite3
mount -o remount,rw /dev/block/mmcblk0p23 /system
cp /system/framework/framework-res.apk /system/framework/framework-res.apk.bak
cp /mnt/sdcard/Download/system/framework/framework-res.apk /system/framework/framework-res.apk
/mnt/sdcard/Download/toggle/sqlite3 /data/data/com.android.providers.settings/databases/settings.db < /mnt/sdcard/Download/toggle/toggles.sql
NOW does this look right??
#!/sbin/sh
cp /mnt/sdcard/Download/toggle/sqlite3 /data/local/tmp/sqlite3
chmod +x 0777 /data/local/tmp/sqlite3
mount -o remount,rw /dev/block/mmcblk0p23 /system
cp /system/framework/framework-res.apk /system/framework/framework-res.apk.bak
cp /mnt/sdcard/Download/system/framework/framework-res.apk /system/framework/framework-res.apk
/mnt/sdcard/Download/toggle/sqlite3 /data/data/com.android.providers.settings/databases/settings.db < /mnt/sdcard/Download/toggle/toggles.sql
I'm sorry as I'm very new to this.
tangoboyz said:
I am rooted. Here's what i had in my run.sh:
#!/sbin/sh
cp /mnt/sdcard/Download/toggle/sqlite3 /data/local/tmp/sqlite3
chmod 0777 /data/local/tmp/sqlite3
mount -o remount,rw /dev/block/mmcblk0p23 /system
cp /system/framework/framework-res.apk /system/framework/framework-res.apk.bak
cp /mnt/sdcard/Download/system/framework/framework-res.apk /system/framework/framework-res.apk
/mnt/sdcard/Download/toggle/sqlite3 /data/data/com.android.providers.settings/databases/settings.db < /mnt/sdcard/Download/toggle/toggles.sql
NOW does this look right??
#!/sbin/sh
cp /mnt/sdcard/Download/toggle/sqlite3 /data/local/tmp/sqlite3
chmod +x 0777 /data/local/tmp/sqlite3
mount -o remount,rw /dev/block/mmcblk0p23 /system
cp /system/framework/framework-res.apk /system/framework/framework-res.apk.bak
cp /mnt/sdcard/Download/system/framework/framework-res.apk /system/framework/framework-res.apk
/mnt/sdcard/Download/toggle/sqlite3 /data/data/com.android.providers.settings/databases/settings.db < /mnt/sdcard/Download/toggle/toggles.sql
I'm sorry as I'm very new to this.
Click to expand...
Click to collapse
The original script should work assuming the files are in the right path... when I mentioned make sure you are running as root meant, make sure you run the 'su' command and get the # prompt before you run the script, otherwise the script won't run with root permissions and will fail.
For the third line, you (and the OP) can replace the mount command with:
Code:
mount -o,remount rw /system
----
As an aside, the chmod 0777 part in the original script already does mark the file as executable... chmod works with generic +rwx (read,write,execute) distinctions or the regular numbering permissions (777 means rwx for everyone)
Edit: the last line of the script should start with: /data/local/tmp/sqlite3
because that's the one that you set the permissions to rwx, not the one in your sdcard
vacaloca said:
The original script should work assuming the files are in the right path... when I mentioned make sure you are running as root meant, make sure you run the 'su' command and get the # prompt before you run the script, otherwise the script won't run with root permissions and will fail.
For the third line, you (and the OP) can replace the mount command with:
Code:
mount -o,remount rw /system
----
As an aside, the chmod 0777 part in the original script already does mark the file as executable... chmod works with generic +rwx (read,write,execute) distinctions or the regular numbering permissions (777 means rwx for everyone)
Edit: the last line of the script should start with: /data/local/tmp/sqlite3
because that's the one that you set the permissions to rwx, not the one in your sdcard
Click to expand...
Click to collapse
Hmm still no dice... Something isn't working right. Really I wanted the Hotspot in the pull down menu. I am currently paying for hotspot anyway....
Just found that wanam xposed has an option to skip provisioning check. Anyone tried this yet? Seems to enable native tethering but doesn't give a quick settings button.
dlscott1111 said:
Just found that wanam xposed has an option to skip provisioning check. Anyone tried this yet? Seems to enable native tethering but doesn't give a quick settings button.
Click to expand...
Click to collapse
Yes, we have tried it and it works. The quick settings button, as I have mentioned earlier in this thread, is what the sqlite3 executable and the file commands it takes in (just a simple text file of DB commands) take care of. You could also just get sqlite editor ($3 from the play store, IIRC) and do them manually if you don't like command line tools. it's basically adding "WiFiHotspot" to system -> notification_panel_active_app_list_for_reset and notification_panel_default_active_app_list in the settings.db file in /data/data/com.android.providers.settings/databases/
Or you could just do it the free with the command line sqlite3 using the tools already at your disposal

Categories

Resources