Jump to content

Basic CM61-Pulse0.40 ROM installation with modifications


Guest twrock
 Share

Recommended Posts

If you could post a patch with the modifications you have done, I would really appreciate it!

I'm at work now. Sources of camera app are at home.

In short by memory:

1) Download this latest (for 2.2) source snapshot - http://android.git.kernel.org/?p=platform/...32dbf81b;sf=tgz

2) Find in Camera.java function named restartPreview() (this function called locally after each onPictureTaken event)

	private void restartPreview() {

		try {

			startPreview();

		} catch (CameraHardwareException e) {

			showCameraErrorAndFinish();

			return;

		}

	}
And add two lines before startPreview();
	private void restartPreview() {

		try {

			stopPreview();

			closeCamera();

			startPreview();

		} catch (CameraHardwareException e) {

			showCameraErrorAndFinish();

			return;

		}

	}

Remark: Function startPreview() works correctly after closeCamera() because in startPreview() camera object reopens if it not exist

3) And also try to find and comment all code which controls zoom function of camera and shows zoom HUD icon.

Because our camera have no zoom, and camera app forceclosed after touching this icon.

4) Compile and enjoy)

Thank for you attention.

Sorry for bad english)

Edited by anegin
Link to comment
Share on other sites

Is anybody knows where we can get the sources of libanroid_runtime.so?

In official 2.1 it contains undocumented class (android.hardware.CameraSlave) necessary to work with frontal camera.

But in our cyanogen port it doesn't.

Link to comment
Share on other sites

If you could post a patch with the modifications you have done, I would really appreciate it!

BTW, congratulations for (kind of) fixing the most important bug in the CM6 ROM! Thanks a lot! :)

twrock, I'm going to upload here a ROM based on yours with slight tweaks and with this camera apk included. If you want, you can release that as the next version of your rom. I'll also post in detail all the modifications I have done (with f0.3.2 as a base). Also, I have an idea for the gapps. Why don't we put the "fixed", non-updateable gapps (like Vending, Google[...]SyncAdapter, GenieWidget, VoiceSearch) on /system and all the other market-updateable gapps (YouTube, RomManager, Twitter, GMail, ...) on /data? I think that would be ideal as the apps would be more easily updated! Probably, in companion with the ROM I'm going to upload, I'll also upload a version of your gapps arranged like this (with all apps updated, of course).

I think all of those ideas are great! I think you should do it, definitely.

I'm not sure how to decide which Gapps are "fixed", because that seems to be a moving target. For instance, Vending seems to change a lot, even though it is probably the most important gapp (allowing us to get the rest of them and other apps). I'm sure you also understand there is no point leaving wasted space in /system. The "average user" isn't going to push apps there, so the space just sits there unused. So I suggest that you use the new version of the UK update as your "standard" and make the complete rom (base, a2sd, gapps, whatever) fit in that partition scheme. That will give everyone who first updates to that rom the largest data space to work with after installation. That way, if they choose not to use DT Apps2SD, then they have the most space to work with still. (And that way, I can also keep the old UK partitions and have enough space to put Chinese IME in /system.) ;)

Now having said all that, please make it a new rom and start a new thread. I'm increasingly not interested in continuing work on this rom further myself, and this thread is already becoming unwieldy. I'd really like to just leave this rom fall behind and have you start a new one. You can give your new rom a new name too, something better than what I did (yeah, I wasn't very creative there, was I?). Another thing you might want to do is to integrate DT Apps2SD. I was too lazy and also a bit worried I'd mess something up. But then again, maybe not. Some people might really like not having to use DT, preferring the built-in or links2sd. (Granted, I haven't figured out why someone would prefer those options, but to each his own.) :(

So, what do you think? Are you willing to do it that way?

Edit: On the other hand........

With these two additions from anegin, I'm very tempted to make "just one more" update before I quit. :( Unless of course your rom is ready to go and includes anegin's additions already. In that case, I'll probably just use your rom as a base to create the next version of my TWeak rom (Chinese mod). Please let me know what you are thinking.

Edited by twrock
Link to comment
Share on other sites

Patch to Camera system app for CyanogenMod.

It allows you to:

- capture multiple photos at 3Mpx resolution without forceclose.

- record video without repeated autofocus

Built from last Froyo AOSP source + some fixes.

Download (flash from recovery): Camera_cm6_patched_anegin.zip

UPD: error in update-script fixed

Great! I'll update the first post with a link. And if I somehow decide to continue development, I'll integrate this into future versions.

Thanks for sharing this.

Edited by twrock
Link to comment
Share on other sites

Is anybody knows where we can get the sources of libanroid_runtime.so?

In official 2.1 it contains undocumented class (android.hardware.CameraSlave) necessary to work with frontal camera.

But in our cyanogen port it doesn't.

Is this all thats missing to get front camera working? Can you use official 2.1 version instead?

Link to comment
Share on other sites

I think all of those ideas are great! I think you should do it, definitely.

I'm not sure how to decide which Gapps are "fixed", because that seems to be a moving target. For instance, Vending seems to change a lot, even though it is probably the most important gapp (allowing us to get the rest of them and other apps). I'm sure you also understand there is no point leaving wasted space in /system. The "average user" isn't going to push apps there, so the space just sits there unused. So I suggest that you use the new version of the UK update as your "standard" and make the complete rom (base, a2sd, gapps, whatever) fit in that partition scheme. That will give everyone who first updates to that rom the largest data space to work with after installation. That way, if they choose not to use DT Apps2SD, then they have the most space to work with still. (And that way, I can also keep the old UK partitions and have enough space to put Chinese IME in /system.) ;)

Now having said all that, please make it a new rom and start a new thread. I'm increasingly not interested in continuing work on this rom further myself, and this thread is already becoming unwieldy. I'd really like to just leave this rom fall behind and have you start a new one. You can give your new rom a new name too, something better than what I did (yeah, I wasn't very creative there, was I?). Another thing you might want to do is to integrate DT Apps2SD. I was too lazy and also a bit worried I'd mess something up. But then again, maybe not. Some people might really like not having to use DT, preferring the built-in or links2sd. (Granted, I haven't figured out why someone would prefer those options, but to each his own.) :(

So, what do you think? Are you willing to do it that way?

Edit: On the other hand........

With these two additions from anegin, I'm very tempted to make "just one more" update before I quit. :( Unless of course your rom is ready to go and includes anegin's additions already. In that case, I'll probably just use your rom as a base to create the next version of my TWeak rom (Chinese mod). Please let me know what you are thinking.

Yes, I am willing to do it that way...

For the gapps, I will see which can currently be installed/updated from the market. Those will be on /data, the rest on /system (with gapps-tiny as a base, if anyone wants Twitter/Facebook/etc... install it from the market, I say ;)). But I believe Vending has to stay on /system, regardless of its update frequency (btw, where do you get your Vending apks?). And of course, I'll make my effort to leave no space wasted on /system! Can you give me the partition layout for that update please? (90MB system? - kind of tight...).

When I have the ROM ready (by today, probably) I will post it on a separate thread, like you suggest. I am terrible at giving names at stuff :), but I'll try. I could probably integrate DT A2SD, but, like you say, there are many people that don't want (for some reason) to use DT. So I think it's better to leave it as a separate flashable zip.

Link to comment
Share on other sites

Yes, I am willing to do it that way...

For the gapps, I will see which can currently be installed/updated from the market. Those will be on /data, the rest on /system (with gapps-tiny as a base, if anyone wants Twitter/Facebook/etc... install it from the market, I say :(). But I believe Vending has to stay on /system, regardless of its update frequency (btw, where do you get your Vending apks?). And of course, I'll make my effort to leave no space wasted on /system! Can you give me the partition layout for that update please? (90MB system? - kind of tight...).

When I have the ROM ready (by today, probably) I will post it on a separate thread, like you suggest. I am terrible at giving names at stuff :(, but I'll try. I could probably integrate DT A2SD, but, like you say, there are many people that don't want (for some reason) to use DT. So I think it's better to leave it as a separate flashable zip.

APT ROM? :)

Link to comment
Share on other sites

BEST NAME EVER :(

Seriously though, it's probably going to be CyanogenMod+ (Plus).

To similar to the other ROMS ... CM Power+ ROM

Link to comment
Share on other sites

BEST NAME EVER :(

Seriously though, it's probably going to be CyanogenMod+ (Plus).

I don't think you can use "apt". The linux users will get all confused, mixing that up with their system's package manager. :(

Link to comment
Share on other sites

I don't like DTA2SD because of the name :( Seriously, DarkTremor, that's such a childish name.

I don't like your post because you stuck your tongue out. :) That is such childish behavior. ;) ;) :D :(

Link to comment
Share on other sites

Yes, I am willing to do it that way...

For the gapps, I will see which can currently be installed/updated from the market. Those will be on /data, the rest on /system (with gapps-tiny as a base, if anyone wants Twitter/Facebook/etc... install it from the market, I say :(). But I believe Vending has to stay on /system, regardless of its update frequency (btw, where do you get your Vending apks?). And of course, I'll make my effort to leave no space wasted on /system! Can you give me the partition layout for that update please? (90MB system? - kind of tight...).

When I have the ROM ready (by today, probably) I will post it on a separate thread, like you suggest. I am terrible at giving names at stuff :(, but I'll try. I could probably integrate DT A2SD, but, like you say, there are many people that don't want (for some reason) to use DT. So I think it's better to leave it as a separate flashable zip.

Ok, back to being serious.

I get updated apps from two sources. I copy them out of /data/app using RootExplorer or I get them from a backup using AppMonster. I get Vending from AppMonster.

As for the partition layout, I'm not much help right now. I know that in a previous version of this rom I had it really close to full. From that point on, I just made sure I always pulled out something slightly larger than what I put in. So by now, I'm not sure how close to full it really is. You can be at least comfortable in combining the total size of what is currently in /system in both the rom and gapps. But that assumes you are planning on telling people to update to the old UK rom. I really am of no help when it comes to the new UK rom partition size. Sorry.

I do know that one of the ways to check it after you are done is to fully install the rom as you intend, then use RootExplorer to try to copy some small file into system. You'll find out soon enough if it is already overfull. The problem is that CW Recovery lets you overfill it without any warning, and you don't know it happened until something goes wrong. Usually that "something" is Vending, probably because it is a gapp (installed last), is large, and is late in the alphabet. (But all that is just guessing on my part.)

Have fun. I really hope things go smoothly for you.

Incidentally, if you are using the rom kitchen to mess with your boot.img, there is a bug in at least version 129 that affects the lowmem settings. As long as you are aware of that, you can just avoid using that part of the script. But if you do, you need to go back in and manually edit those settings in the ramdisk. If that doesn't make sense, I can try to explain it further, but I'm guessing you aren't using that method to edit your boot.img anyway.

Link to comment
Share on other sites

Ok, back to being serious.

I get updated apps from two sources. I copy them out of /data/app using RootExplorer or I get them from a backup using AppMonster. I get Vending from AppMonster.

As for the partition layout, I'm not much help right now. I know that in a previous version of this rom I had it really close to full. From that point on, I just made sure I always pulled out something slightly larger than what I put in. So by now, I'm not sure how close to full it really is. You can be at least comfortable in combining the total size of what is currently in /system in both the rom and gapps. But that assumes you are planning on telling people to update to the old UK rom. I really am of no help when it comes to the new UK rom partition size. Sorry.

I do know that one of the ways to check it after you are done is to fully install the rom as you intend, then use RootExplorer to try to copy some small file into system. You'll find out soon enough if it is already overfull. The problem is that CW Recovery lets you overfill it without any warning, and you don't know it happened until something goes wrong. Usually that "something" is Vending, probably because it is a gapp (installed last), is large, and is late in the alphabet. (But all that is just guessing on my part.)

Have fun. I really hope things go smoothly for you.

Incidentally, if you are using the rom kitchen to mess with your boot.img, there is a bug in at least version 129 that affects the lowmem settings. As long as you are aware of that, you can just avoid using that part of the script. But if you do, you need to go back in and manually edit those settings in the ramdisk. If that doesn't make sense, I can try to explain it further, but I'm guessing you aren't using that method to edit your boot.img anyway.

I don't automatically get Vending's updates, that's why I asked, I thought I wasn't the only one... I'll use the one you have in your gapps.

The problem is that I have a U8230, so I have about 180MB of /system, but I obviously want to make the ROM compatible with you U8220 users.

I now have my rom ready. In the next few minutes I'll create a new thread.

And I edit my boot.img by hand :(

Link to comment
Share on other sites

Is this all thats missing to get front camera working? Can you use official 2.1 version instead?

I think that this undocumented class (in libanroid_runtime.so) is all we need to get front camera working.

This class is specifically and developed by huawei especially for our device.

Other devices with front camera have their different classes.

And as far as I know it is only one app can use a front camera of our device for videocalls - imsdroid.

libandroid_runtime.so contains more important parts of android system than this one class, and official 2.1 version is not compatible with CM.

That's why I look for sources or methods to how to get this lib.

Edited by anegin
Link to comment
Share on other sites

Anyone know if it is it theoretically possible to emulate or have some backward compatibility option with 2.1 system software in 2.2/2.3. So for example we could use front camera 2.1 drivers by emulating 2.1 system in 2.2. Or how about dual boot?

Link to comment
Share on other sites

Video problem. When playing videos, back button doesn't work. Any ideas?

Never mind. Used different player.

Good work thou.

Edited by didije
Link to comment
Share on other sites

Sorry, this is Chinease ROM v.0.3.3

But for Basic ROM can wait update soon?

Sorry for my English.

Ok. I had another request for this update without Chinese. I will build it some time today and upload it.

But actually, there is very little difference in 0.3.3 from 0.3.2. If you flash the Camera fix and then install all the other apps I list in the Changelog (in the TWeak thread). You will almost have exactly the same thing. I believe the only difference will be the Gmail update in /system (and maybe the Market app is updated?). The change in build.prop is inconsequential.

Did you try the new rom Antonio has built? I haven't used it, but it is supposed to be a "next generation" of the CM6.1 mod. Maybe you will prefer it. Either way, I will update this rom at least one more time. :D

Link to comment
Share on other sites

Did you try the new rom Antonio has built? I haven't used it, but it is supposed to be a "next generation" of the CM6.1 mod. Maybe you will prefer it. Either way, I will update this rom at least one more time. :D

Yes, I try this ROM, but I don't like it. Your ROM is most better for me.

And one moment. Can you make bootanimation as in Chinease? (initial anroid logo)

You're awesome, twrock! :(

Link to comment
Share on other sites

I'm at work now. Sources of camera app are at home.

In short by memory:

1) Download this latest (for 2.2) source snapshot - http://android.git.kernel.org/?p=platform/...32dbf81b;sf=tgz

2) Find in Camera.java function named restartPreview() (this function called locally after each onPictureTaken event)

	private void restartPreview() {

		try {

			startPreview();

		} catch (CameraHardwareException e) {

			showCameraErrorAndFinish();

			return;

		}

	}
And add two lines before startPreview();
	private void restartPreview() {

		try {

			stopPreview();

			closeCamera();

			startPreview();

		} catch (CameraHardwareException e) {

			showCameraErrorAndFinish();

			return;

		}

	}

Remark: Function startPreview() works correctly after closeCamera() because in startPreview() camera object reopens if it not exist

3) And also try to find and comment all code which controls zoom function of camera and shows zoom HUD icon.

Because our camera have no zoom, and camera app forceclosed after touching this icon.

4) Compile and enjoy)

Thank for you attention.

Sorry for bad english)

Would it be possible for you to build the cyanogenmod camera app with this fix? In my opinion the tweaks in this app are really good and you can deactivate the annoying focus sound ;-)

Link to comment
Share on other sites

Yes, I try this ROM, but I don't like it. Your ROM is most better for me.

And one moment. Can you make bootanimation as in Chinease? (initial anroid logo)

You're awesome, twrock! :D

I did build a Chinese Android boot animation. I'll look for it and post it later. But I won't put it in the rom. I'm worried there is not enough space.

The 0.3.3 version will be ready shortly. But I will warn you, I don't intend to keep updating this rom forever! I hope people will move on to another rom.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.