Hi, i'm trying to install CM9 for the first time (not sure if i should be posting here), and would like some help.
What is supposed to be inside Local_minifest.xml?
I tried getting a file from
h t t p (dot)(dot)//review(dot)cyanogenmod(dot)com/#change,11892
By clicking on the default.xml down the bottom, opening it in Gedit, and copying it over, but i get an error message when i try the repo sync -j16 command.
Could someone please give me a file, or a paste bin of what i'm supposed to be using, or help me out.
Thanks in advance for any help you can give.
(error message)
[email protected]:~/android/system$ repo sync
... A new repo command ( 1.15) is available.
... You should upgrade soon:
cp /home/max/android/system/.repo/repo/repo /home/max/bin/repo
Traceback (most recent call last):
File "/home/max/android/system/.repo/repo/main.py", line 385, in <module>
_Main(sys.argv[1:])
File "/home/max/android/system/.repo/repo/main.py", line 365, in _Main
result = repo._Run(argv) or 0
File "/home/max/android/system/.repo/repo/main.py", line 121, in _Run
copts, cargs = cmd.OptionParser.parse_args(argv)
File "/home/max/android/system/.repo/repo/command.py", line 44, in OptionParser
self._Options(self._optparse)
File "/home/max/android/system/.repo/repo/subcmds/sync.py", line 126, in _Options
self.jobs = self.manifest.default.sync_j
File "/home/max/android/system/.repo/repo/manifest_xml.py", line 228, in default
self._Load()
File "/home/max/android/system/.repo/repo/manifest_xml.py", line 275, in _Load
self._ParseManifest(False)
File "/home/max/android/system/.repo/repo/manifest_xml.py", line 319, in _ParseManifest
(remote.name, self.manifestFile))
error.ManifestParseError: duplicate remote aosp in /home/max/android/system/.repo/local_manifest.xml
Check out this guide and then come back if you're still having problems
http://www.webosnation.com/how-install-cyanogenmod-9-android-your-touchpad
Also check out Reverend Kyle's Youtube channel. He does some really nice tutorials for installing CM on the touchpad:
http://www.youtube.com/user/reverendkjr
Are you trying to install CM9 on your touchpad, or are you downloading and trying to build the CM Rom yourself from source (which is what it seems like you are doing on that page).
Yeah, if you are trying to just install CM9 on your TouchPad, I think you are going about it ALL wrong.
Best guide I have seen and easiest to use with all links being available is from Liliputing, just have to Google it, he even helps you with nightly support
Sent from my SAMSUNG-SGH-I997 using xda premium
Related
Ok I need some help with update-script for a theme I have in metamorph format. I'm really lost with this don't know how to do it the correct way. I keep getting can't find update-script when I flash through recovery. If anyone can please help me or poke me in the right direction that would be nice.
I always follow this guide to create update zip file:
http://www.londatiga.net/it/how-to-create-android-update-zip-package/
But remember, when you create "update-script" file, make sure you:
1. put an extra line in its end
2. all line breaks must be in Unix format
To sign the zip package, either you may use the way in the tutorial, or you can use ZipSigner on your Android to sign a zip.
Can you spot where I'm going wrong.
show_progress 0.1 0
delete SYSTEM:app/Facebook.apk
delete SYSTEM:app/GenieWidget.apk
delete SYSTEM:app/GoogleSearch.apk
delete SYSTEM:app/ADWLauncher.apk
delete SYSTEM:app/Contacts.apk
delete SYSTEM:app/Music.apk
delete SYSTEM:app/LatinIME.apk
delete SYSTEM:app/Browser.apk
copy_dir PACKAGE:system SYSTEM:
show_progress 0.2 50
set_perm_recursive 0 0 0755 0644 SYSTEM:app
show_progress 0.2 600
copy_dir PACKAGE:sdcard SDCARD:
show_progress 0.3 100
If the error you're getting says it can't find the update script, the error is likely to be the name or location of the script, and not the script content...
Sent from my Nexus One using XDA App
danger-rat said:
If the error you're getting says it can't find the update script, the error is likely to be the name or location of the script, and not the script content...
Sent from my Nexus One using XDA App
Click to expand...
Click to collapse
right ok this is the structure:-
update.zip
META-INF=
com
CERT.RSA
CERT.SF
MANIFEST.MF
com=
google
google=
android
android=
update-script
Is there any thing wrong?
Do you have the update binary in the android folder?
Sent from my Nexus One using XDA App
Thank you for your help. I've found out what was the problem was, it was me being a fool and making a beginners mistake. Too little sleep and rushing to get it ready for gingerbread. Well thats what I'm saying and i'm going to stick to it
Everything was perfect from the start just me double zipping the update folder, how stupid do I feel? Very
Executive summary: I have put up new framework.jars for phiremod 6.1 and Cm7 stable at the bottom of this thread. The instructions for how to install it are at the bottom, just be sure to rename your file to framework.jar (the .zip extension is just so that XDA will accept it). For those who want to do this to their own custom ROMs that are not phiremod or CM7, I have included instructions on how to do so below.
After much slacking on my part I have finally updated this thread for those who cannot live without swype like myself. Find attached the jar for phiremod 6.1 and the stable release of CM7 for nook color.
In addition, I want to spread the knowledge on how to do this yourself, because the process is very simple and I may not be able to keep this thread maintained in the long run with the way my work has been recently.
To get started, pick out your ROM of choice and download it, open the .zip file (or in the case of images, mount the image) and locate the framework.jar file in /system/framework/ folder. I like to put this file in an empty folder, it can make things a little less confusing down the road.
Download smali and baksmali from here: http://code.google.com/p/smali/ store those two jar files in the same folder as your target framework.jar
Open the command line and navigate to your folder containing smali-x-.jar, baksmali-x-.jar and framework.jar. Once in the folder run the following command (in the case of version 1.2.6:
> java -jar baksmali-1.2.6.jar framework.jar
It will think for a while and then when done you will notice a folder called "out" in the directory.
Navigate to ./out/android/telephony and locate TelephonyManager.smali, and open it with notepad or any normal text editor
Search the document for the phrase "getDeviceId". You should find a section of code that looks like this:
.method public getDeviceId()Ljava/lang/String;
<<<lots of code here>>>
.end method
Obviously (or maybe not so obviously to those without coding experience) it is critical that you find the very next instance of .end method when selecting and replacing the block of code. If you go too far and find a .end method somewhere else, you can potentially delete more code than you want to. If necessary, scan through each line of code one by one so you make sure you aren't deleting some other method.
Once you have identified the code for getDeviceId only, select and replace that entire block of code with this
Code:
.method public getDeviceId()Ljava/lang/String;
.registers 4
.prologue
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "12-34567-89012-45"
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v0, "Tag"
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
move-result v0
return-object v1
.end method
If you feel like it, you can put anything you want in the string on line 5, in case you want a different IMEI than everyone else.
save and close TelephonyManager.smali
from the command prompt, make sure you are in your original folder with the 3 jar files in it and the out folder. Then run the following command (for smali 1.2.6:
> java -jar smali-1.2.6.jar -o classes.dex out
After some more thinking you will find a file classes.dex has been created.
open up your framework.jar file with your favorite zip editor. WinRar can handle this task and is free. Important distinction here: you OPEN the framework.jar file, do not EXTRACT it. Just open it so you can view the contents
once viewing the contents, you will notice a classes.dex file in the framework.jar file. Right click it and "delete".
then, add your modified classes.dex to the archive. In WinRar, you do this by right clicking on the whitespace and choosing "add files to archive"
once added to the archive, close out of the .jar file and you are done!
Your framework.jar file now has a modified TelephonyManager which will spoof your IMEI. this is the API call that Swype uses to verify your IMEI and issue you a license in the swype beta.
Note that this is likely only legal for the Nook Color. Do NOT do this for any device with a telephone radio. I repeat, do NOT do this for any device with a telephone radio. That could be illegal and is in most locales, and it would probably really mess your phone up.
-----
Original post describing how to install a modified framework.jar:
-----
Rename the attachment as framework.jar and replace your /system/framework/framework.jar
I used "mount system" app to mount system as writable, and terminal emulator to copy/rename the framework.jar file. Any method should work, really. As with any time you are messing with stuff in /system/, I suggest you make a backup of the original somewhere unless you don't mind doing a clean wipe.
Once that is done, sign up for the swype beta and download/install. Should work out of the box.
Still need a little bit of testing because I have not done much myself. Biggest concern of mine right now is I am not sure what kind of validation Swype servers do on the IMEI. The IMEI is hard-coded into the framework.jar file so everyone who downloads this file theoretically will tell the Swype servers they are using the same device. This might cause some server validation issues down the line, but its possible they didn't even anticipate this as a scenario.
Ideally, if this causes issues, I can modify the IMEI to be a derivative of the MAC address, so that way we are much less likely to have collisions, but I'd prefer to wait until we at least have an RC for CM7 before I do that - or even better get the change submitted to the encore branch if there is enough interest.
Friggin AWESOME :-D Thank you sooooooooo much... I was just looking for this :-D
Would be better to submit a patch to CM Gerrit that creates a fake-IMEI based off the MAC address - this will break on new CM7 nightlies rather quickly as framework changes are made.....
Worked flawless. Flashed over Nightly 31.
I suggest you do what EugeneKay said: submit a patch to CM. A hack for this would be good for everyone.
If it isnt accepted, or something, I suggest you tell us how to do it, because I will need that.
Thanks, you made my week now.
REMOVED: Wrong section
Hi Guys,
I am aware there is some continued interest in this and I really want to get this pushed into CM7 as an official update. After just a little bit of cursory discussion in #nookie, most of the devs agreed a patch would *not* be illegal, because the nook does not have a cellular radio.
As soon as I get some time to do some test builds and get some stable code, I will submit a CM7 patch. I am a bit of a Git/Gerrit noob so if someone here already has a repo and build environment set up and ready to go, it may be faster for me to simply tell someone else what files/methods to modify so we can get a working test build.
I can do this. I have a build env thats ready to go. The one thing i noticed though is that it doesn't work with preinstalled versions of Swype as was the case with me. It took a few trials but i had to make this change and then redownload swype Beta using a different login/email and then it was smooth.
I will try to generate a device id using net.hostname and see how it goes. does anyone know if that is unique enough?
thanks!
Works great! Thanks so much!
I'm going to see what happens when I titanium backup it and move to a different rom.
Edit: Also, your framework.jar that replaced the stock Phiremod v5.2 breaks the rotary tab unlock and it causes GAPPS to crash on initial bootup.
Anyone else notice their device lags after swapping the framework.jar file? I'm extremely happy this is working now, and other games are working...but the lag sucks.
Swipe doesn't cover the whole bottom of the screen? this also fixes the issue with home run battle it now plays on my nook!
anyone get swype working on honeycomb? using thumb keyboard but even though its good would prefer using swype...
mthe0ry said:
Hi Guys,
I am aware there is some continued interest in this and I really want to get this pushed into CM7 as an official update. After just a little bit of cursory discussion in #nookie, most of the devs agreed a patch would *not* be illegal, because the nook does not have a cellular radio.
As soon as I get some time to do some test builds and get some stable code, I will submit a CM7 patch. I am a bit of a Git/Gerrit noob so if someone here already has a repo and build environment set up and ready to go, it may be faster for me to simply tell someone else what files/methods to modify so we can get a working test build.
Click to expand...
Click to collapse
+1 for that!
This feature is necessary for us not only because of Swype and should be on CM.
I suggest you talk to mad-murdock, who is making lots of new features tablet-wise for CM.
Thanks.
I moved the original framework.jar to framework.jar.bck and put the new one in. Rebooted nook and now im sitting at A N D R O I D and a blinking cursor. Any ideas?
EDIT - I Reflashed Mad Murdocks build and i am booting again. I am not too familiar with what the framework.jar file is for, but i guess whatever changes are made in this build, probably depend on the framework.jar that is flashed with the tablet builds. Can someone confirm or did I mess up? Swype keyboard teases me currently with limited functionality :-(
After replacing the original framework.jar with the updated copy and rebooting, I had the same problem. I had just updated to nightly 35, so I put that back on. Looks like it just replaced the framework.jar back to the one that was there before, dated 1 Aug 08. Without changing the framework.jar swype originally worked for me, but only in "limited" mode. I beleive this means it downloaded the version for my phone as opposed to the one for my NC. Applied with new email and got the right version, which doesn't work with the original framework.jar. Any idea why it's not booting with the changes? Would love to have Swype working on my NC!
running the latest tablet tweaks version of cm7 and replaced my framework.jar, I'm also stuck at the android screen. I really want to get this working. I'm getting an imei number error trying to install copilot live. hoping this will solve it if I can get it working.
Wow this is huge, can you post or PM me exactly which file you edited and what you added . I'm on nookie comb (froyo) and cant use that jar.
Also now stuck at the android screen, I did backup up jar file to my sdcard first. Running CM7 final. How do I get booted again? Clockwork recovery doesn't seem to be working, but I can probably update my SD card with CWR again. Once I'm in clockwork what's the best way to put back the original framework.jar file?
back up after reflashing CM7 - still no swype though
This is unfortunate as I'm eagerly awaiting a stable IMEI. SlideIT is just not as polished IMO...
Sent from my GSB Eris using XDA app
dinobud said:
This is unfortunate as I'm eagerly awaiting a stable IMEI. SlideIT is just not as polished IMO...
Sent from my GSB Eris using XDA app
Click to expand...
Click to collapse
Agreed.
The first solution was great, but we need one for CM7 Stable, at least.
Thanks again!
I want to share this to make everyone know how I port it to our device so I shouldn't share it to just one or two people.
It is based on this proxuser thread, credit goes to him. I just make it details and make it work for our device.
We will make MIUIv4 framework to run on top of CM9/AOSP base. So we should prepare CM9 base and MIUIv4 to port. You can use any MIUIv4 to port but you can try by choosing the one which similar hardware with our device.
- Prepare extracted CM9 base rom in folder A, and extracted MIUIv4 rom in folder B. Copy file framework.jar, framework-res.apk and services.jar at /system/framework from CM9 folder save them in folder C. After here, we will port from folder B to folder A.
- Remove folder /system/framework and /system/app in folder A and replace them from folder B.
- Remove /system/app/nfc.apk, since our device don't have this feature.
- Copy all *.db and *.td at /system/etc from B to A.
- replace media folder in /system/media at folder B to folder A.
- copy content-types.properties file to /system/lib from B to A.
- copy miui-framework.xml at etc/permission
- copy /system/xbin/invoke-as and /system/xbin/su from folder B to A
- copy /system/lib/liblbesecs.so from folder B to A
- add this lines to updater-script file in folder B:
set_perm(0, 0, 06755, "/system/xbin/invoke-as");
set_perm(0, 0, 0755, "/system/lib/liblbesec.so");
- change values from build.prop
ro.build.version.incremental=2.x.x (version number of MIUIv4)
ro.config.ringtone=MI.ogg
ro.config.notification_sound=FadeIn.ogg
ro.config.alarm_alert=GoodMorning.ogg
ro.config.sms_received_sound=FadeIn.ogg
ro.config.sms_delivered_sound=MessageComplete.ogg
Test the new port:
Now pack folder B to zip files and sign it and flash it using CWM. You should prepare the other working rom to get back to previous rom .
Use adb logcat to debug, and see the result. If it doesn't shown anything, then we should replace libandroid_runtime.so from MIUIv4, but not in my case, I kept it from CM9.
Our device is based on Qualcomm so with our new CM9 theme engine will affected, it will got hung on boot with unresolved at android/content/res/AssetManager. Just break the logcat when it shown some lines with "died" things and scroll up, you'll find it.
So here is the next step which will take more time. You should able to decompile and recompile jar/apk files, Google it for that, it's very easy to do that. We'll go for smaling and baksmaling here. And for comparing, use an application such as winmerge for windows or Meld for linux.
Remember that we have some files in folder C from CM9 and we'll use that as source for smaling steps.
- find /smali/android/content/res/assetManager.smali from framework.jar on Miuiv4 and compare it with the same file from CM9 one, replace all missing lines.
- copy missing method in /smali/android/hardware/Camera.smali
- copy missing method in /smali/android/os/Power.smali, method SetUnstableMemoryState the important one.
- copy /smali/android/server/BluetoothA2dpService*.smali
- copy /smali/android/content/res/PackageRedirectionMap*.smali
- copy /smali/org/codeaurora/Performance.smali
- copy smali/android/media/MediaRecorder*.smali
- copy /smali/android/view/GLES20Canvas*.smali
- copy /smali/android/net/wifi/WifiNative.smali
- copy /smali/android/graphics/paint*.smali
I found them by watching logcat, fixing one by one error on each boot, so now you can save much time by using this guide.
If still stuck, I look for some lines like this:
E/dalvikvm( 234): ERROR: couldn't find native method
E/dalvikvm( 234): Requested: Lxxxxxxx/xxxxxxx/xxxxxxxx;.yyyyyyyyyyyyyZ)I
E/JNIHelp ( 234): RegisterNatives failed for 'xxxxxxx/xxxxxxx/xxxxxxxx', aborting
F/libc ( 234): Fatal signal zzzzzz at 0xdeadbaad (code=1)
Then the problem is in xxxxxxx/xxxxxxx/xxxxxxxx.smali file, try to fix it first by adding missing lines in it if possible or copy xxxxxxx/xxxxxxx/xxxxxxxx*.smali if there is so many different lines.
You should see the MIUIv4 lockscreen if you done fixing all those problem.
After this we can fixing anothers, like 2G/3G data and headset.
To fix headset, it's in WiredServiceObserver.smali in framework-res.apk, find the path string which contain "h2w" word with "headset_sensor" word, remember just paths string, no else. It should be 3 words to replace.
Now to fix 2G/3G data,
replace RIL*.smali and copy LGEQualcommRIL*.smali at path
/smali/com/android/internal/telephony ín framework.jar.
You also need to patch PhoneFactory.smali to construct your class instead of RIL:
find "RIL" word (there will be 2 entries) and replace them to "LGEQualcommRIL".
Fuih..... That what I've learned of porting MIUIv4 guys...
Soon will be born more porters... Great!!!
Happy porting...!!!!
CacingKalung said:
I want to share this to make everyone of you know how I port it to our device so I shouldn't share it to just one or two people.
It is based on this proxuser thread, credit goes to him. I just make it details and make it work for our device.
We will make MIUIv4 framework to run on top of CM9/AOSP base. So we should prepare CM9 base and MIUIv4 to port. You can use any MIUIv4 to port but you can try by choosing the one which similar hardware with our device.
- Prepare extracted CM9 base rom in folder A, and extracted MIUIv4 rom in folder B. Copy file framework.jar, framework-res.apk and services.jar at /system/framework from CM9 folder save them in folder C. After here, we will port from folder B to folder A.
- Remove folder /system/framework and /system/app in folder A and replace them from folder B.
- Remove /system/app/nfc.apk, since our device don't have this feature.
- Copy all *.db and *.td at /system/etc from B to A.
- replace media folder in /system/media at folder B to folder A.
- copy content-types.properties file to /system/lib from B to A.
- copy miui-framework.xml at etc/permission
- copy /system/xbin/invoke-as and /system/xbin/su from folder B to A
- copy /system/lib/liblbesecs.so from folder B to A
- add this lines to updater-script file in folder B:
set_perm(0, 0, 06755, "/system/xbin/invoke-as");
set_perm(0, 0, 0755, "/system/lib/liblbesec.so");
- change values from build.prop
ro.build.version.incremental=2.x.x (version number of MIUIv4)
ro.config.ringtone=MI.ogg
ro.config.notification_sound=FadeIn.ogg
ro.config.alarm_alert=GoodMorning.ogg
ro.config.sms_received_sound=FadeIn.ogg
ro.config.sms_delivered_sound=MessageComplete.ogg
Test the new port:
Now pack folder B to zip files and sign it and flash it using CWM. You should prepare the other working rom to get back to previous rom .
Use adb logcat to debug, and see the result. If it doesn't shown anything, then we should replace libandroid_runtime.so from MIUIv4, but not in my case, I kept it from CM9.
Our device is based on Qualcomm so with our new CM9 theme engine will affected, it will got hung on boot with unresolved at android/content/res/AssetManager. Just break the logcat when it shown some lines with "died" things and scroll up, you'll find it.
So here is the next step which will take more time. You should able to decompile and recompile jar/apk files, Google it for that, it's very easy to do that. We'll go for smaling and baksmaling here. And for comparing, use an application such as winmerge for windows or Meld for linux.
Remember that we have some files in folder C from CM9 and we'll use that as source for smaling steps.
- find /smali/android/content/res/assetManager.smali from framework.jar on Miuiv4 and compare it with the same file from CM9 one, replace all missing lines.
- copy missing method in /smali/android/hardware/Camera.smali
- copy missing method in /smali/android/os/Power.smali, method SetUnstableMemoryState the important one.
- copy /smali/android/server/BluetoothA2dpService*.smali
- copy /smali/android/content/res/PackageRedirectionMap*.smali
- copy /smali/org/codeaurora/Performance.smali
- copy smali/android/media/MediaRecorder*.smali
- copy /smali/android/view/GLES20Canvas*.smali
- copy /smali/android/net/wifi/WifiNative.smali
- copy /smali/android/graphics/paint*.smali
I found them by watching logcat, fixing one by one error on each boot, so now you can skip much time by using this guide.
If still stuck, I look for some lines like this:
E/dalvikvm( 234): ERROR: couldn't find native method
E/dalvikvm( 234): Requested: Lxxxxxxx/xxxxxxx/xxxxxxxx;.yyyyyyyyyyyyyZ)I
E/JNIHelp ( 234): RegisterNatives failed for 'xxxxxxx/xxxxxxx/xxxxxxxx', aborting
F/libc ( 234): Fatal signal zzzzzz at 0xdeadbaad (code=1)
Then the problem is in xxxxxxx/xxxxxxx/xxxxxxxx.smali file, try to fix it first by adding missing lines in it if possible or copy xxxxxxx/xxxxxxx/xxxxxxxx*.smali if there is to many different.
You should see the MIUIv4 lockscreen if you done fixing all those problem.
After this we can fixing anothers, like 2G/3G data and headset.
To fix headset, it's in WiredServiceObserver.smali in framework-res.apk, find the path with contain "h2w" word with "headset_sensor" word, remember just paths string, no else. It should be 3 words to replace.
Now to fix 2G/3G data,
replace RIL*.smali and copy LGEQualcommRIL*.smali at path
/smali/com/android/internal/telephony ín framework.jar.
You also need to patch PhoneFactory.smali to construct your class instead of RIL:
find "RIL" word (there will be 2 entries) and replace them to "LGEQualcommRIL".
Fuih..... That what I've learned of porting MIUIv4 guys...
Soon will be born more porters... Great!!!
Happy porting...!!!!
Click to expand...
Click to collapse
owh yeah so I just forget change the ril.smail on the framework..try again..thanks my sifu...
any plan for jelly bean port??
Sent from my FIH-FB0 using xda
2.6.15 and 2.6.22 boot loop
comdevx said:
2.6.15 and 2.6.22 boot loop
Click to expand...
Click to collapse
if you get boot loop,now you almost get the miui working and please follow this step
So here is the next step which will take more time. You should able to decompile and recompile jar/apk files, Google it for that, it's very easy to do that. We'll go for smaling and baksmaling here. And for comparing, use an application such as winmerge for windows or Meld for linux.
Remember that we have some files in folder C from CM9 and we'll use that as source for smaling steps.
- find /smali/android/content/res/assetManager.smali from framework.jar on Miuiv4 and compare it with the same file from CM9 one, replace all missing lines.
- copy missing method in /smali/android/hardware/Camera.smali
- copy missing method in /smali/android/os/Power.smali, method SetUnstableMemoryState the important one.
- copy /smali/android/server/BluetoothA2dpService*.smali
- copy /smali/android/content/res/PackageRedirectionMap*.smali
- copy /smali/org/codeaurora/Performance.smali
- copy smali/android/media/MediaRecorder*.smali
- copy /smali/android/view/GLES20Canvas*.smali
- copy /smali/android/net/wifi/WifiNative.smali
- copy /smali/android/graphics/paint*.smali
---------- Post added at 06:20 AM ---------- Previous post was at 06:17 AM ----------
abenagiel said:
any plan for jelly bean port??
Sent from my FIH-FB0 using xda
Click to expand...
Click to collapse
i think for driver rom jelly bean not still support for driver qulcomm(adreno) and need new baseband...
comdevx said:
2.6.15 and 2.6.22 boot loop
Click to expand...
Click to collapse
Read carefully my guide and if ypu still stuck at boot, look at logcat and look at deadbad fatal error and again... follow above guide at deadbaad error.
Sent from my bike using Tapatalk
CacingKalung said:
So here is the next step which will take more time. You should able to decompile and recompile jar/apk files, Google it for that, it's very easy to do that. We'll go for smaling and baksmaling here. And for comparing, use an application such as winmerge for windows or Meld for linux.
Remember that we have some files in folder C from CM9 and we'll use that as source for smaling steps.
- find /smali/android/content/res/assetManager.smali from framework.jar on Miuiv4 and compare it with the same file from CM9 one, replace all missing lines.
- copy missing method in /smali/android/hardware/Camera.smali
- copy missing method in /smali/android/os/Power.smali, method SetUnstableMemoryState the important one.
- copy /smali/android/server/BluetoothA2dpService*.smali
- copy /smali/android/content/res/PackageRedirectionMap*.smali
- copy /smali/org/codeaurora/Performance.smali
- copy smali/android/media/MediaRecorder*.smali
- copy /smali/android/view/GLES20Canvas*.smali
- copy /smali/android/net/wifi/WifiNative.smali
- copy /smali/android/graphics/paint*.smali
I found them by watching logcat, fixing one by one error on each boot, so now you can save much time by using this guide.
If still stuck, I look for some lines like this:
E/dalvikvm( 234): ERROR: couldn't find native method
E/dalvikvm( 234): Requested: Lxxxxxxx/xxxxxxx/xxxxxxxx;.yyyyyyyyyyyyyZ)I
E/JNIHelp ( 234): RegisterNatives failed for 'xxxxxxx/xxxxxxx/xxxxxxxx', aborting
F/libc ( 234): Fatal signal zzzzzz at 0xdeadbaad (code=1)
Then the problem is in xxxxxxx/xxxxxxx/xxxxxxxx.smali file, try to fix it first by adding missing lines in it if possible or copy xxxxxxx/xxxxxxx/xxxxxxxx*.smali if there is so many different lines.
You should see the MIUIv4 lockscreen if you done fixing all those problem.
After this we can fixing anothers, like 2G/3G data and headset.
To fix headset, it's in WiredServiceObserver.smali in framework-res.apk, find the path string which contain "h2w" word with "headset_sensor" word, remember just paths string, no else. It should be 3 words to replace.
Now to fix 2G/3G data,
replace RIL*.smali and copy LGEQualcommRIL*.smali at path
/smali/com/android/internal/telephony ín framework.jar.
You also need to patch PhoneFactory.smali to construct your class instead of RIL:
find "RIL" word (there will be 2 entries) and replace them to "LGEQualcommRIL".
Fuih..... That what I've learned of porting MIUIv4 guys...
Soon will be born more porters... Great!!!
Happy porting...!!!!
Click to expand...
Click to collapse
Hey bro replace text from d smali files to cm9 files and repack cm9 jar or miui jar??
a2441918 said:
Hey bro replace text from d smali files to cm9 files and repack cm9 jar or miui jar??
Click to expand...
Click to collapse
from cm9 to miui. repack miui jar.
CacingKalung said:
from cm9 to miui. repack miui jar.
Click to expand...
Click to collapse
bro in cm9 base assetmanager.smali its given like this
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
but in miui, assetmanager.smali is given like
invoke-direct/range {v0 .. v0}, Ljava/lang/Object;-><init>()V
So replace only the missing lines or also correct these lines??
and bro in cm9 bluetootha2dpservice$1.smali the line is
move-result-object v5
.line 113
.local v5, action:Ljava/lang/String;
const-string v28, "android.bluetooth.adapter.action.STATE_CHANGED"
but in miui bluetootha2dpservice$1.smali
.line 72
invoke-virtual {p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
what to do bro??
for asset manager, just missing lines, no need to correct others.
For bluetootha2dp, replace smali files.
Sent from my bike using Tapatalk 2
Hey mate, nice guide, seems that partially matches porting of TouchWiz I'm doing right now, some errors are similiar. Will keep track on this while porting.
mesaj said:
Hey mate, nice guide, seems that partially matches porting of TouchWiz I'm doing right now, some errors are similiar. Will keep track on this while porting.
Click to expand...
Click to collapse
Good... hope you can share your work with us so we can taste it
Sent from my bike using Tapatalk 2
CacingKalung said:
Good... hope you can share your work with us so we can taste it
Sent from my bike using Tapatalk 2
Click to expand...
Click to collapse
Unfortunatelly, I can't as I'm porting to Samsung Galaxy S2 from S3 May just share some experiences during process.
There's a lot of work with resizing & need first to boot it, that I'm currently working on.
I've got a request on this guide, just to add some more bbcode formatting.
Thanks for all this, hope It'll be helpful.
mesaj said:
Unfortunatelly, I can't as I'm porting to Samsung Galaxy S2 from S3 May just share some experiences during process.
There's a lot of work with resizing & need first to boot it, that I'm currently working on.
I've got a request on this guide, just to add some more bbcode formatting.
Thanks for all this, hope It'll be helpful.
Click to expand...
Click to collapse
No problem... good luck.
Sent from my bike using Tapatalk 2
@cacingkalung
hye mate I need you help this is framework MIUI.US the latest..can you decomplie this framework.jar because I can't get decomplie this file and get error when decomplie and complied using window,can you only help me replaced the RIL.smail and LEG.smail to get mobile data working 2g/3g...
thanks..hope you will help me
elol said:
hye mate I need you help this is framework MIUI.US the latest..can you decomplie this framework.jar because I can't get decomplie this file and get error when decomplie and complied using window,can you only help me replaced the RIL.smail and LEG.smail to get mobile data working 2g/3g...
thanks..hope you will help me
Click to expand...
Click to collapse
@Elol, Yes, I also faced problems when decompiling MIUI.us framework.jar using windows.
So while I was still learning about flashing, ROMs, Kernels, etc, I managed to get a CM9 build on my Captivate. However, I installed the build for smtd device instead of mtd device. Now when I go to install the latest nightly CM9 build (mtd version), it fails right away with an assert failure. I think it is because it is checking my device type and sees that I have the smtd version currently.
Is there an easy way around this? I've considered editing the install script in the zip file to bypass the assert. Would that work, or there a better way?
cgulka said:
So while I was still learning about flashing, ROMs, Kernels, etc, I managed to get a CM9 build on my Captivate. However, I installed the build for smtd device instead of mtd device. Now when I go to install the latest nightly CM9 build (mtd version), it fails right away with an assert failure. I think it is because it is checking my device type and sees that I have the smtd version currently.
Is there an easy way around this? I've considered editing the install script in the zip file to bypass the assert. Would that work, or there a better way?
Click to expand...
Click to collapse
Open the .zip file with winrar, then go to "\META-INF\com\google\android" and open the file "updater-script" with Notepad ++. Delete all the lines (The very beginning) that says: assert(getprop("ro.product.device") == "captivate" etc... save it, let winrar update the files. Then try flashing it again.
Thanks! That worked. That was what I suspected I needed to do. I can tell you this, it takes a LONG time to re-zip such a large file on a little under-powered netbook.
Nick0703 said:
Open the .zip file with winrar, then go to "\META-INF\com\google\android" and open the file "updater-script" with Notepad ++. Delete all the lines (The very beginning) that says: assert(getprop("ro.product.device") == "captivate" etc... save it, let winrar update the files. Then try flashing it again.
Click to expand...
Click to collapse
I've been having a similar problem, so I did this and was able to install the ROM, but it gets stuck in the boot animation. Any ideas?
UPDATE: Fixed it by formatting the boot and system partitions. I blame semaphore.
Hey everyone, I'm very new to the android dev scene and i've been wracking my brains the past few months trying to figure out why after I issue the command brunch d2spr my $OUT folder doesn't have a CM____.zip anywhere. I've followed two different guides one was the official guide on cyanogenmod.com and one here on XDA http://forum.xda-developers.com/showthread.php?t=2047981 (i had to do a little bit of tweaking of the local_manifest as i'm not trying to build for the nexus i'm trying for the Galaxy S3 for sprint.
So my problem is after doing these two tutorials i still get the same result where i get ALLLL of these files...but that .zip file completely eludes me.
Also i get this when i start doing brunch d2spr
Code:
find: `../../vendor/unbundled_google/libs/gcm/gcm-client/src': No such file or directory
find: `../../vendor/unbundled_google/libs/gcm/gcm-server/src': No such file or directory
find: `../../vendor/unbundled_google/libs/gcm/gcm-client/src': No such file or directory
find: `../../vendor/unbundled_google/libs/gcm/gcm-server/src': No such file or directory
find: `src': No such file or directory
I feel like i'm missing something...
EDIT & SOLUTION!!!: So after scouring for a crazy amount of time and working on this for...a couple of weeks now i finally found out the problem! I was missing some XML files!!! So in terminal install the following...
Code:
sudo apt-get install xsltproc
sudo apt-get install libxml2-utils
Run those two and it should install the missing XML files needed. Though the CM guide i had xsltproc but for whatever reason on some guides they didn't have libxml2-utils listed in the code for the big installation....BIG THANK YOU to this thread http://forum.xda-developers.com/showpost.php?p=36734057&postcount=807 and fattire.
NOTE: Don't worry you'll still get those cannot find directory and src errors but it was perfectly normal and it built everything perfectly. Another thing i did was deleted my samsung folders and started fresh by getting the prebuilts and such. So i did that as well..
I HOPE THIS HELPS!!!
s0nlxaftrsh0ck said:
Hey everyone, I'm very new to the android dev scene and i've been wracking my brains the past few months trying to figure out why after I issue the command brunch d2spr my $OUT folder doesn't have a CM____.zip anywhere. I've followed two different guides one was the official guide on cyanogenmod.com and one here on XDA http://forum.xda-developers.com/showthread.php?t=2047981 (i had to do a little bit of tweaking of the local_manifest as i'm not trying to build for the nexus i'm trying for the Galaxy S3 for sprint.
So my problem is after doing these two tutorials i still get the same result where i get ALLLL of these files...but that .zip file completely eludes me.
Also i get this when i start doing brunch d2spr
Code:
find: `../../vendor/unbundled_google/libs/gcm/gcm-client/src': No such file or directory
find: `../../vendor/unbundled_google/libs/gcm/gcm-server/src': No such file or directory
find: `../../vendor/unbundled_google/libs/gcm/gcm-client/src': No such file or directory
find: `../../vendor/unbundled_google/libs/gcm/gcm-server/src': No such file or directory
find: `src': No such file or directory
I feel like i'm missing something...
Click to expand...
Click to collapse
This can be fixed by copying the android-sdk/extras gcm stuff into your vendor tree.
I'm in the exact same position. Brunch doesn't give any zip files, so i tried lunch, breakfast, mka bacon, make otapackage but still no results
i'm trying to get answers on the cyanogenmod irc canal right now, but it seems like it's a very quiet place
dlumberg said:
This can be fixed by copying the android-sdk/extras gcm stuff into your vendor tree.
Click to expand...
Click to collapse
Thank you! I shall give that a shot!
I'm in the exact same position. Brunch doesn't give any zip files, so i tried lunch, breakfast, mka bacon, make otapackage but still no results
i'm trying to get answers on the cyanogenmod irc canal right now, but it seems like it's a very quiet place
Click to expand...
Click to collapse
Yeah i've tried my hand there too. PlayfulGod was very helpful at one point but i get no responses from anyone =( it sucks. But i feel your pain on that...if i do come across anything interesting i will let you know and update this thread or even the original post.
s0nlxaftrsh0ck said:
Yeah i've tried my hand there too. PlayfulGod was very helpful at one point but i get no responses from anyone =( it sucks. But i feel your pain on that...if i do come across anything interesting i will let you know and update this thread or even the original post.
Click to expand...
Click to collapse
My problems were solved using make clobber and deleting roomservice.xml from the local_manifest folder
edit: also i still get the errors mentionned on your first post but it doesn't seem to affect my builds
5boro said:
My problems were solved using make clobber and deleting roomservice.xml from the local_manifest folder
edit: also i still get the errors mentionned on your first post but it doesn't seem to affect my builds
Click to expand...
Click to collapse
Oddly enough i have zilch in my local_manifest folder...also my manifest.xml file appears to have a lock on it and ubuntu says the link to it is broken. Opening it up in gedit and it's a compeltely blank file.
EDIT: I ran a repo init one more time and did a repo sync to get my manifest.xml back
Code:
repo init -u git://github.com/CyanogenMod/android.git -b cm-10.1
i thought repo init to the samsung kernel would actually help me but it didn't seem to...
Code:
repo init -u [URL]https://github.com/CyanogenMod/android_kernel_samsung_d2[/URL]
I've seen in a few places that getting the correct kernel going helps out a lot. Or running it...im not entirely sure where to put that link...maybe the local_manifest.xml or the manifest.xml itself?
I apologize for the double post i just wanted to bump this up. For anyone else having this problem. I'll be posting the solution in the original post.