Question for the Gurus - Continuum General

So I have an idea for a ticker mod, but since I have zero programming knowledge I thought I'd see if any of you smart people could help. The stock ticker has the icons for messages, vvm, email, missed calls and im. Trailblazers mod allows us to use the icons to display the apps even if there are no missed messages, calls,etc. I don't use the vvm, email or im, so I'm wondering if it would be possible to change those three to different apps... Like Google Voice, Gmail, and contacts? I wouldn't mind trying myself, but have no idea where to even start looking. Not worried about changing the icons, just what app is launched when pressed. Anyone have any idea if this is possible...or if it's already been done/tried?
Sent from my SCH-I400

roaddog665 said:
So I have an idea for a ticker mod, but since I have zero programming knowledge I thought I'd see if any of you smart people could help. The stock ticker has the icons for messages, vvm, email, missed calls and im. Trailblazers mod allows us to use the icons to display the apps even if there are no missed messages, calls,etc. I don't use the vvm, email or im, so I'm wondering if it would be possible to change those three to different apps... Like Google Voice, Gmail, and contacts? I wouldn't mind trying myself, but have no idea where to even start looking. Not worried about changing the icons, just what app is launched when pressed. Anyone have any idea if this is possible...or if it's already been done/tried?
Sent from my SCH-I400
Click to expand...
Click to collapse
That actually doesn't sound like a bad idea.

trailblazer101 is the ticker guru, if you do want to attempt a ticker mod you can start here: http://forum.xda-developers.com/showpost.php?p=19758250&postcount=1
trailblazer let us in on some of his sources to patch, it has to do with ticker. then you can take apart his currrent mod and see that there are already actions for those icons. mow it will go deep so decompile the apks and look around, they will start to make some sense.
he may just tell you/us where the mods are once you can grasp what you will be doin

roaddog665 said:
So I have an idea for a ticker mod, but since I have zero programming knowledge I thought I'd see if any of you smart people could help. The stock ticker has the icons for messages, vvm, email, missed calls and im. Trailblazers mod allows us to use the icons to display the apps even if there are no missed messages, calls,etc. I don't use the vvm, email or im, so I'm wondering if it would be possible to change those three to different apps... Like Google Voice, Gmail, and contacts? I wouldn't mind trying myself, but have no idea where to even start looking. Not worried about changing the icons, just what app is launched when pressed. Anyone have any idea if this is possible...or if it's already been done/tried?
Sent from my SCH-I400
Click to expand...
Click to collapse
It would be really, really easy... hahahaha... Voice Mail already sends you to Google Voice in my Gingerbread Mods, so we are already a fifth done, haha... But to be honest with you, why don't you just set the shortcuts you want in the quick launch screen, now that is is customizable and all (and soon will be rotation aware also )
But yea, it wouldn't be hard at all... Changing from VVM to Google Voice was a matter of changing two lines of code.... Changing the others will be a little more involved, because you have to delete a lot of previous code (there's some code that goes into launching the email screen, other than just calling the program... It has to get/send the ID for the email, etc etc etc... same thing for messaging...) But that's just a matter of deleting code...

trailblazer101 said:
It would be really, really easy... hahahaha... Voice Mail already sends you to Google Voice in my Gingerbread Mods, so we are already a fifth done, haha... But to be honest with you, why don't you just set the shortcuts you want in the quick launch screen, now that is is customizable and all (and soon will be rotation aware also )
But yea, it wouldn't be hard at all... Changing from VVM to Google Voice was a matter of changing two lines of code.... Changing the others will be a little more involved, because you have to delete a lot of previous code (there's some code that goes into launching the email screen, other than just calling the program... It has to get/send the ID for the email, etc etc etc... same thing for messaging...) But that's just a matter of deleting code...
Click to expand...
Click to collapse
Lol... Didn't even know about the Google Voice...see, your way ahead of me!
And I've already set the others, just figured that since these are there not being used might as well try to make them useful. My problem is that all this code is exactly that to me... Code! As in super secret, undecipherable code! Lol. Now, if somewhere it says "push this icon to launch app x" and I can change x to whatever app I need, I could probably figure it out... Maybe I'm looking at the Services.jar smali now, and it's giving me a headache. Haha.
Sent from my SCH-I400

Alright, here's if I was you how to start out... First, figure out where the actions you want to change are coming from... You can change something in the area that you want changed (like push a button or anything like that), then look in logcat/DDMS to see where it is coming from! That will lead you to the smali file..... In your case, because you want to modify something in the Ticker Missed Notification View screen, you can use a little bit of luck and assume its coming from TickerMissedNotificationView.smali within the services file, haha... Now, you limited it down a lot... From here, you need to narrow it down more... Think about what exactly is happening; so, you are clicking a button, and it does some action... Well, why don't we find the button first, then that can lead us elsewhere... *HINT: A good place to start looking for things, no matter where you are, is within onFinishInflate()V*... So, let's look for something that looks like the button... First thing I see is: "mNewEmailImage:Landroid/widget/ImageButton;." alright, so let's follow that, and see where it goes! Later on within that function, you see something along the lines of:
Code:
iget-object v0, p0, Lcom/android/server/ticker/TickerMissNotificationView;->mNewEmailImage:Landroid/widget/ImageButton;
new-instance v1, Lcom/android/server/ticker/TickerMissNotificationView$4;
invoke-direct {v1, p0}, Lcom/android/server/ticker/TickerMissNotificationView$4;-><init>(Lcom/android/server/ticker/TickerMissNotificationView;)V
invoke-virtual {v0, v1}, Landroid/widget/ImageButton;->setOnClickListener(Landroid/view/View$OnClickListener;)V
We are getting warmer! We know that this is right, because it has "OnClickListener"... Its just common sense that this code does whatever is within TickerMissNotificationView$4 when clicked! Now, open up the specified file, TickerMissNotificationView$4, and see what that does!
This is where it gets tricky.. You don't see anything that says: HEY, I JUST GOT CLICKED, SO LET'S DO THIS!!!"
Instead, you often see code that sends a "message" to somewhere else, just for funsies But, let's continue... Since we don't see anything within that file itself about opening the email screen (HINT: you know a program is being opened when you see: com.blah.blah.SOMETHINGEMAIL"), find what the message is, and where it is being sent to!
So, at the end of the file, you see:
Code:
const/16 v1, 0x69
iput v1, v0, Landroid/os/Message;->arg1:I
.line 220
iget-object v1, p0, Lcom/android/server/ticker/TickerMissNotificationView$4;->this$0:Lcom/android/server/ticker/TickerMissNotificationView;
iget-object v1, v1, Lcom/android/server/ticker/TickerMissNotificationView;->mHandler:Lcom/android/server/ticker/TickerMissNotificationView$H;
invoke-virtual {v1, v0}, Lcom/android/server/ticker/TickerMissNotificationView$H;->sendMessage(Landroid/os/Message;)Z
This looks promising! So now let's open up TickerMissNotificationView$H, and try and do a search for const/16 v1, 0x69... Oh uh, no results! But you do see that this is the right place, because you see that it is launching other apps from here! From here, you can do two things... A) you can just search through the file, find code that looks like it is opening the email program, and move to the start of the section (right after pswitch)... or my favorite, b) you know that each section of this file is doing different things, and you see that they are divied up by "pswitch"s... so, let's find out how it knows where to go! After looking around, you will find your answer at the bottom: ".packed-switch 0x65"... This code starts with 65, and goes up to whatever the last message is so, for example: 65 would be pswitch_0, 66 would be pswitch_1, etc etc... So, by using this method, we can go exactly where we need to go! find where pswitch_4 happens again, and that's your start... Now, select all the code within the two pswitchs, copy it into another file, then delete it... you should now have "pswitch_4, then right after, pswitch_5"...
Here's the part that makes you always feel guilty, cheat! Find code that is close to what you want, and make it your own So, look through the other "pswitch"s and find which one has code that is ONLY launching an application, not anything else... CLUES: look for the indicator I gave you before: "com.blah.blah.whatever"... So for this case, you find something like this:
Code:
new-instance v8, Landroid/content/Intent;
invoke-direct {v8}, Landroid/content/Intent;-><init>()V
.line 547
.restart local v8 #intent:Landroid/content/Intent;
const/high16 v18, 0x1480
move-object v0, v8
move/from16 v1, v18
invoke-virtual {v0, v1}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;
.line 548
const-string v18, "com.android.mms"
const-string v19, "com.android.mms.ui.ConversationList"
move-object v0, v8
move-object/from16 v1, v18
move-object/from16 v2, v19
invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 549
move-object/from16 v0, p0
iget-object v0, v0, Lcom/android/server/ticker/TickerMissNotificationView$H;->this$0:Lcom/android/server/ticker/TickerMissNotificationView;
move-object/from16 v18, v0
move-object/from16 v0, v18
iget-object v0, v0, Lcom/android/server/ticker/TickerMissNotificationView;->mTickerService:Lcom/android/server/ticker/TickerTapeService;
move-object/from16 v18, v0
move-object/from16 v0, p0
iget-object v0, v0, Lcom/android/server/ticker/TickerMissNotificationView$H;->this$0:Lcom/android/server/ticker/TickerMissNotificationView;
move-object/from16 v19, v0
invoke-virtual/range {v19 .. v19}, Lcom/android/server/ticker/TickerMissNotificationView;->getContext()Landroid/content/Context;
move-result-object v19
move-object/from16 v0, v18
move-object/from16 v1, v19
move-object v2, v8
invoke-virtual {v0, v1, v2}, Lcom/android/server/ticker/TickerTapeService;->launchActivity(Landroid/content/Context;Landroid/content/Intent;)V
goto/16 :goto_0
.line 555
.end local v8 #intent:Landroid/content/Intent;
This is short and sweet, so let's use this!
copy and paste that code into the emptiness, and pray Now, i would compile, and make sure that the button you are trying to modify does the same thing that the button you copied from does... If yes, yay!
Now you have to find what is the "call" that is being done when you launch the application of your choice... So, go into logcat/DDMS, again, and open up the program you want to set as your button... look for the hint I gave you before; you should see code code code, and within some of that code: "com.1.2" ".1.2.3"
For example, this is what you see when you open up facebook:
Code:
starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.facebook.katana/.LoginActivity }
So, replace the
Code:
const-string v18, "com.android.mms"
const-string v19, "com.android.mms.ui.ConversationList"
with
Code:
const-string v18, "com.facebook.katana"
const-string v19, "com.facebook.katana.LoginActivity"
You should now be done

awesome! we need a super or thanks+ button for you!
ill be moving this weekend and into next week, finally after 9 mos got our house! something always comes out when im busy thats life but to say the least i will be back in action soon.
and this method will help with customization for individual users, like me with no real need for phone, mms, ect since its more of a mini game device. btw minecraft pe 040 and FFIII are time killers! love them.

Ok, I've made my changes and compiled the new Services.jar. The new one only has a classes.dex file, the original pulled from the phone has a classes.dex file and a META-INF folder. Should I replace the classes.dex file in the original with my modified new one and then push it back to the phone, or am I thinking wrong.
Sent from my SCH-I400 using xda app-developers app

roaddog665 said:
Ok, I've made my changes and compiled the new Services.jar. The new one only has a classes.dex file, the original pulled from the phone has a classes.dex file and a META-INF folder. Should I replace the classes.dex file in the original with my modified new one and then push it back to the phone, or am I thinking wrong.
Sent from my SCH-I400 using xda app-developers app
Click to expand...
Click to collapse
Yes, that should work! Good thinking Now, don't be worried if it force closes, trust me, there's a good chance haha... You could also use my program, which would do that for you automatically... (choose 11, y, n)...
EDIT: Like right now, I'm bored... I just finished adding rotation to the quick launch and the missed notification screen, so I'm working on something a little more.. adventurous I'm trying to see if I can make it so if you hit the grip pad three times in a row fast, it'll automatically skip to the next/previous song... But i keep getting FCs, hahaha...

Good luck with that! Lol
I'm just happy that I was looking in the right place... Even if I didn't know what I was looking for! Well, getting ready to push it back to the phone... Fingers crossed
Sent from my SCH-I400 using xda app-developers app

roaddog665 said:
Good luck with that! Lol
I'm just happy that I was looking in the right place... Even if I didn't know what I was looking for! Well, getting ready to push it back to the phone... Fingers crossed
Sent from my SCH-I400 using xda app-developers app
Click to expand...
Click to collapse
If it doesn't work, you are moving into the fun debugging stage of things This page will become your life:
http://webcache.googleusercontent.c...alvik-bytecode.html+&cd=1&hl=en&ct=clnk&gl=us
That's because DDMS/Logcat doesn't give you nice outputs sometimes when something goes wrong... It does give you the bytecode equivalent of the function that is the problem child, though! I'll show you how to do that if it doesn't work
oh, and I managed to get it work, haha... Now you can go to the previous/next song by tapping the grip sensor on the left/right side accordingly

You, sir, are a scholar and a gentleman!! Works perfectly so far! Did get a little worried at first, when I pushed the jar back nothing really happened... Until I pushed the email icon! Then it did this really cool crash where the screen goes black and it plays my boot sound. Pulled battery and restarted, and it sat on the boot ani forever... Like after a delvik wipe. Was getting ready to pull the battery again, but it came up and is working! Thanks for the education! I'm learning a little bit at a time!
And that's an awesome idea with the grip sensor and the music player! Glad to hear you got it going!
Sent from my SCH-I400 using xda app-developers app

Related

continous autofocus problem

I wish to turn off continous autofocus when i take videos, the only thing this continously does is - it continoutly ruin my videos with excessive amout of blur that makes it impossible to use in many cases.
Interior videos, even outside it tends to totally mess up any attempts to make a decent video.
I saw some custom roms have a option to disable it in options, but i would like to keep the original rom - Root it and change whatever magic inaccesible settings i need to change (like the silent camera shutter ro.camera.sound.forced=0 setting).
I saw Potatoman's camera.apk mod but that does not have any options regarding video autofocus.
totally useless
i am with you on that problem, i don't even film anymore. all movies with moving objects or even if i move my camera are useless. i don't know why they made it this way. hope for a quick and reliable solution.
Its annoying as hell. I also dont bother recording! . Sad really.
Sent from my porn shoot using GT-I9100.
+1 for this problem.
I saw some custom roms have a option to disable it in options
Click to expand...
Click to collapse
Can you provide a link to a such rom?
It is miui for galaxy s2, i saw this in action and it has a option to disable auto-bluring of videos but i dislike the rest of gui. Plus i lose stuff like usb otg if i put that rom on so i'm searching for another solution:
http://forum.xda-developers.com/showthread.php?t=1130951
No luck Tried the camera apk from miui and it doesn't work on my kf3 stock rom.
I think our best hope is that Potatoman fixes this, i cannot reply in his topic (10 posts limit), but i sent him a private message about this and i hope he reads it.
I looked into disassembly tools for apk files and so far had no success taking apart the camera app myself, otherwise if i had a working way to disassemble and reassemble it i would do this myself (baksmali fails on me with a "Could not find the main class: R:\Internet\baksmali-1.2.7.jar. Program will exit." message).
JernejL said:
I looked into disassembly tools for apk files and so far had no success taking apart the camera app myself, otherwise if i had a working way to disassemble and reassemble it i would do this myself (baksmali fails on me with a "Could not find the main class: R:\Internet\baksmali-1.2.7.jar. Program will exit." message).
Click to expand...
Click to collapse
You should extract the classes.dex file from the Camera.apk (using WinRar) and put it to the same folder with baksmali-1.2.7.jar.
I managed to do that, and found the magic command line parameters for running it, i have the smali files but this looks like one big mess.
I found startTimer in onVideoRecordingStart
and .method public handleMessage(Landroid/os/MessageV in camera main handler, this contains text such as "AF_WAIT_TIMER_EXPIRED" and calls to restartTouchAutoFocus, it could be the timer which continously calls autofocus, but it's not in camcorder classes but the camera class - i am not sure how the classes are interconnected and if this is really what i was looking for, i wish potatoman can help better with this.
I found something else, it looks like continous focus is a camera property - focusing mode:
.method public static getFocusModeString(I)Ljava/lang/String;
it has modes: "auto, fixed, macro, facedetect, continuous-video" and is saved to preferences as "pref_camera_focus_key" (this is my guess based on what i am seeing)
It seems that android api confirms this:
developer.android.com/reference/android/hardware/Camera.Parameters.html#FOCUS_MODE_CONTINUOUS_VIDEO
called with:
developer.android.com/reference/android/hardware/Camera.Parameters.html#setFocusMode%28java.lang.String%29
camcorderengine:
.method public doPrepareVideoRecordingAsync()V
const-string v3, "continuous_af"
this goes into..
const-string v1, "continuous_af"
const/4 v1, 0x0
invoke-virtual {v0, v3, v1}, Lcom/sec/android/seccamera/SecCamera$Parameters;->set(Ljava/lang/String;I)V
useful info here too:
pastebin.com/V94HYCnk
Code:
// Parse continuous autofoucs into a format the driver understands
conAf = pars.get("enable-caf");
if (conAf != 0 && strcmp(conAf, "on") == 0) {
mContinuousAf = true;
}
else {
mContinuousAf = false;
}
pars.set("continuous_af", mContinuousAf ? 1 : 0);
I hope this research opens up the possibility that potatoman fixes this for us, i can barely read this .smali assembly and i'm afraid i'll break everything if i change anything.
note: i had to cripple all the http links because i have too few posts to link to things externally.. :/
Hey guys, just a heads up that I'm working on v2 of my mod now, so while I'm doing that I'll take a look at this too. I don't usually film video though, so just to be clear, do you guys want it to just stop adjusting the focus entirely, or adjust the focus faster so that it isnt blurry for so long (since atm it takes like 5s before refocusing.) Personally I think the best solution would be to refocus on tapping the screen like the camera does, but I'm not sure if that's possible during capture, so I'd have to look into it.
Please post telling me which, so I know what I'm trying to implement here. I don't want to make it worse!
Refocus when tapping the screen will be the best way i think...
Sent from my GT-I9100 using XDA App
Based on the code and documentation that i saw, it's not even possible to adjust the focusing speed.
I would prefer that any automatic focusing is simply disabled during video recording / camcorder mode.
If tap to focus works can be done that would be brilliant, but no automatic adjustments as this ruined every video i took so far.
The phone simply starts refocusing / enters blur mode for no reason while the picture is already totally crisp and then ruins 3-5 seconds of video with blur while it tries to find "focus".
we need touch to focus
is the best solution
today i read online that choosing for a lower resolution then the full had filming wil fix the problem, i havent got any time yet to test it ........
Tap2Focus would be awesome! BUT simple disabling continuous af would be enough for start
I wish the operation is as following:
1, The focus start and lock when I touch the Record icon.
2, The focus is disable and start to record when I release my finger from the Record icon
mrky said:
today i read online that choosing for a lower resolution then the full had filming wil fix the problem, i havent got any time yet to test it ........
Click to expand...
Click to collapse
I tried this - one of first things i tried, it doesn't really help at all in my case (tested this outside in a clear well sun lit scene)
stev2010 said:
I wish the operation is as following:
1, The focus start and lock when I touch the Record icon.
2, The focus is disable and start to record when I release my finger from the Record icon
Click to expand...
Click to collapse
+1 Yes please!
But I would settle for ANYTHING to disable auto-focus because it make videos totally useless.
I actually have no problem with autofocus itself... but my issue is that auto focus does not work at ALL on any resolution lower than 1080... Anyone else have this issue?

[ROM] cyano + stock

First i'd like to say thanks (sorry but the list will not be complete)
nadlabak
Mioze7ae
fjfalcon
Second: I prefer not to start new thread, but this way it will be easier to track the feedbacks.
My point of view is that this thread will be temporary (till feedbacks are collected)
Ok after this introduction let's go...
As i was playing about hdmi stuff, some side effects occur
so some "technical" stuff.
in VideoPlayerMoto.apk is defined hdmi_status (so extdispservice seems to load ok)
then i decide to include MediaGallery.apk, which requires Gestures..so far so good...
btw,MediaGallery crashes (suspect thumbnail cache), but before that it tries hard to make me happy (e.g. turn the media leds on).
Then thing get the wrong direction .
I brute forced the stock framework and discover that in framework-res.apk there is (after smali) com/motorola/hardware/LED.*
so i just renamed it and put it in the system...,which is wrong!!
the right way is to pick the smali and incorporate it in framework/base (which will generate framework-res.apk)
other not so wrong way is from selected smali's to generate small and different framework apk...
but as i said i did it wrong (brute)
Ok now about the feedbacks.
If you have enough space on the system (the linked file is about 5Mb larger than usual) you can test from:
https://github.com/peshovec/playground/downloads
test-feedback-it-please.zip — for testing purposes, please feedback it
removed
it is expected to have all the features from the last test build + media key working almost as in the stock roms
p.s. for the MediaGallery.apk to install you have to add
Code:
<library name="com.motorola.aui"
file="/system/framework/com.motorola.aui.jar"/>
in /system/etc/permissions/platform.xml
should look like that
Code:
snip........
<library name="javax.obex"
file="/system/framework/javax.obex.jar"/>
<library name="com.motorola.aui"
file="/system/framework/com.motorola.aui.jar"/>
</permissions>
(will have to figure out how to include it)
Again do your backup, and if you want to give some of your spare time, install it (after making backup), test it and give feedback please
add info...
Proof Of Concept hdmi out works just played a little with a realhdmi and a hdmi-dvi adapter.... the plan is to implement the stock behavior too (that;s why MediaGalery is introduced)
updates
1. sound dosen't work,because of duplicating frameworks-res, the sound-fix.zip should fix that (apply via updates)
2. sound-fix.zip no more needed, use update-cm-7.1.0-MilestoneXT720-beta-25012012-signed.zip — testing, stock hdmi out need feedbacks
stock hdmi out works (hdmi-dvi to a dvi monitor), please test and share feedback
3. overclock:
Thanks to vlad-it, i took a look at it (honestly, i do not overclock at least for now)
so you have to insert symsearch.ko before overclock.ko
e.g in /system/etc/rootfs//init.mapphone_umts.rc
Code:
#insmod /system/lib/modules/symsearch.ko
#insmod /system/lib/modules/cpufreq_conservative.ko
#insmod /system/lib/modules/cpufreq_interactive.ko
#insmod /system/lib/modules/cpufreq_smartass.ko
#insmod /system/lib/modules/overclock.ko
should be atleast
Code:
insmod /system/lib/modules/symsearch.ko
#insmod /system/lib/modules/cpufreq_conservative.ko
#insmod /system/lib/modules/cpufreq_interactive.ko
#insmod /system/lib/modules/cpufreq_smartass.ko
insmod /system/lib/modules/overclock.ko
as you can see here http://forum.xda-developers.com/showpost.php?p=22305986&postcount=3 all the addresses are discovered
it should be possible to pass directly to insmod overclock all the necessary parameters (the bug in insmod, which takes into the account just the first parameter is marked fixed some time ago) e.g. frequency and voltage
*remark actually the bug was in init,which doesn't pass all parameters to insmod
4. media key (playalka.zip):
If screen is locked, pressing media key will start the music (like the headset button). If you enable in cyanomod settings camera key, you will be able to "blind" use the phone as a player, with headphones which doesn't have button (hence the code name playalka, pronounced плейялка [pleɪjɑlka] )
e.g. media key to start the music
camera key to play/pause
volume up/down holding to go to next/previous song
5. lcd density
I prepare 3 scripts, which will allow to change "Resolution" inside OpenRecovery
https://github.com/CyanogenModXT720...mmit/2bd1b18d666f73a5d0307ad0875f598656fa21b9
you can grab them and put in /sdcard/OpenRecovery/scripts then you can use them.
Please make a backup of Your /system/build.prop before that
6. update-cm-7.1.0-MilestoneXT720-beta-20022012-signed.zip — md5sum b01d4f8aa960932c8b05662e23210d6e
noticeable: more stable MediaGalery , and under-hoods modifications
Please if you are able test hdmi with video and observe if (and where) there is a sound
7. update-cm-7.1.0-MilestoneXT720-beta-09032012-signed.zip — md5: 073153033a4d8e543e4ed65341f71557 underhood optimizations, sync to upstream, picked (not merged yet) features, need testers about hdmi and ui cloning (defaults are safe, has to be enabled in build.prop)
if You are able to test hdmi please:
get the openrecovery scripts from here https://github.com/CyanogenModXT720/openrecovery_xt720/tree/master/OpenRecovery/scripts (namely: the on/off ones)
execute all the on scripts. (they will uncomment some entries in the build.prop
com.ti.have_hdmi=1 this will turn on some hdmi intents in the framework
com.ti.omap_enhancement=1 will turn on additional hdmi calls (mostly to omapmmlibrary)
tv.hdmi.uicloning.enable=1 is self explainable
then observe for bugs
run some usage test and scenarios involving connecting/disconnecting hdmi device during:
playing with still media (e.g. pictures)
playing with video
playing with just music​​will appreciate feedbacks
8. 04.04.2012 (md5sum c684a341721d0b59deb6fa507a70cf8e), memory tester.
Mostly memory related changes. Visible change: jpeg-turbo instead of jpeg
9. update-cm-7.1.0-MilestoneXT720-beta-17042012-signed.zip — md5: f30f35d0c22349a1f34d5aef873dc511 Synced, mms and dockaudio in systemui, cron enabled (default 4am /cdrom/4am.sh), toggable via CMParts
+again try for fine memory tweak
usage of the crond is for example to kill once a daily several application ot once, helping (or at least hope to help) with memory fragmentation
my testing seems good
by default cron will run at 4 am the script in /cdrom/4am.sh
my current one is very simple
#!/system/xbin/ash
pkill "zeam|systemui|phone|gapps|dockau|mediaser"
Click to expand...
Click to collapse
killing the phone, will make the phone to reregister to the network. During this time (few seconds), you can not use it as phone, no incoming/outgoing calls, no messages, no data too although this is just few seconds.. be warned. You can choose what to "restart" once per day observing processes with procrank
Of course that just an example usage You can use it for what you want/need.
I will repeat:
by default crond is enabled
can be disabled in CMParts->application
by default will execute in 4am the script in /cdrom/4am.sh
cron configuration is at /system/etc/cron.d/crontabs/root file​
mms application is now part of the systemui. You will not see it under running applications, if you rely (as me for credit card notifications) on the messaging subsystem, just make sure it will work for you (just big fat warning, problems with the messaging are not expected, e.g. it has to be locked if it is supposed to be)​
https://github.com/peshovec/playground/downloads
I'm very happy to see this new thread.
I do use xt720mod.
Still trying to get 3g to work.
I really like your cm7 builds.
Thanks.
Sent from my XT720 using xda premium
The LED control in MediaGallery seems pretty simple so we should be able to reverse-engineer it. It seems to just call:
invoke-static {*,*}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
in the onPause(), onResume() methods of
com/motorola/gallery/ImageGallery.smali
com/motorola/gallery/ViewImage.smali
com/motorola/gallery/AlbumsNavigator.smali
And it seems to be a simple two arguements, #1 identifying the led, and #2 setting on or off.
These are all the hits for "MotoLED" (except for the implementation of MotoLED itself) in the fully decompiled Korean 2.2:
./framework/services/com/android/server/am/ActivityManagerService.smali: invoke-static {v6, v7}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
./framework/services/com/android/server/am/ActivityManagerService.smali: invoke-static {v6, v7}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
./framework/services/com/android/server/am/ActivityManagerService.smali: invoke-static {v6, v7}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
./framework/android.policy/com/android/internal/policy/impl/PhoneWindowManager.smali: invoke-static {}, Lmotorola/android/hardware/MotoLED;->leds_disable_all()I
./app/MediaGallery/smali/com/motorola/gallery/ImageGallery.smali: invoke-static {v2, v0}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
./app/MediaGallery/smali/com/motorola/gallery/ImageGallery.smali: invoke-static {v6, v6}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
./app/MediaGallery/smali/com/motorola/gallery/ViewImage.smali: invoke-static {v7, v6}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
./app/MediaGallery/smali/com/motorola/gallery/ViewImage.smali: invoke-static {v6, v6}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
./app/MediaGallery/smali/com/motorola/gallery/AlbumsNavigator.smali: invoke-static {v0, v1}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
./app/MediaGallery/smali/com/motorola/gallery/AlbumsNavigator.smali: invoke-static {v3, v3}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
./app/TvoutNotice/smali/com/motorola/android/tvoutnotice/TvoutNoticeActivity$HandlerStop.smali: invoke-static {}, Lmotorola/android/hardware/MotoLED;->leds_disable_all()I
./app/TvoutNotice/smali/com/motorola/android/tvoutnotice/TvoutNoticeService$2.smali: invoke-static {}, Lmotorola/android/hardware/MotoLED;->leds_disable_all()I
./app/CameraMoto/smali/com/motorola/Camera/Camera.smali: invoke-static {}, Lmotorola/android/hardware/MotoLED;->leds_disable_all()I
./app/CameraMoto/smali/com/motorola/Camera/CameraGlobalTools.smali: invoke-static {}, Lmotorola/android/hardware/MotoLED;->leds_disable_all()I
./app/CameraMoto/smali/com/motorola/Camera/CameraGlobalTools.smali: invoke-static {p1, v0}, Lmotorola/android/hardware/MotoLED;->led_set(II)I
Mio,
as i am starting to think that i start to figure things out
Can you take a look at
https://github.com/CyanogenModXT720...blob/pesh-modif/proprietary/framework/led.jar
if i am on the right way (will test it later, but don't know when...) i am planing to search and implement the same way about the gallery key press...
later (like long roadmaps hdmi settings part etc....
p.s. using both (cyano and stock) framework is not good i lost my sound (ringing and music), deleting /system/framework/mot-frame-res.apk solved the sound, did not test through hdmi now...
mchlbenner said:
I'm very happy to see this new thread.
I do use xt720mod.
Still trying to get 3g to work.
I really like your cm7 builds.
Thanks.
Sent from my XT720 using xda premium
Click to expand...
Click to collapse
can you try to comment "mount /cust" entry either in /system/etc/rootfs/init.rc ot init,maphone_umts.rc
peshovec said:
Can you take a look at
https://github.com/CyanogenModXT720...blob/pesh-modif/proprietary/framework/led.jar
Click to expand...
Click to collapse
My instincts say that approach won't work because the interface to the MotoLEDs is by function calls not by broadcasts. So, you'll be able to stick the code in the ROM using led.jar, but nothing will be able to use it because they won't know about it at compile time. That's what my gut's telling me anyway.
i am planing to search and implement the same way about the gallery key press...
Click to expand...
Click to collapse
As noted by brianlili, it looks like the gallery button behaviour is controlled entirely by :
./app/CameraMoto/smali/com/motorola/Camera/ModeButtonIntentReceiver.smali
I think this code registers to listen for the gallery key and then keeps state and decides who to launch.
People, you forgot that i already kinda make something about this way?
Here some source code..
https://github.com/CyanogenModXT720...oid/camera/MediaModeButtonIntentReceiver.java
Code:
[[email protected] camera]$ cat MediaModeButtonIntentReceiver.java
/*
* Copyright (C) 2007 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.camera;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.app.ActivityManager;
import android.util.Log;
import java.util.List;
/**
* {@code MediaModeButtonIntentReceiver} is invoked when the media mode button is
* pressed.
*
* It is declared in {@code AndroidManifest.xml} to receive the
* {@code android.intent.action.MEDIA_MODE_BUTTON} intent.
*
* After making sure we can use the camera hardware, it starts the camera
* activity.
* In next version i will add switcher.
*/
public class MediaModeButtonIntentReceiver extends BroadcastReceiver {
private final String cameraApp = "com.android.camera.Camera";
private final String videoCameraApp = "com.android.camera.VideoCamera";
private final String galleryApp = "com.cooliris.media.Gallery";
private void startGallery(Context paramContext)
{
Intent i = new Intent(Intent.ACTION_GET_CONTENT);
i.setType("image/*");
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
paramContext.startActivity(i);
}
private void startCamera(Context paramContext)
{
Intent i = new Intent(Intent.ACTION_MAIN);
i.setClass(paramContext, Camera.class);
i.addCategory(Intent.CATEGORY_LAUNCHER);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
paramContext.startActivity(i);
}
private void startVideoCamera(Context paramContext)
{
Intent i = new Intent(Intent.ACTION_MAIN);
i.setClass(paramContext, VideoCamera.class);
i.addCategory(Intent.CATEGORY_LAUNCHER);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
paramContext.startActivity(i);
}
private String getCurrentTopActivity(Context context) {
ActivityManager mActivityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> RunningTask = mActivityManager.getRunningTasks(1);
ActivityManager.RunningTaskInfo ar = RunningTask.get(0);
return ar.topActivity.getClassName().toString();
}
@Override
public void onReceive(Context context, Intent intent) {
// Log.i("MediaButtonReceiver","event recieved");
// Try to get the camera hardware
//CameraHolder holder = CameraHolder.instance();
//ComboPreferences pref = new ComboPreferences(context);
//int cameraId = CameraSettings.readPreferredCameraId(pref);
//if (holder.tryOpen(cameraId) == null) return;
// We are going to launch the camera, so hold the camera for later use
//holder.keep();
//holder.release();
//Intent i = new Intent(Intent.ACTION_MAIN);
//i.setClass(context, Camera.class);
//i.addCategory(Intent.CATEGORY_LAUNCHER);
//i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
// | Intent.FLAG_ACTIVITY_CLEAR_TOP);
//context.startActivity(i);
//startGallery(context);
// List activies = (ActivityManager) context.getSystemService("activity").getRunningTasks(10); // i need more study about
// if (activies.get(0).equals(appName))
// {
// // TODO: Check camera app, and set camera or videocamera.
// }
// startGallery(context);
String activity = getCurrentTopActivity(context);
Log.i("MediaModeButtonReceiver", "Current activity: " + activity);
if (activity.equals(cameraApp))
{
startVideoCamera(context);
}
else if (activity.equals(videoCameraApp))
{
startGallery(context);
}
else if (activity.equals(galleryApp)) {
startCamera(context);
}
else startGallery(context);
}
}
[[email protected] camera]$
fjfalcon said:
People, you forgot that i already kinda make something about this way?
Here some source code..
https://github.com/CyanogenModXT720...oid/camera/MediaModeButtonIntentReceiver.java
Click to expand...
Click to collapse
Aha! Nice work! I see that github's news feed misses things...
peshovec said:
can you try to comment "mount /cust" entry either in /system/etc/rootfs/init.rc ot init,maphone_umts.rc
Click to expand...
Click to collapse
Hi
Keep one thing in mind the things I'm trying is by mobile only labtop dead.
I tried what said with no luck.
I will later again for know out of ideas.
Sent from my XT720 using xda premium
MediaGallery works
Ok, have figured it out
the MediaGallery.apk (and VideoPlayer) from the stock finally are working.
about external jar, still search how to integrate them with framework.jar the right way....
But for now thing are so:
in the AndroidManifest.xml in MediaGallery.apk there is:
Code:
<uses-library
android:name="com.motorola.aui"
>
</uses-library>
so i just insert into com.motorola.aui.jar additional led and mediastorage
after editing platform.xml
Code:
<library name="com.motorola.aui"
file="/system/framework/com.motorola.aui.jar"/>
MediaGallery works (the option Display on Tv is available and is starting to search the hdmi device, same applies to the VideoPlayer
will try to figure out how to make the change in platform.xml persistent (e.g. without need for modifying it later) and will replace the test build
update:
ok new test build
update-cm-7.1.0-MilestoneXT720-beta-25012012-signed.zip — testing, stock hdmi out need feedbacks
tv out from mediagallery works (hdmi cable via hdmi-dvi to advi monitor)
please test and report (also in this build i forgot to remote gallery launch service, so media key will work somehow...)
no additional changes to platform.xml are needed anymore
peshovec said:
Ok, have figured it out
the MediaGallery.apk (and VideoPlayer) from the stock finally are working.
about external jar, still search how to integrate them with framework.jar the right way....
But for now thing are so:
in the AndroidManifest.xml in MediaGallery.apk there is:
Code:
<uses-library
android:name="com.motorola.aui"
>
</uses-library>
so i just insert into com.motorola.aui.jar additional led and mediastorage
after editing platform.xml
Code:
<library name="com.motorola.aui"
file="/system/framework/com.motorola.aui.jar"/>
MediaGallery works (the option Display on Tv is available and is starting to search the hdmi device, same applies to the VideoPlayer
will try to figure out how to make the change in platform.xml persistent (e.g. without need for modifying it later) and will replace the test build
Click to expand...
Click to collapse
That is great. Is that means both fjfalcon's build and yours update the same time? Please ask fjfalcon to make the change, which means let media key activete mediagallery instead of gallery3d. After this, this part works exactally as in stock's rom! Great improvement.
And hope Mioze7Ae compiling all this to his CM6 build.
brianlili said:
That is great. Is that means both fjfalcon's build and yours update the same time? Please ask fjfalcon to make the change, which means let media key activete mediagallery instead of gallery3d. After this, this part works exactally as in stock's rom! Great improvement.
And hope Mioze7Ae compiling all this to his CM6 build.
Click to expand...
Click to collapse
there is something i still have no time to dig into it and to figure it out...
I don't use excellent fjfalcon`s mediabutton receiver... but media key works (rotate between gallery 3d, image and video capture)
when the new test build is ready will test it and will give feedback again
editing:
oups somehow i missed to disable the launchgallery service that explains the above strange behaivor
peshovec said:
there is something i still have no time to dig into it and to figure it out...
I don't use excellent fjfalcon`s mediabutton receiver... but media key works (rotate between gallery 3d, image and video capture)
when the new test build is ready will test it and will give feedback again
Click to expand...
Click to collapse
Yeah, I think mediagallery suits for xt720 better than gallery3d, and, more important thing is, you make motovideoplayer working on CM7, that is wonderful.
peshovec said:
I don't use excellent fjfalcon`s mediabutton receiver...
Click to expand...
Click to collapse
Well all we have to do then is get MotoCamera working because that's where the mediabutton reciever is I'll get your changes into CM6. Great work!
Mioze7Ae said:
As noted by brianlili, it looks like the gallery button behaviour is controlled entirely by :
./app/CameraMoto/smali/com/motorola/Camera/ModeButtonIntentReceiver.smali
I think this code registers to listen for the gallery key and then keeps state and decides who to launch.
Click to expand...
Click to collapse
Ok, i decide to go for that, so finally installed CameraMoto.apk (some fighting was needed, also it crash because of libpanorama_jni.so , but...)
pressing the mode key does nothing, but,
pressing down camera key and holding does:
launch cyano camera (as expected)
and launch motostock camera (which still crashes, but...)
so is it possible this ModeButtonIntentReceiver.smali to be just for launching cameraMoto, when holding down the camera key?
update:
placeholder to remember
Code:
~/android/stockframe/out$ vim ./com/android/server/am/ActivityManagerService.smali
grep -E -i "(camera|gallery|led_set)" ./com/android/server/am/ActivityManagerService.smali
const-string v8, "com.motorola.gallery"
invoke-static {v7, v8}, Lcom/motorola/hardware/LED;->led_set(II)I
const-string v8, "com.motorola.Camera"
invoke-static {v7, v8}, Lcom/motorola/hardware/LED;->led_set(II)I
invoke-static {v7, v8}, Lcom/motorola/hardware/LED;->led_set(II)I
and
Code:
frameworks/base$ vim ./services/java/com/android/server/am/ActivityManagerService.java
grep -E -i "(camera|gallery|led_set)" ./services/java/com/android/server/am/ActivityManagerService.java
mSuppressHomeLock = "com.android.camera".equals(app.processName);
Hmm. I tried getting mediagallery on CM6, but I get random app crashes. Also when I plug in hdmi cord MediaGallery crashes. I must have missed something. Ah, I get VideoPlayer to show up from 3D Gallery and that does have the display on TV option, but I get "hdmi cable not detected" after a while even when HDMI cable is attached. Still, it's a good start!
Edit: yup, missing some stuff libhdmi.so, ExtDispService.apk etc.... those don't sound important, do they
it is not so straightforward you have to have libdispext.so and extdispservice.apk (and com.motorola.aui.jar and etc...)
take a deep look at the logcat...
when trying to detect hdmi, you should be able to see, 5V put on the hdmi etc...
anyway i am not able to test on real hdmi device..
anyway it the whole is still in testing stage (i have mediagallery force close when rotate in landscape and if i am in preview)
also please see that i have added some info in my post, basically media button is working, because i somehow missed to disable launchgaleery service
edit: hihi we both edited at the same time
Ok, it looks like for HDMI out all that's needed is:
/system/app/ExtDispService.apk
/system/app/VideoPlayerMoto.apk
/system/lib/libextdisp.so
/system/lib/libhdmi.so
The aui, leds etc are needed for MediaGallery, but I can't get that to not crash all the time yet. So I've pushed the hdmi support only part to CM6 (tested).
https://github.com/CyanogenModXT720...mmit/949414f5efa85ce7e379ae08c66c6d02c7c94a82
I've tested this on my computer display and video works. I don't know if audio is supposed to go out too because I've never tried hdmi out before in stock and also I wouldn't know if it was working or not because my monitor doesn't have speakers anyway.
It looks like the main CM7 was only missing ExtDispService.apk and VideoPlayerMoto.apk, so I've pushed those there too to get hdmi support (but not tested yet)
https://github.com/CyanogenModXT720...mmit/18308c73c3fa560504f627b9bd055e7e6d0b274f
Edit: doesn't work in CM7. Some library clash, I think:
E/extdisp ( 2012): tvout_init : dlopen error!
E/extdisp ( 2012): tvout_init error!
tvout errors are ok
hdmi out has to be good
took me some time to make it (partially)work in the test build,
just to remind (took me some time in the past), the apks and the jars has to be signed for the platform (test build is using keys from nadlabak ...)
MediaGallery crash if started in landscape (it is written in the logcat which display orientation is detected), or when rotate from portrait to landscape, but only in thumbnail preview. If picture sliding is in use, dosen't crash regardless of orientation
Also the MediaGallery search for it's intents in the framework and in com.motorola.aui.jar, thats why i put leds and MediaStorage smalis in aui one.
So crashes are avoided (except some landscape rotating)
What I mean by the hdmi part doesn't work on CM7 is that every thing links and runs, but when you actually connect an hdmi display and try to send video, no video goes to the display and VideoPlayer exits or decides to continue playing on the phone instead. The logcat isn't very informative unfortunately. The next time you try videoplayer doesn't go the whole hdmi connection thing asking if you want to ignore incoming calls. You have to reboot to get another chance at that part. Anyway this "just works" on CM6 and I assumed it would be the same on CM7, but I'm wrong so I've backed out that commit. I think it's probably related to froyo->gingerbread changes in the media libraries/infrastructure, so probably we need to scrounge gingerbread-compatible ones from defy or droid2. You're right -- I think the tvout stuff is harmless about missing libtvout.so (for tv on the headphone jack, I assume). Anyway you don't see the problems until you actually connect a display.

Sense4 ROM with supercharger

Sorry for my poor english.
I really want Sense4a or Sense4 full version ROM in my phone as daily drive.
but current Sense4 ROM's performance compare with RCMix3D V4.0 + Neoc CFS kernel is poor....
the birds told to me, Virtuous Infinity alpha ROM plus V6SuperCharger can up performance & battery life!
but this threadhttp://forum.xda-developers.com/showthread.php?t=991276/ I can't understand....
who can provide me a simple teaching with illustrate??
thx
I read it and it seems like it would theoretically work on any device, any Rom. But I not sure whether you need to bake it in the Rom or if can be flashed through recovery. I would do a back up and see if it works.
Sent from my Inspire 4G using Tapatalk 2
V6 Supercharger is a script which you run trought smanager from android market
Sent from my HTC Desire HD using xda premium
Let me make you easier for you, as I just made my first supercharger on my dhd.
1. Go HERE and download SuperCharger_Starter_Kit_RC12.zip & V6_SuperCharger_for_Android-Update9_RC10.sh.pdf (attached on end of post). There is new version (V6_SuperCharger_for_Android-Update9_RC11_Test_4.sh.pdf), but its test file, so I stick with RC10.
2. Unzip supercharger starter kit -> put all files (including V6_SuperCharger_for_Android-Update9_RC10.sh.pdf) in some folder on SD card, where U will find them later.
3. Go on play store and download SManager
4. Open SManager -> Make it browse as root -> search your Supercharger starter kit folder -> Run StartMeUp.sh and before You hit "Run", please select "Su" option (it will make you green skull icon), below it. Now its time to press "Run" and follow instructions. As I didnt install BussyBox before, i followed on installation with all Yes on confirmation.
5. After you finish with StartMeUp.sh, you can press grey X on top left corner.
6. Search for V6_SuperCharger_for_Android-Update9_RC10.sh.pdf and open it. Same as before, before you hit "Run", make it "Su" (grey skull, after you press it, it will become green) -> Now press "Run".
7. Thats all, follow instructions and you will not need to make any custom editing as it was before 15.8.2012
If my post was helpfull for you, please press Thank You button
P.S.: My Virtuos Sense4 rom is still not so smoth, but i will remake it again with a little bit different settings in supercharger . Also i need to say, it is much smoother than before, but still not that what i want
Update:
If you are on Virtuos Infinity, change scene from Virtuos to HTC, its even smoother
droidhd said:
Let me make you easier for you, as I just made my first supercharger on my dhd.
1. Go HERE and download SuperCharger_Starter_Kit_RC12.zip & V6_SuperCharger_for_Android-Update9_RC10.sh.pdf (attached on end of post). There is new version (V6_SuperCharger_for_Android-Update9_RC11_Test_4.sh.pdf), but its test file, so I stick with RC10.
2. Unzip supercharger starter kit -> put all files (including V6_SuperCharger_for_Android-Update9_RC10.sh.pdf) in some folder on SD card, where U will find them later.
3. Go on play store and download SManager
4. Open SManager -> Make it browse as root -> search your Supercharger starter kit folder -> Run StartMeUp.sh and before You hit "Run", please select "Su" option (it will make you green skull icon), below it. Now its time to press "Run" and follow instructions. As I didnt install BussyBox before, i followed on installation with all Yes on confirmation.
5. After you finish with StartMeUp.sh, you can press grey X on top left corner.
6. Search for V6_SuperCharger_for_Android-Update9_RC10.sh.pdf and open it. Same as before, before you hit "Run", make it "Su" (grey skull, after you press it, it will become green) -> Now press "Run".
7. Thats all, follow instructions and you will not need to make any custom editing as it was before 15.8.2012
If my post was helpfull for you, please press Thank You button
P.S.: My Virtuos Sense4 rom is still not so smoth, but i will remake it again with a little bit different settings in supercharger . Also i need to say, it is much smoother than before, but still not that what i want
Update:
If you are on Virtuos Infinity, change scene from Virtuos to HTC, its even smoother
Click to expand...
Click to collapse
You can do all the steps above or just get AutoKiller Memory Optimizer Pro from Google play store. It does the same thing but through an a simple App.
Nothing does the same thing.
V6 is a complete fix which includes priority and grouping adjustments - not just minfrees.
If you don't know what I'm talking about, that means you don't know what you're talking about.
zeppelinrox said:
Nothing does the same thing.
V6 is a complete fix which includes priority and grouping adjustments - not just minfrees.
If you don't know what I'm talking about, that means you don't know what you're talking about.
Click to expand...
Click to collapse
Hey Zeppelinrox,
True, not all things do the same. But in this case simplicity works best.
Don't get me wrong. It's great that you wrote this script and a lot of people appreciate it including me and I hope you keep continuing to improve it. We just hope you would consider creating a front UI for it like an app since it would make things easier for people.
Thanks again for all your efforts.
droidhd said:
Let me make you easier for you, as I just made my first supercharger on my dhd.
1. Go HERE and download SuperCharger_Starter_Kit_RC12.zip & V6_SuperCharger_for_Android-Update9_RC10.sh.pdf (attached on end of post). There is new version (V6_SuperCharger_for_Android-Update9_RC11_Test_4.sh.pdf), but its test file, so I stick with RC10.
2. Unzip supercharger starter kit -> put all files (including V6_SuperCharger_for_Android-Update9_RC10.sh.pdf) in some folder on SD card, where U will find them later.
3. Go on play store and download SManager
4. Open SManager -> Make it browse as root -> search your Supercharger starter kit folder -> Run StartMeUp.sh and before You hit "Run", please select "Su" option (it will make you green skull icon), below it. Now its time to press "Run" and follow instructions. As I didnt install BussyBox before, i followed on installation with all Yes on confirmation.
5. After you finish with StartMeUp.sh, you can press grey X on top left corner.
6. Search for V6_SuperCharger_for_Android-Update9_RC10.sh.pdf and open it. Same as before, before you hit "Run", make it "Su" (grey skull, after you press it, it will become green) -> Now press "Run".
7. Thats all, follow instructions and you will not need to make any custom editing as it was before 15.8.2012
If my post was helpfull for you, please press Thank You button
P.S.: My Virtuos Sense4 rom is still not so smoth, but i will remake it again with a little bit different settings in supercharger . Also i need to say, it is much smoother than before, but still not that what i want
Update:
If you are on Virtuos Infinity, change scene from Virtuos to HTC, its even smoother
Click to expand...
Click to collapse
really simple. I will try this within a few days.
I hope I can rock in the Virtuous Infinity Alpha ROM, taste full Sense4.0
http://gphonefans.net/forum.php?mod=redirect&goto=findpost&ptid=45392&pid=725671&fromuid=263995
this a SuperCharger setup guide link. in this thread have photo & step, I really wont to see this style of guide.
However, I will get used to your way of teaching. :good:
blade1198 said:
Hey Zeppelinrox,
True, not all things do the same. But in this case simplicity works best.
Don't get me wrong. It's great that you wrote this script and a lot of people appreciate it including me and I hope you keep continuing to improve it. We just hope you would consider creating a front UI for it like an app since it would make things easier for people.
Thanks again for all your efforts.
Click to expand...
Click to collapse
Every time you talk, you say something incorrect.
Simplicity has no bearing on effectiveness and does not work best in this case.
When it's an app, I'm sure people will still be confused as **** even tho it will be as idiot proof as possible.
Just like the script is now, it's as idiot proof as possible and people still get confused as ****.
zeppelinrox said:
Just like the script is now, it's as idiot proof as possible and people still get confused as ****.
Click to expand...
Click to collapse
It's really idiot-proof
I'm using it besides and while were here, I just wanna thank you for this script, really gives a boost to my device
zeppelinrox said:
Every time you talk, you say something incorrect.
Simplicity has no bearing on effectiveness and does not work best in this case.
When it's an app, I'm sure people will still be confused as **** even tho it will be as idiot proof as possible.
Just like the script is now, it's as idiot proof as possible and people still get confused as ****.
Click to expand...
Click to collapse
This was currently written by another member:
While the guy that wrote the script is obviously a very very talented programmer, he's a horrible technical writer. Something as profound as memory management deserves clear and well-delineated overviews and instructions. I was left wondering at every step. The changes in font size, colours, and collapsible buttons weirded me out!
The script is way too much.
I would've preferred very succinct instructions and prompts during the script.
Does help for sure. Run your choice of memory widget and see!
At the next release of this ROM ill flash again (back on ARHD 6.3.3) but there are little things that are driving me batty - MMS/dropped connection, stereo bluetooth pairings that just drop off and need a reboot or re-pairing, and a periodic sluggishness that creeps in and out.
I'm very excited to see where this goes!
Sent from my Desire HD using xda premium
Telus Desire HD (Toronto)
The was written by thousands of people:
Between 5 and 10% think it's too complicated so didn't try it.
Of those that actually used it (2850 votes)...
47% call it the best mod ever,
Over 64% see a big performance boost.
Over 80% claim a noticeable performance boost.
I don't cater to those easily confused or illiterate or lazy so I'd rather weed them out nice, nice - cuts down on the stupid questions.

Auto Brightness not going down

I have noticed strange thing. When I enable auto brightness it works only one way - when you move from dark to bright place it goes up as it should, but when you return to dark environment it will not go down, it stays on the same level as in the light place. Can somebody help me? Thanks in advance.
I had the same issue. I found out it actually works - it's just too slow and it can take 20 to 30 seconds to lower the brightness. I'm not sure why it's like that, it works instantly with CyanogenMod. With stock ROM I recommend you to try "Lux Auto Brightness" which is great, has nice fade effects and allows you to fine tune brightness levels.
I have used Lux few years ago on some other device, was hoping that relatively modern phone like S5 has no issues like this..nevermind, its probably the only solution, or wait for lollipop and hope they will change it..
There is one more problem when using third party app like Lux - when using inbuilt autobrightness control it will allow to use boost mode under direct sunlight - which is much brighter than max brightness under manual or 3rd party app control..[emoji20]
I have the same issue on my galaxy S5. The brigthness goes only up. If I what it to go to a normal level again, I need to lock/unlock the phone or to uncheck/check the autobrightness checkbox.
The sensor works as it should(*#0*# test), also works with third party apps.
Hope this problem will be fixed in a future update.
Since I already wanted to learn how to modify the auto brightness table, I am able to fix the issue when I always calculate the average lux and update last lux values in com.android.server.power.DisplayPowerController.applyLightSensorMeasurementSEC(). I'm still debugging it to understand how and why it works like that. I'm using Xposed so you will be able to use this fix as well.
I don't think Sammy will fix our 4.4.2 releases but I'm curious whatever this is still issue in Android 5.0. I will check the code but it would be great if someone could test it so we knew if it should be reported to Samsung or not.
EDIT: Seems like it depends on the device tilt angle - it works when device lies on a desk but not when it's held (mTiltAngle < 70). So far it really seems like intention. It's one line fix.
Just upgraded to lollipop, no difference at all. Still the same weird behavior. I just dont understand than so many users are alright with it and there are no complaints in forums..
I found similar issues already discussed in 2012 here: http://forum.xda-developers.com/gal...-14-95-xxemd2-c3-2-free-t1807819/page270#2694
For those on KitKat, you can use this Xposed module that fixes it: http://repo.xposed.info/module/com.smartmadsoft.xposed.samsungautobrightnessfix
Similar fix can be achieved on Lollipop (by re-compiling services.jar but playing with it can be quite dangerous if you don't know what you're doing.)
I will collect debug log from power/brighness service and report/ask Samsung (or at least try for the fun of it). Because I'm still curious why they do what they do... (EDIT: http://developer.samsung.com/forum/board/thread/view.do?boardName=General&messageId=276515)
moneytoo said:
I found similar issues already discussed in 2012 here: http://forum.xda-developers.com/gal...-14-95-xxemd2-c3-2-free-t1807819/page270#2694
For those on KitKat, you can use this Xposed module that fixes it: http://repo.xposed.info/module/com.smartmadsoft.xposed.samsungautobrightnessfix
Similar fix can be achieved on Lollipop (by re-compiling services.jar but playing with it can be quite dangerous if you don't know what you're doing.)
I will collect debug log from power/brighness service and report/ask Samsung (or at least try for the fun of it). Because I'm still curious why they do what they do... (EDIT: http://developer.samsung.com/forum/board/thread/view.do?boardName=General&messageId=276515)
Click to expand...
Click to collapse
I have a S Advance with 4.1.2.
This is my services.jar:
Code:
.line 4980
.local v0, "beforeIsLockZone":Z
iget v3, p0, Lcom/android/server/PowerManagerService;->mTiltAngle:F
const/high16 v6, [B]0x428c0000[/B]
cmpg-float v3, v3, v6
This is ext.jar file included in JKay Rom 14.95 (a 4.1.2 rom for SIII)
Code:
.line 4685
.local v0, "beforeIsLockZone":Z
iget v3, p0, Lcom/android/server/PowerManagerService;->mTiltAngle:F
const/high16 v6, [B]0x42700000[/B]
cmpg-float v3, v3, v6
(Hex to float) 0x428c0000 = 70 (i9070 default value)
(Hex to float) 0x42700000 = 60 (Jkay's SIII ROM value)
Float value in your module = 80 (SamsungAutoBrightnessFix)
Why this mTiltAngle value is so different?
I'm interested to port this fix on my services.jar, any help would be appreciated.
@isaak
Seems like they want to prevent brightness drop when you hold your device (and let's say play a game) and cover brightness/lux sensor. They allow this when the device is lying on a table (and probably not used so they can save battery).
moneytoo said:
@isaak
Seems like they want to prevent brightness drop when you hold your device (and let's say play a game) and cover brightness/lux sensor. They allow this when the device is lying on a table (and probably not used so they can save battery).
Click to expand...
Click to collapse
But if I have a different TiltAngle, can I install your fix on my device?
If you need more info to extend compatibility, just ask.
isaak said:
But if I have a different TiltAngle, can I install your fix on my device?
If you need more info to extend compatibility, just ask.
Click to expand...
Click to collapse
70 is the threshold on my device so I used 80. Go ahead and try it. If method and parameter names are the same, it should work.
I would like to fix this in my phone. I'm a beginner, can someone tell how to do it step by step?
Thank you
Working good on my s4 mini (i9190)
Faster, smarter reaction ???
Hello,
Can anyone explain me how to fix this in lollipop 5.0 (without using extra apps)
I understand that we must edit services.jar.... i can decompile it but i dont know what to change.
Thanks
AF_624 said:
Hello,
Can anyone explain me how to fix this in lollipop 5.0 (without using extra apps)
I understand that we must edit services.jar.... i can decompile it but i dont know what to change.
Thanks
Click to expand...
Click to collapse
I have decompiled the services.jar.
But I don't know which *.smali to edit...
Hi,
this is my services.jar (remove .apk)
I9506 Lollipop Stock Deodexed
Buildnr.: LRX22C.I9506XXUDOK1
What do i have to edit for the bugfix?
Or can you please edit it for me and notice the changes?
moneytoo said:
Hello moneytoo,
I've tested your Xposed Auto Brightness Fix on a Samsung device with KitKat.
It's working fine.
But now i have got Lollipop,
Please can you tell me how to do it on a deodexed Samsung Stock Lollipop?
Thank you very much
Click to expand...
Click to collapse

[32-bit] Google Camera 3.2.045 (HDR+) for stock Albus (MZ2P) v2F [28-Feb-2019]

I based my work on MGC_3.2.045_RazerPhone2_V1 by BSG.
It's a working Modded Google Camera for stock rom (works on custom too) heavily improved.
• Requirements:
Camera2 API enabled.
Click to expand...
Click to collapse
Set: persist.camera.HAL3.enabled 1 into your build.prop or use this Magisk Module.
• Installation:
Install as normal apk, open it, enter to 'resolution & quality' and disable video stabilization. Restart the app (force close it or restart your phone).
Click to expand...
Click to collapse
• Changelog:
Based on MGC_3.2.045_RazerPhone2_V1 by BSG.
Changes by developer (BSG):
- Added custom saturation settings.
- Added custom denoise settings.
- Added option to restrict exposure time.
- Removed flash option due to constants sync issues.
Changes by me (v2F):
- Set default custom denoise parameters for Albus/Potter.
- Tweaked GcammoduleJNI (combined with BSG 6.1.021).
- Took Hot Pixels parameters from BSG 6.1.021.
- Took Spatial Gain Map from BSG 6.1.0.21.
- Fixed gray shutter issue.
- Fixed AF and TF for Albus/Potter.
- Added new round icon.
- Package name changed to avoid conflicts with other GCams.
* When you launch the app for first time,
enter to settings and forceclose the app.
If you don't do it firts shots will have a pixelated process.
Click to expand...
Click to collapse
• Important tips:
- Recommended settings for LOW LIGHT scenes (like night shots):
- Correction of auto-exposure HDR+: Increase exp. to 8 or Min. ISO.
- Restrict correction exposure: 1/4s.
- HDR+ parameters: Super High.
- Recommended settings for GOOD LIGHT scenes:
- Correction of auto-exposure HDR+: Off 8 or Increase exp. to 2.
- Restrict correction exposure: 1/4s.
- HDR+ parameters: Medium/High.
• Download link:
3.2(HDR+)Albus_v2F-Moonlightdrive
Thanks to:
BSG
Credits:
BSG, Moonlightdrive.
Reserved.
Is it for moto z2 play stock ROM ?
thx... first try: only slowmo doenst work...as far as i can see
@C4mine: yes, stock is 32bit!
:cyclops:​
Installed on my z2 play but when I open, after swipe left on the "tutorial", it crashes, giving the message "cannot connect to camera". I tried reinstall, force closing, restart the phone, nothing works.
evandromon said:
Installed on my z2 play but when I open, after swipe left on the "tutorial", it crashes, giving the message "cannot connect to camera". I tried reinstall, force closing, restart the phone, nothing works.
Click to expand...
Click to collapse
You need to enable Camera2 API first, and when in the 'tutorial": rapidly change to photo mode. Don't stand more than a second in video mode cause it will crash/hang because video stabilization is not disabled.
can somebody post examples from this app and stock app, rooting this device is a pure mess, i would like to see is it worth it... thanks in advance
moonlightdrive said:
You need to enable Camera2 API first, and when in the 'tutorial": rapidly change to photo mode. Don't stand more than a second in video mode cause it will crash/hang because video stabilization is not disabled.
Click to expand...
Click to collapse
sorry for the dumb question, but how do I do this?
tried this on my redmi go force close upon clicking settings
samsungics1200 said:
tried this on my redmi go force close upon clicking settings
Click to expand...
Click to collapse
Go cry in the Redmi forum
I just tried it on Potter and focus isn't working on pictures, works on video. Also noticed that since bsg 3.2.045 v3.2 focus isn't working, in previous versions it works.
Fedray said:
I just tried it on Potter and focus isn't working on pictures, works on video. Also noticed that since bsg 3.2.045 v3.2 focus isn't working, in previous versions it works.
Click to expand...
Click to collapse
Can confirm AF and TF do work on Moto G5+ (Potter), my work is shared on Moto G5+ Camera development Telegram group (since Albus and potter shares same camera sensor: IMX362RS), this app was heavily tested by G5+ users (custom and stock users).
Be sure that your device is properly named (inside build.prop and default.prop) as a 'potter', it's needed due to Pixel phones uses different focus parameters, unlike Lenovo which uses ZAF, and modded gcams for these devices (a few others like Xiaomis too) needs to be modified/patched in order to focus.
In this case:
Code:
.method public BadTF()I
.locals 3
const-string v1, "[B]potter[/B]"
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_0
const-string v1, "[B]albus[/B]"
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_0
const/4 v2, -0x1
:goto_0
return v2
:cond_0
const/4 v2, 0x0
goto :goto_0
.end method
Long story short: if your device is named as 'potter' this must work. Hope it helps.:good:
moonlightdrive said:
Can confirm AF and TF do work on Moto G5+ (Potter), my work is shared on Moto G5+ Camera development Telegram group (since Albus and potter shares same camera sensor: IMX362RS), this app was heavily tested by G5+ users (custom and stock users).
Be sure that your device is properly named (inside build.prop and default.prop) as a 'potter', it's needed due to Pixel phones uses different focus parameters, unlike Lenovo which uses ZAF, and modded gcams for these devices (a few others like Xiaomis too) needs to be modified/patched in order to focus.
In this case:
Long story short: if your device is named as 'potter' this must work. Hope it helps.:good:
Click to expand...
Click to collapse
Can you help me with what lines need to tell potter? I'm on stock 7.0 and like I said it doesn't focus at all, only in videos.
This is what I have found in build.prop
ro.product.model=Moto G (5) Plus
ro.product.brand=motorola
ro.product.name=potter_retail
ro.product.device=potter
Nothing like that in default.prop
Edit: noticed that with hdr off focus works, when I enable it or set to auto then focus stops working
my hdr+ photos turn out purple.
moonlightdrive said:
Reserved.
Click to expand...
Click to collapse
my hdr photos turn out purple. And sometimes it does not work. I use J7 prime, i tested the app to see if my camera2api is enable or not, and this is enabled. You can help me? (Sorry for my bad english)
Abilrifor said:
my hdr photos turn out purple. And sometimes it does not work. I use J7 prime, i tested the app to see if my camera2api is enable or not, and this is enabled. You can help me? (Sorry for my bad english)
Click to expand...
Click to collapse
Go to you J7 prime forum and cry.
Link is down. Any chance we can get a mirror or something?
Confirmed not working properly on US Retail XT1710-01 Android Pie 9.0. Imahe has artifacts, settings crashes app, and video freezes up.
Knuxyl said:
Confirmed not working properly on US Retail XT1710-01 Android Pie 9.0. Imahe has artifacts, settings crashes app, and video freezes up.
Click to expand...
Click to collapse
Installation:
Quote:
Install as normal apk, open it, enter to 'resolution & quality' and disable video stabilization. Restart the app (force close it or restart your phone).
Click to expand...
Click to collapse
Read OP installation instructions first. You must do that (it's mandatory), otherwise you will face those issue you described. This app is widely tested on this device.
Edit: do not forget to enable API2.
Knuxyl said:
Confirmed not working properly on US Retail XT1710-01 Android Pie 9.0. Imahe has artifacts, settings crashes app, and video freezes up.
Click to expand...
Click to collapse
Neither BR Retail Pie, has the same problems as mentioned.
I'm on US retail Pie as well and I get artifacts in the preview and on photographs. Stabilization was disabled from before the upgrade (which was when it worked just fine). I cleared app data, but the artifacts persist and the app crashes when I try to go to settings. Please excuse the fact that I'm uploading screenshots of the photographs; I haven't found a quick way to erase the location metadata from the originals and I figured the screenshots wouldn't have that in the first place. The windowsill photograph was taken before clearing data (i.e. with stabilization disabled) and the one of wood afterwards (i.e. with stabilization enabled).

Categories

Resources