[APPTEST] Trying to solve an LG 4.1.2 crashing bug - LG Optimus L3 II, L5 II, L7 II, L9 II

Hi all,
I need help testing our app on LG L5 II (E450) running Android 4.1.2. It seems that other LG devices running 4.1.2 would have the same issue.
So if someone is running 4.1.2 on an LG device, I would ask you to install the first attached APK, try to crash the app. Then install the 2nd APK and confirm that (hopefull!) it doesn't crash anymore...
I've attached 2 APK builds here. The first build is the same as the one on the playstore
https://play.google.com/store/apps/details?id=com.muzooka.player
Reading various threads leads me to 2 possible reasons:
Using a custom font (SpannableString) for the ActionBar title
Missing `android:titleCondensed` when creating ActiobBar menu item
If I understood this right, then here are the steps to crash the app:
If it's the first reason, then the app should crash right away
If it's the second one, then the app should crash when accessing the actiobar overflow menu. Steps to crash:
Open app and go throught the welcome screens
on the first screen, select *Charts* from the left navigation drawer
On the Charts, tap a song's menu (vertical dots) and go to *Artist info*
Long press on the share icon (to display the description tip box), or do a search.
Crashed?
If both tests don't crash the app, feel free to click around trying to crash it.
The Crashlytics bug report
http://crashes.to/s/fad5f37453f
The raw log:
Code:
java.lang.IllegalArgumentException: Invalid payload item type
at android.util.EventLog.writeEvent(EventLog.java)
at android.app.Activity.onMenuItemSelected(Activity.java:2766)
at android.support.v4.app.FragmentActivity.onMenuItemSelected(FragmentActivity.java:373)
at android.support.v7.app.ActionBarActivity.superOnMenuItemSelected(ActionBarActivity.java:245)
at android.support.v7.app.ActionBarActivityDelegateICS.onMenuItemSelected(ActionBarActivityDelegateICS.java:164)
at android.support.v7.app.ActionBarActivity.onMenuItemSelected(ActionBarActivity.java:131)
at android.support.v7.app.ActionBarActivityDelegateICS$WindowCallbackWrapper.onMenuItemSelected(ActionBarActivityDelegateICS.java:308)
at com.android.internal.widget.ActionBarView$3.onClick(ActionBarView.java:172)
at android.view.View.performClick(View.java:4101)
at android.view.View$PerformClick.run(View.java:17088)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:153)
at android.app.ActivityThread.main(ActivityThread.java:5071)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
at dalvik.system.NativeStart.main(NativeStart.java)
Related to following threads:
* https://code.google.com/p/android/issues/detail?id=58723
* http://stackoverflow.com/questions/...alargumentexception-invalid-payload-item-type
* http://stackoverflow.com/questions/21807298/invalid-payload-type-android

Related

StartOperaMini: Mortscript for *easily* launching and controlling Opera Mini!

10/20/2008: You may or may not notice that I haven't updated the script in a while. I had lost my windows mobile phone (t-mobile shadow) many months ago and I guess that killed my enthusiasm and any practical way to do testing (process detection doesn't work very well on the emulator). It also doesn't help that mortscript is frozen in time as well. Since I don't really see many Windows Mobile Standard devices coming out and I refuse to use a phone that requires a stylus, my next phone will likely be an android device (which interestingly enough, has an opera mini port).
There are probably a few bugs lurking around in the code for some fringe cases, but as always, you are welcomed to examine and update the script to your needs and it would be very appreciated if you would post a link to the update here. Also, I think JZ's SmartMort script is still keeping things interesting so you may want to check that out.
Click to expand...
Click to collapse
Latest version: 06/17/2008 0.11b
Faster Startup, Better OM control, Select / Copy / Paste (works in smartphone MS Word!), HotKey, and many fixes.
Click to expand...
Click to collapse
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
INTRODUCTION
You probably know of Menneisyys' original thread of making Opera Mini behave like the default browser by responding to links in emails and other locations. A component of making that work is a script to launch opera mini and enter the url. I've been enhancing my version of the script to make it easy to everyone to use.
While this script has some powerful options, its main purpose is to make it easy to launch opera mini directly and use opera mini to handle links.
At first run, an auto-detection process will try to automatically figure out how to launch opera mini and update your device so links are opened by Opera Mini. No more worrying about what jbed.exe parameters to use. Launching the script directly will open Opera Mini so you can just reference the script in shortcuts and launchers.
In previous versions of the script, you had to manually guess how much delay is needed before opera mini is ready for the script to enter the url. This script has method to detect if Opera Mini is running and if it's ready automatically.
If anything changed on your system that affects Opera Mini, just run Setup to re-detect your settings or tweak a setting. No text editing of the script required.
FEATURES
Make Opera Mini your default browser
When you run the script, the script will automatically find and launch Opera Mini. Optionally, update your registry so links in emails, contacts, appointments, documents, and other apps are handled by Opera Mini. Optionally, create a Start Menu shortcut with icon to launch Opera Mini.
Works with both Opera Mini 3.1, 4.0 and 4.1. Landscape and fullscreen mode is supported. Will work with 4.1 with Auto-complete Address Input enabled or not.
Quickswitch
Invoke the script with OM visible and you can have the script automatically option open the current page in IE and vice versa. This is handy when you encounter a page that would render better in the other browser. For example, in Opera Mini, you encounter a page with a youTube video so you quickswitch to IE to view the video.
Hotkey
You can assign a single hardware button to the HotKey shortcut and have quick access to most script features, including text select, copy, and paste commands.
Customizations / Special features
Enable prompting of what action to take when invoking a link or starting the script, such as asking which browser to use or sending the url to the clipboard. Timeout option available.
Add your own custom applications as choices to respond to links, so you can add browsers like netfront or opera.
Exclude list for sites that you want to automatically open in an alternative app like IE, such as your provider's private-network MMS server. Also good for automatically using IE to download files that Opera Mini may not handle correctly. Prompt and timeout option available.
Patch selector.utf file to eliminate permission prompting by midlets.
Create shortcuts to all your midlets in your Start Menu.
Click to expand...
Click to collapse
HISTORY
11/29/2007 0.01b: Initial version (based on Menneisyys' script) [details]
04/06/2008 0.02b: Next version (based on info from JZ's script) [details]
04/10/2008 0.03b: Enhanced and uploaded to this thread
04/11/2008 0.04b: Fix: will find jbed.exe if even no quotes are around the registry value [details]
04/11/2008 0.05b: landscape support, address input optimizations, improved DAI tolerance, shortcut with icon created, filename change to ini file. [details]
04/12/2008 0.06b: tweaked delay b/t keys and delay after paste [details]
04/15/2008 0.07b: Shortcuts created in localized Start Menu location, Prompt-less auto-configuration, Alternative url input methods, What to do options list, To kill jbed or not, 'Start Opera Mini Setup' [details]
04/22/2008 0.08b: More url paste options, Improved opera control scheme, Shortcuts add/remove options, More Setup functions, selector.utf patching, Reworked logic on when to kill jbed.exe [details]
04/25/2008 0.09b: Exclusion list, Last Link saved, Improved shortcut icons, help file [details]
Update: 04/25/2008 2:50pm EST: found a bug where trim would repeat forever. Fixed and re-uploaded. [details]
05/15/2008 0.10b: Custom Commands, Improved Exclude options, Prompting with timeout, Quickswitch, Special Commands, JVM selection improvements, Fixes [details]
UPDATE1: 05/15/2008 11PM EST 0.10b sp1: found some bugs with quickswitch if Use Direct Address Input is enabled. Fixed and re-uploaded.
UPDATE2: 05/16/2008 12PM EST: 0.10b sp2: got quickswitch working on my WM6 PDA by introducing context-menu methods for copy, paste, and select-all. Of course, only touch-screen devices have a context-menu. Also, you can choose different copy, paste, and select methods for use in OM and IE, which is important since context-menus don't appear to work within my JVM. Also added prompt and prompt timeout options to quickswitch [details]
UPDATE3: 05/20/2008 1:30PM EST: 0.10b sp3: more quickfix tweaks, more commands when using quickswitch prompt so the prompt is more like a context menu allowing to perform an action with the current url or task-switch between browsers. Also added a sample bookmarks.mscr script that you can add to your list of commands and use with quickswitch prompt to have a unified bookmark list between IE and OM. [details]
06/17/2008 0.11b: Faster Startup, Better OM control, Select / Copy / Paste, HotKey, and many fixes. [url="http://forum.xda-developers.com/showthread.php?t=384271&page=14#138][details][/url]
Click to expand...
Click to collapse
TO DO / KNOWN BUGS:
On some platforms, Mortscript will crash if it tries to read the clipboard containing a large amount of text (around 16KB+ on my smartphone). This is easy to do if you are editing a large document and do a select-all + copy. My script will detect the crash and offer to clear the clipboard contents so mortscript will not crash again if you repeat the same action.
When viewing a script dialog window, like a prompt window or a setup window, it is possible for another application come into focus and you will lose access to the script window. A common way this can happen is when you receive a phone call and the call window appears. My script will automatically check if its dialog windows is in focus and if not, it will try to bring it to focus. This usually works but I've seen where the script only manages to get the title bar to appear but the rest of the screen still shows the previous application. User inputs will be focused on the script though you can't visually see the results. If this scenario occurs, just wait a few minutes and mortscript will eventually bring the dialog window back in focus. If you can't wait, you can kill mortscript via HotKey > StopScripts or manually run \sub\stop_scripts.
Click to expand...
Click to collapse
Be sure to download the version you want. I'm keeping some of the previous version up in case of bugs or undesired behavior in the latest version.
REQUIREMENTS
Jbed JVM
Jbed 2.1: (recommended)
http://www.modaco.com/index.php?act=attach&type=post&id=23899
Jbed 3.1:
http://forum.xda-developers.com/showpost.php?p=2127317&postcount=65
Jbed 3.1 has a bug on smartphones where if you switch away from jbed and then switch back, the screen may not refresh. Workaround is to manually start the JVM, select Menu > Background Running, and finaly start Opera Mini. Script setting 'Kill JVM First' will need to be set to 'No'. This is also a good method to allow you to switch away from Opera Mini while it's still loading the page and come back when it's done. This will work for Jbed 2.1 as well.
If you have multiple versions of jbed installed, then the script may not correctly find the version you are using. You can run the Setup application and manually select your JVM executable and the selector.utf file that catalogs the midlets you have installed.
If you start the script to start Opera Mini and briefly see a flash of white, then either the script has chosen the wrong JVM/selector.utf pair or you recently installed a JVM that is of a different version from your last one. In the latter case, your currently installed midlets may not work with the newly installed JVM and you may need to uninstall all your midlets and reinstall them.
Click to expand...
Click to collapse
Opera Mini (3.1, 4.0, 4.1 beta, 4.1 Final)
http://www.operamini.com
To get the signed version of Opera Mini 4.1 Final so you're not prompted for permissions:
On the device, use IE mobile and go to http://mini.opera.com
The version shown is probably 4.1 US English, No signature, which is probably what you don't want so don't download that. If you're fine with the chosen language, skip to step 5. Otherwise, see the next step.
Click Download in another language.
Now a list of all language versions appear so choose one. I prefer to download Opera Mini 4.1 International for foreign language websites.
Click 'If this version fails to install or you would like to install a previous version, please click here.'
Choose the signed version you want.
Click to expand...
Click to collapse
Mortscript (4.1 or higher)
http://www.sto-helit.de/index.php?module=page&entry=ms_overview&action=view
INSTALLATION
Download Mortscript (4.1 and up), Jbed (2.1 preferred), and Opera Mini (signed version preferred) and install them. Make sure you can run Jbed and then run Opera Mini. You should run Opera Mini at least once to get pass all the initial installation and license agreement screens.
Extract the script contents to anywhere on your device. The zip file contents are stored in a \StartOperaMini\ folder so you can just extract that folder like to '\Program Files\Mortscript\StartOperaMini\'.
In version 0.09b and 0.11b, the OperaIcon.dll is updated with better or additional shortcut icons. You may not be able to directly overrwrite the existing OperaIcon.dll file so rename the file to something else like OperaIcon.dll_, and then transfer the new OperaIcon.dll. A reboot may be needed before the old OperaIcon.dll can be deleted.
To support the new icons, the shortcuts have been modified, so you may need to update your shortcuts from the correct ones in the script folder or run Setup and toggle the Start Menu shortcut option to No and then back to Yes.
Also, you may be asked for permissions to load OperaIcon.dll when you access your Start Menu and the OS tries to load the icon graphics. Just allow it and the message shouldn't appear again.
Click to expand...
Click to collapse
Open file manager, navigate to where you copied StartOperaMini to, and run StartOperaMini.mscr. If this is the first time you're running the script from the current location, then the script will initialize by detecting your JVM and Opera Mini settings and ask you some initial setup questions.
One important question is if you want to register the script so the script is run when you click on a link in emails, documents, etc. This step is optional, but is helpful in making Opera Mini behave like the default browser. If you skip this step but have another version of the script installed elsewhere that is registered, then clicking an email link will open up the other version of the script.
When Opera Mini opens up, installation is complete. Note that version 0.11b does not support the settings from previous versions so you may need to revise the initial settings.
If you want to run the script from an application launcher, either link to the 'Start Opera Mini' shortcut or link directly to the StartOperaMini.mscr script.
If you want to use the HotKey feature to easily access other script commands like copy/paste, you should map a hardware key to the shortcut 'Start Opera Mini Hotkey' and then customize the HotKey function in Setup. View the help file if you need more information.
If you need to change any settings, just run the shortcut 'Start Opera Mini Setup'. View the help file if you need more information.
LIMITATIONS
When opening links to local files or to sites on private carrier networks (portals, MMS server), Opera Mini will fail to get to that address. Run setup and add the host to the exclude list of those links will open in IE instead.
If Internet Explorer is opened, links in contacts and appointments may automatically still use Internet Explorer. Workaround is to kill Internet Explorer first, which is an option in the Setup program.
Some paste and control methods may not work on certain devices, so try different settings in Setup.
UNINSTALLATION
Run the Setup Program and then select the Uninstall option.
Delete script files from the script folder. You may not be able to directly delete the OperaIcon.dll file since the system may still be using it to display the shortcut icon. Rename the file to something else like OperaIcon.dll_, reboot, and then it should be deletable.
THANKS
Much thanks to Menneisyys for giving birth to this breakthrough idea and for JZ SmartMort for bringing new innovations to the table (check out his JZ SmartMort tool). Much ideas and help is from the community so it's really due to everyone's efforts.
Feel free to enhance the script to your own needs and use it in your own projects.
Click to expand...
Click to collapse
[reserved for future use 2]
Hi badbob.
I kind of like the script that you made way back when (Nov.?) that opens up a popup that lets you choose between PIE and OM and the clipboard. It also works for 4.1. It would be neat if the installation script allowed that as an option, and also detected Opera Mobile (and skyfire in the future) and would allow that as an option. Having said that dont make these additions for me as I am happy running the old script. Just thought id give you a suggestion.
Great script..does what it's supposed to and does it well....do you have any issues with it being included with a rom?
Thanks for the script; nice little workaround using the color of the upperleftmost pixel. One thing I've noticed is that I have direct address input turned off in my Opera Mini 4.1. However, I must check "Yes" when asked if it's turned on. Only then will it work properly. Don't know if I'm just reading wrongly, but other than that, it's working perfectly.
By the way I'm using the JBed_20071119.3.1_3dMod_HeapSizeFix_v2_wm6(lovetz1) cab.
It found my jbed.exe, even though it's in a "Jbed3dmod" folder on my storage card.
Overall, it's working great now that I marked off "Yes". Thanks!
famewolf said:
Great script..does what it's supposed to and does it well....do you have any issues with it being included with a rom?
Click to expand...
Click to collapse
No problems. Go ahead.
Replaced
Code:
jbed_exe_ini = Part(RegRead("HKCR","jarfile\Shell\Open\Command",""),"""",2,1)
with
Code:
jbed_exe_ini = replace(RegRead("HKCR","jarfile\Shell\Open\Command",""),"""","")
jbed_exe_ini = SubStr(jbed_exe_ini, 1, find(jbed_exe_ini, "jbed.exe")+7)
So finding the location of jbed.exe from the registry doesn't depend on the quotes being around the command.
Azimuth21 said:
One thing I've noticed is that I have direct address input turned off in my Opera Mini 4.1. However, I must check "Yes" when asked if it's turned on. Only then will it work properly.
Click to expand...
Click to collapse
When you have direct address input (DAI) turned off in both OM and the script, at what point does the script fail?
The following two block of instructions is what the script does when it thinks DAI is turned off.
Code:
LeftSoftKey [open menu]
LeftSoftKey [select Enter Address]
Code:
[select all text]
[paste url over selection]
LeftSoftKey [click OK]
By just being lucky, leaving the script with direct address input turned on will perfectly work even if OM has it turned off. It's just that the extra keys sent don't cause any problems. In your working scenario, having the script think DAI is on will essentially put an extra 'enter' after the first instruction block and then another 'enter' after the second block. Which 'enter' is the one helping you?
volwrath said:
Hi badbob.
I kind of like the script that you made way back when (Nov.?) that opens up a popup that lets you choose between PIE and OM and the clipboard. It also works for 4.1. It would be neat if the installation script allowed that as an option, and also detected Opera Mobile (and skyfire in the future) and would allow that as an option. Having said that dont make these additions for me as I am happy running the old script. Just thought id give you a suggestion.
Click to expand...
Click to collapse
It's relatively easy to slap on the menu option to my script, which tmknight did here.
I'm sure many "power" users will want total control and it's pretty easy to make a script that defers the decisions to the user. But I wanted to try a script that is a bit more friendly and tries to handle decisions on its own... a script that I won't be afraid to put on my wife's phone. Easy is hard.
badbob001 said:
When you have direct address input (DAI) turned off in both OM and the script, at what point does the script fail?
Click to expand...
Click to collapse
badbob001 said:
By just being lucky, leaving the script with direct address input turned on will perfectly work even if OM has it turned off. It's just that the extra keys sent don't cause any problems. In your working scenario, having the script think DAI is on will essentially put an extra 'enter' after the first instruction block and then another 'enter' after the second block. Which 'enter' is the one helping you?
Click to expand...
Click to collapse
Sorry, forgot to clarify. I believe the first enter is helping me, because: if I choose the "No, DAI is Off" option, the script will open up Opera Mini, and stay at the main screen for a few seconds. Still on the OM main screen, the script will say something like "The input box was not found after _ seconds", then ask if I want to go through setup again. If I choose the "Yes, DAI is On" option, everything works normally. Opera Mini opens, the input field is opened, the link is pasted into the input field, the page loads, etc.
Thanks for sharing but on my xda is a german software running called "DK - OperaMini4 Addon" with mortscript 4.1 that does the same as yours. and its out since months. so where are the big news? the only better thing seems to be the autodetecting when mortscript starts running, but you write that this don` t work in mini Landscape mode. but everyone i know uses this mode.
04/11/2008 0.05b
- (Opera's built-in) Landscape support:
I now test pixels in the upper left (0,0)and upper right (screenwidth()-1,0) to determine when Opera is running and what orientation it is. I'm not too sure how consistent the upper right pixels are on different devices, but it works fine on my wm6 standard qvga phone. Knowing the orientation is important since in landscape, you have to now press left or right instead of up and down to open the address bar drop down.
- Slightly improved address input:
The script originally sent [leftsoftkey] to open the opera menu and another [leftsoftkey] to select the 'enter address' option. Since I restart Opera Mini if an url needs to be pasted, the initial cursor is already on the address input box, so I just need to send one [enter].
At least on my device, if Direct Address Input (DAI) is on, a rare case occurs where I need to send an extra [enter] to have Opera submit the url. It doesn't appear to cause any ill effects if two [enter]s are sent every time when using DAI.
- Improved tolerance of mismatch DAI setting:
Some people may notice that if you have DAI (Direct Address Input) disabled in Opera but enabled in the script, the extra keys sent by the script don't cause any problems except for being a micro-fraction slower.
For the opposite scenario where if you have DAI enabled in Opera but disabled in the script, the previous result was that the script will complain that it didn't find the Address Input window. Now when it doesn't find the Address Input window, it will assume DAI is really turned on and send the extra DAI keys. If that doesn't work, then you it will complain. But if does, it'll continue with no problems. The *next* time you run the Opera Mini, the script will say that it thinks you told it the wrong DAI setting and offers to run the setup wizard for you to enter the correct settings.
- Start Menu Shortcut with icon
The setup wizard will add a 'Start Opera Mini' shortcut to your Start Menu and it will have the Opera icon:
Kevxross here: http://forum.ppcgeeks.com/showthread.php?t=7346 embedded the opera icon in a dll so it can be referenced by shortcuts. I've included the .dll in the .zip, so just copy it to the same location as the script.
- Ini file renamed
The only manual step that users may need to do is delete the .ini file if they want to easily get the setup wizard to run again. But I noticed that the built-in file manager will hide the extension of files and so users can't really tell the ini file from the script. I've renamed the ini file to <scriptname>_ini.txt. If you're upgrading, the script will automatically rename the existing .ini to _ini.txt.
badbob001 said:
It's relatively easy to slap on the menu option to my script, which tmknight did here.
I'm sure many "power" users will want total control and it's pretty easy to make a script that defers the decisions to the user. But I wanted to try a script that is a bit more friendly and tries to handle decisions on its own... a script that I won't be afraid to put on my wife's phone. Easy is hard.
Click to expand...
Click to collapse
Heh I understand completely. I was able to successfully modify your previous script, so its good by me
here`s the link to the software that does work like yours[/B]. This is out for 2 or 3 months but your welcome to develope the same twice::
Makes as direct shortcut to Opera mini including opera icon and opens urls with mortscript 4.1 ("Opera Mini addon direkt"):
http://www.ppc-welt.info/community/showthread.php?t=122764
Is there a version of this script for smartphone? It works great for PPC, but copy and paste doesn't exist on WM 6.0 standard and fails on my BlackJack II.
bluemetalaxe said:
here`s the link to the software that does work like yours[/B]. This is out for 2 or 3 months but your welcome to develope the same twice::
Makes as direct shortcut to Opera mini including opera icon and opens urls with mortscript 4.1 ("Opera Mini addon direkt"):
http://www.ppc-welt.info/community/showthread.php?t=122764
Click to expand...
Click to collapse
We are so happy you found a similar script months ago. You've posted about it twice now within 6 posts of each other. Please stop harassing the author of this one as several of us are quite happy with his script. Does the old script still use wait states? The new one doesn't. Does the old one automatically find your jbed even if it's on a storage card and find the slot opera is installed in no matter which one you used? The new one does. Finally his current version works with landscape. The entire page you referenced is in a foreign language and I for one appreciate support from an author who can communicate without the need to use babelfish.
Extra carriage return?
Hi badbob and all.
Thanks to everyone who contributed to this script. I'm lovin this.
I'm running Opera Mini 4.1 (v. 4.1.10781, 20080401 to be exact) on a Sprint Mogul / HTC Titan. After installation and first-time setup the script correctly launched OM and pasted in the link. However the page did not load. I had to manually hit the enter key to make it start the loading process.
After poking around in the script for a while I managed to make it load automatically. Around line 320 in the StartOM subroutine I added a wait between the two sendcr commands.
Code:
if ((opera_version_ini eq "4.1" AND direct_address_input eq True) OR (tried_again = True))
sendcr
[B]sleep(wait_time_between_keys)[/B]
sendcr
endif
I don't know whether I fixed a script bug or my phone just has special needs.
Great work i was thinking of the same thing today.
Thanks alot.
cheesiest said:
Hi badbob and all.
Thanks to everyone who contributed to this script. I'm lovin this.
I'm running Opera Mini 4.1 (v. 4.1.10781, 20080401 to be exact) on a Sprint Mogul / HTC Titan. After installation and first-time setup the script correctly launched OM and pasted in the link. However the page did not load. I had to manually hit the enter key to make it start the loading process.
After poking around in the script for a while I managed to make it load automatically. Around line 320 in the StartOM subroutine I added a wait between the two sendcr commands.
Code:
if ((opera_version_ini eq "4.1" AND direct_address_input eq True) OR (tried_again = True))
sendcr
[B]sleep(wait_time_between_keys)[/B]
sendcr
endif
I don't know whether I fixed a script bug or my phone just has special needs.
Click to expand...
Click to collapse
I'm not quite sure how to classify this issue. My code originally only had one sendcr in that section. Then on the rare occasion, I'll see the pasted url in the address field waiting for me to hit enter to submit it. I do notice that everytime I see this happen, the last character in the pasted url is a square box, which means a character the device can't display. I figured, what the hey, lets add another sendcr in there and be done with this problem.
But I guess that didn't really solve the problem. I'm now guessing that I'm not allowing enough time for the device to receive the entire text from the paste before moving on to the next command. So maybe the device is still processing the long url text being pasted and ignores the later key commands. And maybe it also needs a little more time to switch from the text input screen back to opera mini.
I've added more delay after the paste and after leaving the text input window. See version 0.06b for this tweak and see if it helps. I've also taken out the second sendcr. If it works reliably, then the delays fixed it.
Code:
SendCtrlKey("V")
[b]Sleep(500)[/B]
SendLeftSoft
if ((opera_version_ini eq "4.1" AND direct_address_input eq True) OR (tried_again = True))
[b]Sleep(500)[/b]
sendcr
endif

Graphical Layout & Palette issue [ECLIPSE]

I started android dev using Eclipse 3.7.2 with ADT 20.0.0 and Android 1.6 apis(+google_apis) as a beginner but the problem i am facing that i am not able to use the palette options 'ALWAYS' for adding buttons and textfields, (tried both methods of drag n drop & double-click .).Sometimes they work but sometime not.i also refresh & clean project frequently.
The other more important issue is that somehow when i manage to put those palette option on my Graphical Layout view of the main.xml file. they appear just as text not simulating like a button or textbox.wat i mean here is tht i do not get that black background screen on which the icons are placed (like in the emulator or as we can do in .net windows form).
i attached 3 img. whose description is given below acc. to number of the attached file
1.This is how it looks to me in Graphical layout of main.xml
2.and this is how it looks on the Emulator
3. What i want it to look like :
Thanks
Rahul
request
please reply anyone...:fingers-crossed:u

Need help: Adding Refresh and image to my webview with slidingmenu app.

Dear Android developers!
I have made a simple webview application with a sliding menu. I would like to add 2 changes to my application, but I have no idea how to:
Number 1:
Above 'Home' where you see 'ConsoleHax Menu' I would like to place a header image:
w-w-w. consolehax .com /images/ xda02.png
[B]Number 2:[/B]
In the heading on the right, you see 3 dots. When users click on it, they'll see the text 'Coming Soon'. I would like to add a refresh functions to that menu.
[IMG]w-w-w. consolehax .com /images/ xda01.png
My Github Repository:
ConsoleHax/ConsoleHaxApp
I hope someone can help me figure this out!
Thanks in advance!

MTCB/MTCC rk3188 (5.1.1) Firmware with an xposed set of MTC apps

Based on latest LOLLIPOP with MICRO GAPS and OPEN GAPS 1024 x 600 and 800 x 480 from @dsa8310.
Sharing with you my custom modified rom with LP image.
UPDATE 29.8.2017:
MicroG version: 1024 x 600 and 800 x 480
- added screen saver with speed, clock and apps shortcut ported from well known developer @Malaysk (null null still present)
(if someone need: screen saver in the attachement - replace with root explorer: system - app - mtcscreenclock
MTCScreenClock (round)
- 1024 x 600 resolutions has different radio and bluetooth apk
- included all xposed modules and fast google maps
- remember to enable all xposed modules and copy folder contents to external gps card!!!
Enjoy
UPDATE: 3.9.2017 LINKS UP 2019
microGaps version:
Lite 1024x600 microG version.
openGaps version:
Lite 1024 x 600 openG version.
Lite 800 x 480 openG version.
___________________________________________________________________________________
- LITE version of system
- added xposed status bar module for remove status bar items (copy mtc-status bar to external GPS Card)
- new screen saver without null null text (if doesn't show install it manually from: system/app/mtcscreensaver)
- removed all the bloatware callendar, calculator etc...
- added a lot of tweaks to speed the units with 1gb ram
- added new car launcher AG (trial) for me the best - full version 1€
- new xposed mtc manager 2.5 module
LITE VERSION OPTIMIZATIONS:
- kernel tweaks (changed parameters of dalvik vm etc,...)
- better ram management
- faster scrolling
- faster boot
- better responsiveness
- increased performance and app ram management
- better video acceleration
- disable sending android logging stuff
- force gpu&cpu rendering
System now uses less than 470 Mb of ram
BEFORE YOU START:
1. With disable service app find google play store and disable the first 5 services from top including DailyHygiene.
2. Login to MicroG
3. In microG settings enable google device registration
4. Clear data on Google playstore or clear from recents
5. Enjoy fast 5.1.11. playstore (if not showing paid apps just restart HU)
MTCB MCU USERS
- DSA's mtcxp xposed module has to be enabled before the status bar will show.
PREINSTALLED APPS and MODULES:
All these apps and xposed modules are preinstalled and you just have to activate xposed modules you need:
- disable_service
- google-maps-9.2 (you can update it just install as normal apk)
- mtcservice-2.60
- mtcsound-2.0.5 (remove from xposed if you don't have sound mod for better performance)
- mtcxp-1.0
- quickreboot
- RootExplorer
- Titanium_Backup
- xposed-disablefullscreenkeyboard
- xposed-mtc-bt-2.3
- xposed-mtc-keys-5.2 (custom keys for harware buttons)
- xposed-mtc-manager-2.5 (mode button mod and no closing apps when starting the car, etc.)
- xposed-mtc-music-2.8
- xposed-mtc-poweramp-1.4 (working media keys and stopping power amp when mtc app is started)
- xposed-mtc-radio-1.11
- xposed-VolumeBar (replaces original volume bar)
- 7th floor sound mod preinstalled and working
OTHER ADDITIONS: (included in download to copy on external SD (GPS card)
There is also file to copy on SD card (GPS card) that has features for MTCManager:
- hardware mode button can be configured (included in download) as well to switch between apps and auto play them (radio, poweramp, music, pcradio etc)
- mtc screen clock
- mtc status bar
DISABLING THE SCREEN SAVER OR CHANGING TIME:
Edit on external SD/ GPS-Card : Mtc.Manager/settings.ini
# the inclusion of an alternative screen saver, when you specify false will work full-time mechanism:
screenClock=false or true to activate
# Time off the screen if you do not set out full-time settings will be used in sec:
screenTimeout=300
# The name of the screensaver program package
screenPackage=com.microntek.screenclock
# Name Activiti screensaver
screenClass=MainActivity
# If the name of the package and Activiti is not specified, it will use a standard screensaver
MTC MANAGER CAPABILITIES:
capabilities
All configuration files must be on the external map in the mtc-manager directory.
1. The module carries the functionality of xposed-mcu , which does not allow the radio to go to sleep during the scrolling of the starter.
- when receiving a signal to turn off the module delays for 5 seconds, if at that moment the power reappears, nothing happens, in the absence of power, the radio recovers into sleep.
Due to the features of the implementation of the inclusion in our MCU, the screen goes out for the time of voltage failure.
This functionality can be disabled in settings.ini:
Settings.ini
Mcu_power = false
2. The module has a white list of applications that does not allow the system to close necessary services and applications when going to sleep and when pressing the "Acceleration" button in the blind. Thus, the module allows to refuse from using mtc-wakeup-service .
Filename with exceptions whitelist.ini
The file name of the white list application packages must be listed.
#
example
3. Accelerated start of user services. The services are started when the system kernel is loaded.
The list of services should be on the external map in the mtc-manager directory, the file name start_services.ini
each line should contain the service name in the format package name / full service name,
#
example
4. An alternative screensaver with a list of exceptions, running in any (even a non-standard application). The standard screen saver mechanism is activated.
It may not work on all firmware.
Settings in the settings.ini file.
Settings.ini
# Inclusion of an alternative screensaver, if false, the standard mechanism will work:
screenClock = true
# screen off time, if not specified, the value from the
default settings will be used: screenTimeout = 60
# screen saver program name
screenPackage = com.microntek.screenclock
# screen saver activation name
ScreenClass = MainActivity
# if the package name and activations are not specified, then the standard screensaver will be used
The exception list is located in the ss_exceptions.ini file - the package names must be listed, for example:
Ss_exceptions.ini
com.microntek.music
ru.yandex.yandexmaps
Also the screensaver will not start when talking on the phone, the rear view camera, navigation and turning off the radio.
If instead of a beautiful clock MTCSreenClock.apk a screensaver with a standard digital clock on a black background is called, you need to make sure that the MTCScreenClock application is installed.
If the application is installed, you can try setting screenPackage and screenClass parameters in settings.ini
5. Also in the module there is a "backup" for correct sound adjustment in MTC-Volume and MTC-Service .
#
The adjustment of sound in firmware on Android 4.4.4
6. Re-designation of OBD-device bluetooth.
Device names must be listed in the settings.ini file in obd_device parameter, separated by commas, in the form in which they are visible in the standard hands-free application. You can specify not names, but parts of names, for example:
Settings.ini
Obd_device = OBD, DUAL-SPP
7. Set the list of programs that are switched by the MODE button,
In settings.ini, set
Settings.ini
ModeSwitch = true
Programs are switched sequentially one after the other.
For correct sound switching, the applications used must be managed (play / pause) programmatically via intents. If the player does not support the start and stop playback of external intents, then you have to manually switch the sound.
When you click on the MODE button, the active application is searched for in the running list. Next, the application is sent a command (configurable in mode.ini) to close or pause the audio stream. After that, the default activation for the next application is launched and the application is sent a command to start playback (also configured in mode.ini)
#
Mode.ini
8. Disable the launch of the last running program.
Settings.ini
Clear_last_app = true
9. GPS time synchronization.
Settings.ini
Sync_gps_time = true
10. Turn on w-fi at startup.
Settings.ini
Wifi.on = true
Paypal:
https://paypal.me/johnydj?locale.x=en_US
Hello,
Please help me a little, it was a more than one year since I updated my fw.
How do I update to this firmware, I forgot the procedure?
Is it clean install, all apps/data are going to be wiped and must be installed again?
Is there a way to backup current firmware/apps, like twrp image or something (in case something goes wrong)?
Thank you
grgart said:
Hello,
Please help me a little, it was a more than one year since I updated my fw.
How do I update to this firmware, I forgot the procedure?
Is it clean install, all apps/data are going to be wiped and must be installed again?
Is there a way to backup current firmware/apps, like twrp image or something (in case something goes wrong)?
Thank you
Click to expand...
Click to collapse
Backup with titanium backup all your apps you want.
wipe data/factory reset from recovery, then flash the image with clear all
With titanium backup restore your apps back, thats it.
hi johnny,
would like to check if u manage to solve these issues of
1. xposed volume bar in the center of screen instead of bottom
2. misaligned apps buttons in mtcbluetooth mtcwheelstudy etc.
thank you in advance
jun81 said:
hi johnny,
would like to check if u manage to solve these issues of
1. xposed volume bar in the center of screen instead of bottom
2. misaligned apps buttons in mtcbluetooth mtcwheelstudy etc.
thank you in advance
Click to expand...
Click to collapse
1. Did you activate xposed mtc manager module in xposed app ?
2. Can you post picture, I didn't experienced this issue on my unit using the same image...
3. Please note this is 1024 x 600 resolution image...flashing on 800 x 480 can couse this issues you have...
Will post pic once I get a chance. Had no problem with gui using the dsa's last dec 5.1.1 rom.
jun81 said:
Will post pic once I get a chance. Had no problem with gui using the dsa's last dec 5.1.1 rom.
Click to expand...
Click to collapse
I added screen saver in latest version. But still don't know why you have problems with resolution. I can upload stock apps and you can try if there is also problem or not...
What are the performance benefits from the dsa8310 rom on a 1gb ram headunit?
I'm currently running dsa8310 latest 5.1.1. on my 1gb headunit. What sort of advantages will I see if I flash to your rom?
iselfdevi said:
What are the performance benefits from the dsa8310 rom on a 1gb ram headunit?
I'm currently running dsa8310 latest 5.1.1. on my 1gb headunit. What sort of advantages will I see if I flash to your rom?
Click to expand...
Click to collapse
Hard to say without knowing the exact version of his ROM youre running currently, but generally its a good idea to update the software as it is on any computer/smartphone/tablet. You shouldnt have to wipe data if youre already using it.
Read the thread to see the improvements that have been made recently - he lists them all.
Waiting for the 800 x 480 version !
champikasam said:
Waiting for the 800 x 480 version !
Click to expand...
Click to collapse
Done, check it out
Johny DJ said:
Done, check it out
Click to expand...
Click to collapse
Awesome ! Will check and let you know
---------- Post added at 04:39 PM ---------- Previous post was at 04:06 PM ----------
Johny DJ said:
Done, check it out
Click to expand...
Click to collapse
Could you check whether 800 x 480 img file is properly formatted ? I'm unable to mount or extract it. Getting an error saying the img file is corrupted. Will try to download again and try.
champikasam said:
Awesome ! Will check and let you know
---------- Post added at 04:39 PM ---------- Previous post was at 04:06 PM ----------
Could you check whether 800 x 480 img file is properly formatted ? I'm unable to mount or extract it. Getting an error saying the img file is corrupted. Will try to download again and try.
Click to expand...
Click to collapse
Full dropbox, check again...
Johny DJ said:
Full dropbox, check again...
Click to expand...
Click to collapse
Downloaded again. Same error
champikasam said:
Downloaded again. Same error
Click to expand...
Click to collapse
I extracted microg_preinstalled_800x480LP5.1.1rk3188.MTCB-C(20.8.2017) without problems ??
Try to rename it to some short name: update or something...
New link .rar
https://www.dropbox.com/s/95j1iqvqv...0x480LP5.1.1rk3188.MTCB-C(20.8.2017).rar?dl=0
Johny DJ said:
I extracted microg_preinstalled_800x480LP5.1.1rk3188.MTCB-C(20.8.2017) without problems ??
Try to rename it to some short name: update or something...
New link .rar
https://www.dropbox.com/s/95j1iqvqv...0x480LP5.1.1rk3188.MTCB-C(20.8.2017).rar?dl=0
Click to expand...
Click to collapse
Thanks ! i was able to download using the rar file. Most of the functions are working great ! It's fast and responsive. Please check on the following:
1) I'm unable to see the task bar/notification drawer at the top. I'm on the default launcher. Do i need to enable it anywhere ? Check the photos below:
https://ibb.co/hiJM1k
https://ibb.co/f24GZ5
2) I couldn't find google maps installed by default. So i installed the latest version from the play store. Its working fine (fast and responsive), but it doesn't show up in the selection list when i press the navi button on the player (to set it as the default navigation app). I only see the following nav apps in the list:
https://ibb.co/gG4YE5
Thanks !
champikasam said:
Thanks ! i was able to download using the rar file. Most of the functions are working great ! It's fast and responsive. Please check on the following:
1) I'm unable to see the task bar/notification drawer at the top. I'm on the default launcher. Do i need to enable it anywhere ? Check the photos below:
https://ibb.co/hiJM1k
https://ibb.co/f24GZ5
2) I couldn't find google maps installed by default. So i installed the latest version from the play store. Its working fine (fast and responsive), but it doesn't show up in the selection list when i press the navi button on the player (to set it as the default navigation app). I only see the following nav apps in the list:
https://ibb.co/gG4YE5
Thanks !
Click to expand...
Click to collapse
1. Hm...really don't know what happend to statusbar... try to disable / untick all xposed modules and reboot to see if some of xposed modules is cousing problems... I hope you did wipe all data / factory reset and then clear all and install from usb/sd and after that you can try wipe all data again and reboot, but everything should work because it's the same image from dsa's just added all the xposed modules...,
2. Yes, I forgot it, I updated image again and here: just copy folder in the rar with root explorer to system/app and change permisions just Maps.apk to r-r-w (664) reboot.
Try just to find your launcher in the android settings - apps and clear data.
Maps: https://www.dropbox.com/s/m44hv1189is36fr/Maps.rar?dl=0
Hello !
First I have to thank you @Johny DJ for this beautiful firmware. It's faster than i ever had on my MTCC-KLD6-V2.97 1024*600.
Also I take this opportunity to thank @dsa8310 and @Malaysk for their brilliant work in this adventure.
I love you guys, all as you are.
This said, i have a question : What's the difference between the first firmware (released 14/08 i think) that works really good on my unit RK 3188 (1024*600) and the release of today ?
Also my only "problem" is the text "null null" (like here : https://ibb.co/dL3dU5) on the screensaver which i think it correspond normally to the weather in Malaysk's rom. So i tried to install the weather app provided by Malaysk called "MTCWeather.apk" but it does not work. I have to precise that the display of the speed works OK.
Does this new release correct this little issue ?
Again thanks for all and have a nice day.
Cheers !
airlink75 said:
Hello !
First I have to thank you @Johny DJ for this beautiful firmware. It's faster than i ever had on my MTCC-KLD6-V2.97 1024*600.
Also I take this opportunity to thank @dsa8310 and @Malaysk for their brilliant work in this adventure.
I love you guys, all as you are.
This said, i have a question : What's the difference between the first firmware (released 14/08 i think) that works really good on my unit RK 3188 (1024*600) and the release of today ?
Also my only "problem" is the text "null null" (like here : https://ibb.co/dL3dU5) on the screensaver which i think it correspond normally to the weather in Malaysk's rom. So i tried to install the weather app provided by Malaysk called "MTCWeather.apk" but it does not work. I have to precise that the display of the speed works OK.
Does this new release correct this little issue ?
Again thanks for all and have a nice day.
Cheers !
Click to expand...
Click to collapse
Thank you!
There is no so much difference, just added new screen clock, but there will be still null null. It won't work because it's settings are part of android settings from Malaysk.
You should try lockclock apk (its related to weather app)
If you find a solution I can update system image to get weather fully working, but I was not bothering with that, because then system will also use more ram etc...I will try to remove the null null item...
here are the apps you can try:
https://www.dropbox.com/s/sukxg16l2z4ygbr/apps.rar?dl=0
Johny DJ said:
Thank you!
There is no so much difference, just added new screen clock, but there will be still null null. It won't work because it's settings are part of android settings from Malaysk.
You should try lockclock apk (its related to weather app)
If you find a solution I can update system image to get weather fully working, but I was not bothering with that, because then system will also use more ram etc...I will try to remove the null null item...
here are the apps you can try:
https://www.dropbox.com/s/sukxg16l2z4ygbr/apps.rar?dl=0
Click to expand...
Click to collapse
@Hal9k_'s MTCD ROM has a screen lock, I asked him how he did it and he said he just added back the original Android code.
EDIT : Lol, stupid me you said "lockclock" not screen lock ! Doh !

[MOD][MAGISK][ANDROID 12] Addon Features for Pixel Devices - Pixel 4a Thread

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
​
What is this?
This is a Magisk module that adds the following cool custom features to any Pixel device (from 3a to 6 Pro) running stock Android 12 Pixel ROM:
Enable/Disable Google Sans font system wide
Adds Icon Styles and Icon Shapes overlays from Android 11
Fonts options
Enable/Disable Combined signal icons
Pixel 6 Wallpapers (requires an extra module, please check downloads section)
Adds 2 button mode navigation (it was removed on Android 11 but I think some users like that navigation mode, so I add it)
Adaptive sound options
Enable Voice access for all Pixel devices
Navigation bar options (reduce keyboard bottom space size, completely remove NavBar, invert layout*, set back gesture height*)
Enable/Disable SystemUI Tuner
Enable Game Overlay for all Pixels by default (although, if something goes wrong while playing games, you can disable this feature)
Enable/Disable dual tone battery meter (it only works on icon portrait mode)
Enable/Disable showing the number of unread messages on status bar notifications
Reduce Status bar height (and option to correct left padding on devices with the notch on the left)
Enable/Disable more themed icons on launcher (some apps don't have a themed icon so it won't work for all apps)
Enable/Disable left shortcut on Lock screen
Enable/Disable camera shortcut on Lock screen
Enable/Disable gradient effect on QS Tiles and Brightness slider
Hide gestures navbar pill (using transparency)
Colorize gestures navbar pill with dynamic accent color
Dark Themes from Android 11 Addon Features
Choose QS number of rows
Brightness slider padding and thick track options
Enhanced Google Dialer (to enable stuff like Call Recording and etc.)
Enhanced Smart Space (to enable stuff like Flashlight, Earthquakes options, etc.)
Enables some newer Pixel features to older Pixel devices (things like Live Translate, Haptic feedback settings, etc.)
Enable/Disable option to reduce QS Tiles text size (works better on some QS Tiles themes)
Option to install Tap Tap (a great app for devices without Quick Tap and even for the ones that have it)
These next features, also included in the MOD, indicates that framework-res and/or SystemUI were modded. This means that these next features will only work on devices running stock Android 12 Pixel ROM. I'll talk more about this later.
Enable/Disable Wifi + Cell QS Tiles instead of single Internet QS Tile
Battery Styles
Clock Customization
Network Traffic Indicators
QS Battery percentage independent options (show estimate time remaining or just percentage)
Dual tone Light/Dark themes for Quick Settings Panel and Power Menu
Album art on lock screen options
Music visualizer options
QS Quick pulldown with one finger (options are off, drag from the top left, drag from the top right and drag from anywhere on the top)
Revamped Screenshot service (it allows us to delete screenshot as soon as we take it and we can enable/disable screenshot shutter sound)
Show/Hide QS Edit icon on QS footer
Show/Hide Quick access Developer options icon on QS footer
Quick access Rom Control app by long pressing on QS Footer Settings icon
Edit Back gesture navigation height
Enable/Disable inverted layout for 2 and 3 button navigation modes
Enable/Disable carrier text on lock screen
Date, clock and battery click actions on QS Header (long click on clock goes to system time settings, simple click opens clock app)
QS Tiles animations and vibration options
Disabled icon blacklist on both status bar and lock screen(the icons can be disabled using SystemUI Tuner for those who don't want some icons to appear anywhere)
Override feature flags (This allows us to override feature flags manually using setprop persist.sysui.flag."whatever_flag_we_want" command)
Use 4G instead of LTE option
Resize navbar pill (normal, medium, big)
Tap to add or remove tiles in QS customizer
Enable/disable QQS Brightness slider
Enable/disable default QS Brightness slider
Auto brightness QS icon (on/off)
Brightness slider position (Top, Bottom)
Double tap to sleep on status bar
Double tap to sleep on lock screen
Enable/disable Double-line clock on lock screen and AOD
Enable/disable circle background on lock screen fingerprint icon (it only does anything on devices that have it, obviously)
Force accent color on ripple animation while unlocking with fingerprint
QS Tiles Styles
Edge Sense Plus MOD (it only works on devices with active edge sensor)
Battery Bar
-------------------//------------------
Rom Control app (to setup all these options)
Downloads:
Download latest module version from HERE! Further updates can be done using Magisk Manager.
Spoiler: Click to know more.
For more info about updates, please read THIS POST.
Addon_Features_for_Pixel_More_Live_Wallpapers.zip
Spoiler: Optional module. Click to read more.
This is an optional module. I've decided to remove everything regarding wallpapers from Addon features main module and create this one.​​I thought that it wouldn't make much sense to have a single module with almost 500 MB. So, this new optional module adds Pixel 6 static and live Wallpapers (obviously redundant for Pixel 6 users...) but, as well, it adds other Live Wallpapers that aren't normally available for download on Wallpaper & Style app (old stuff like doodle, conveyer belt, etc. from older pixels).​
Notes:
Spoiler: Please read them at least once. THEY'RE IMPORTANT!!
Since V17 the installer mod detects if your device runs into a boot loop after flashing it. If it does, and this will happen on any device not running stock Android 12 Pixel ROM, it will force a new reboot and will try to boot your device running a mod "Lite" version. The "Lite" version is nothing more than a mod version where the only features available are the ones above the red line text.
If you want those "exclusive features", the ones after the red line text, working on your current ROM you will have to port them yourself. I explain how to later on this post.
Those "exclusive features" are based on xml and smali changes made on stock SystemUI and framework-res. Without these changes the, "exclusive features" won't work.
Since this module replaces stock SystemUI and framework-res for modded ones, you could run into problems if some other module tries to do the same or it's simply incompatible with it. If you want to try any other mod that changes SystemUI, or framework-res, there's an option on ROM Control that allows you to disable those "exclusive features". After disabling them, your Pixel device will reboot with a "Lite" version as well.
Make sure that you're able to run adb shell as root before flashing this module and reboot your device. Just in case something went really wrong and you need to remove the module manually.
If your device really refuses to boot, after flashing this mod, connect your phone to your PC during boot and run this:
Code:
adb shell
​
Code:
su
​
Code:
rm -rf /data/adb/modules/AddonFeaturesForPixel/system/framework/ && rm -rf /data/adb/modules/AddonFeaturesForPixel/system/system_ext/ && reboot
​
This will only remove framework and systemui "modded" files. Without them, you're device will boot and the other features, that don't require modding, will work just fine.​​In fact, if you remove these files from the module zip before flashing, you can flash that modified zip on any device running any AOSP, or close to it, ROM.​​In case you want to completely remove the mod, you can just run this:​​
Code:
adb shell
​
Code:
su
​
Code:
rm -rf /data/adb/modules/AddonFeaturesForPixel/ && reboot
​
If you forgot to enable the ability to run adb shell as root, and if your device fails to boot, you can fix that by removing all Magisk modules you have installed. That can be achieved by running the following commands even without root shell during boot:
Code:
adb shell
​
Code:
magisk --remove-modules
​​
If none of the above methods work to get your device booting, then you have to boot into safe mode. By doing so, Magisk will disable all modules for you (it doesn't uninstall them, just disables them). To force a boot into safe mode all you need to do is to keep pressing volume down button during boot animation. After the system boots into safe mode you can reboot your device to boot up normally (since all modules will be disabled). If you get stuck during boot animation again, just force another reboot (I've had to do that during my tests).
When a new OTA update comes it's possible that the MOD will force boot with Lite version. Why? Because Google may change things on stock SystemUI and/or framework-res between builds. When that happens, I have to recreate the module again to adapt those changes. Rest assured that I'll always test the module with new builds and update as necessary.
In case your device gets caught in a boot loop, please provide me a logcat so I may try and look if anything can be done about it. To do so, during boot connect your device to your PC and grab a logcat with this adb command:
Code:
adb logcat > log.txt
After grabbing the log, please open the txt file and search for "FATAL". Afterwards post here the lines where the "Fatal error occurred".
I've made these modules for my personal use and just decided to share with all XDA community. Having this in mind, there's no need for donations (although I won't refuse them if you want to buy me a beer). As for requests or whatever, I can only add more stuff when, and if, I have time for it. I'm a really busy man in real life so I can't promise anything nor ETAs.
Requirements:
Unlocked bootloader
Magisk Root | Magisk Manager
Stock December 2021 Android 12 Pixel ROM build, or later until February 2022 for "FULL" version compatibility
Any AOSP, or close to it, Android 12+ ROM on any device for "LITE" version only (not fully tested...some devices/ROMs may not work)
Suggestion:
Uninstall all other modules you may have installed before installing this. They could be incompatible with the module thus making the device get caught in a boot loop. You may install them afterwards, one by one, just to make sure everything is ok.
If you're up to it, instead of disabling/removing modules, I recommend you to flash latest stock build through fastboot using flash_all.bat. In order to retain your data, remove the "-w" flag from the update command on flash-all script.
How to install?
Flash "Addon Features" module
Reboot device
If your device/ROM is fully compatible, everything will be ok at first boot
If not, your device will auto-reboot after first failed boot attempt and boot again with the Lite version only
Have fun!
How to update?
Open Magisk Manager app
Press the update button on"Addon Features" module
Reboot device
Have fun!
Video:
Spoiler: Click to see the video
You may check what to expect from this module HERE.
Note that this video was recorded when I've made this for Android 11. Some features may not be present for Android 12 and others can be that didn't exist for Android 11. The video is here only for those, who have never tried this on Android 11, may understand what to expect.​
How's these "exclusive features" even possible?
Spoiler: Click here if you're interested on learning how this works
All "exclusive" features that you see on the list above were reverse engineered from Proton AOSP and Evolution X ROM source code. The source code is available on the links bellow shown on the credits. This means that I've been practicing some hard core "old school" Android smali edition in order to get this working. So, yes, I have some credits about this but, if it weren't for the original developers and it's public source code, none of this would be possible. Thank them for this!
Smali, and xml, edition wasn't enough to get this working. After decompiling, changing/adapt the code and recompiling everything again, I had to find a way to make it bootable without messing with the original apk signature. And here is where VR Theme logic came in handy. So thanks for the original dev who brought us this feature.
As for ROM Control app....this was/is a project created by daxgirl and wubydax back in 2015! So yeah, I'm not bringing anything new here, I just followed their instructions in order to get the features working after editing smali/xml with the source code taken from PAOSP and Evolution X. The original app source code is also available on the link shared on the credits.
I've just combined all of the above into a Magisk Module and shared here so that we can get the best of both worlds....a stock ROM with custom features included.
Rom Control with "exclusive features" source code:
https://github.com/ElTifo/CustomSettingsForDevs/
Want to port the "exclusive features" to your Pixel device running on other ROM? Here's how:
https://github.com/ElTifo/CustomSettingsForDevs/tree/Pixel4a_Android12/app/src/mods
Credits:
Proton AOSP ROM team, specially @kdrag0n for all his work on Dual tone light/dark themes and other Proton AOSP helpfull commits.
EvolutionX ROM team, specially @joeyhuab
@daxgirl and @Wuby986 for ROM Control project and source code.
@Tulsadiver for showing me how to adapt VR Theme logic originally used on 3Minit Battery Mod by @gharrington.
@Ticklefish for Tickle My Android
@topjohnwu for Magisk
@Freak07 for Adaptive Audio
@trzpro for More themed icons on launcher mod
@Liranazuz5 and @roirraW "edor" ehT for all support and testing stuff.
@siavash79 for all help regarding module installation scripts and update feature from Magisk.
@iamlooper for At a glance enhancer module and it's install/uninstall logic which was adapted to Addon Features
Cheers and enjoy!
You're just amazing and great person, indeed!
Keep going, bro
thanks. i was waiting for this.
Does the module work on [KERNEL] [blu_spark r128]?
jachu76 said:
Does the module work on [KERNEL] [blu_spark r128]?
Click to expand...
Click to collapse
I've never heard about any kernel conflict with any Magisk module...so I guess there's no problem what so ever. Unless that kernel has something that unables the use of Magisk.
I've installed both of these modules and caused bootloop in my Pixel 5a.
In my case, the standard module works properly, but the SystemUI module causes a black screen. This has persisted after a full firmware flash over Fastboot. My initial suspicion was that I had the Android 12 Extensions module installed, and hooked via LSPosed, but even after disabling every module except for Addon Features and the corresponding SystemUI module, the issue persists. I also had some Fabricate Overlays installed for Android System, which were fully disabled for the purposes of testing compatibility. My phone is on the November update (notably SP1A.211105.002, not the .A1 build that Google pushed by accident)
I've attached the corresponding logcat. Looks like the main thing I can find is java.lang.UnsatisfiedLinkError: dlopen failed: library "/system_ext/priv-app/SystemUIGoogle/SystemUIGoogle.apk!/lib/arm64-v8a/libtensorflowlite_jni.so" not found, which I have verified is not present in a logcat without the module enabled.
EDIT: On my end, at least, the log doesn't want to attach- I've uploaded it to a pastebin that allows larger uploads like this. https://zerobin.net/?fd2cedbc89f0c0cb#v6HSPuXJFd8Kya9COoqVey1R7PLJLq3f4bL/3M+O6W4=
I also have bootloop (SP1A:210812.016.A1)
All of you who faced that TensorFlow error, please flash latest stock build through fastboot using flash_all.bat.
Remove the -w flag on the update command (inside the bat) before flashing.
Afterwards root the device again and flash both of my modules. Just those, no others so that nothing will interfere with the mod.
After successful boot (hopefully), you may try any other modules you want (except those who use VRTheme as well to mod SystemUI).
For the record, the error could be something like this:
--------- beginning of crash
11-10 23:44:55.943 2253 2253 E AndroidRuntime: FATAL EXCEPTION: main
11-10 23:44:55.943 2253 2253 E AndroidRuntime: Process: com.android.systemui, PID: 2253
11-10 23:44:55.943 2253 2253 E AndroidRuntime: java.lang.UnsatisfiedLinkError: Failed to load native TensorFlow Lite methods. Check that the correct native libraries are present, and, if using a custom native library, have been properly loaded via System.loadLibrary():
11-10 23:44:55.943 2253 2253 E AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: library "/system_ext/priv-app/SystemUIGoogle/SystemUIGoogle.apk!/lib/arm64-v8a/libtensorflowlite_jni.so" not found
As you may see, the system is complaining about not finding a lib that's inside SystemUIGoogle.apk. Obviously, the lib is present and this bug is just that...a bug.
I too faced this error during my early tests. I thought it was just a bug on my device since it got solved by flashing stock again.
Why did it worked because of that?
Beats me...
For texting purposes, try the Battery Mod by Tulsadiver. See if it works. At my end it didn't work as well (resulting on the same error) and that was when I knew I had to reflash stock.
Cheers!
jerbear294 said:
In my case, the standard module works properly, but the SystemUI module causes a black screen. This has persisted after a full firmware flash over Fastboot. My initial suspicion was that I had the Android 12 Extensions module installed, and hooked via LSPosed, but even after disabling every module except for Addon Features and the corresponding SystemUI module, the issue persists. I also had some Fabricate Overlays installed for Android System, which were fully disabled for the purposes of testing compatibility. My phone is on the November update (notably SP1A.211105.002, not the .A1 build that Google pushed by accident)
I've attached the corresponding logcat. Looks like the main thing I can find is java.lang.UnsatisfiedLinkError: dlopen failed: library "/system_ext/priv-app/SystemUIGoogle/SystemUIGoogle.apk!/lib/arm64-v8a/libtensorflowlite_jni.so" not found, which I have verified is not present in a logcat without the module enabled.
EDIT: On my end, at least, the log doesn't want to attach- I've uploaded it to a pastebin that allows larger uploads like this. https://zerobin.net/?fd2cedbc89f0c0cb#v6HSPuXJFd8Kya9COoqVey1R7PLJLq3f4bL/3M+O6W4=
Click to expand...
Click to collapse
Same issue on my device after flashing SystemUI module.
Mr.Demous said:
Same issue on my device after flashing SystemUI module.
Click to expand...
Click to collapse
Have you read the post I've wrote just before yours?
Issue persists even after reflashing (twice). 3Minit Battery isn't working either, same issue.
I did confirm that the resulting SystemUIGoogle has that library, so I have no idea what could be causing this...
I doubt this makes any difference, but which version of Magisk are you using? I'm using v23 (Stable).
I won't be around much today but can still test anything that doesn't require a PC to test while I'm out and about (namely new versions of the module, since that can be reversed with Safe Mode if need be)
jerbear294 said:
Issue persists even after reflashing (twice). 3Minit Battery isn't working either, same issue.
I did confirm that the resulting SystemUIGoogle has that library, so I have no idea what could be causing this...
I doubt this makes any difference, but which version of Magisk are you using? I'm using v23 (Stable).
I won't be around much today but can still test anything that doesn't require a PC to test while I'm out and about (namely new versions of the module, since that can be reversed with Safe Mode if need be)
Click to expand...
Click to collapse
I'm using latest Magisk Canary but tried on latest stable (23.0) on my early tests and it worked as well. My guess is that before flashing stock again we must first uninstall Magisk by choosing that option on Magisk Manager. "Completely uninstall Magisk", reboot, flash stock again, root again, try again and it should work.
Other users reported this worked on Telegram.
There's a user that tried this module on a ported Pixel 5 ROM to a Redmi Note 5 device and, even there, it worked...so...
Typhus_ said:
I'm using latest Magisk Canary but tried on latest stable (23.0) on my early tests and it worked as well. My guess is that before flashing stock again we must first uninstall Magisk by choosing that option on Magisk Manager. "Completely uninstall Magisk", reboot, flash stock again, root again, try again and it should work.
Other users reported this worked on Telegram.
There's a user that tried this module on a ported Pixel 5 ROM to a Redmi Note 5 device and, even there, it worked...so...
Click to expand...
Click to collapse
This, too, did not work. I fully uninstalled Magisk, rebooted, reflashed stock, rebooted, reflashed Magisk, rebooted, applied the modules, rebooted... black screen.
jerbear294 said:
This, too, did not work. I fully uninstalled Magisk, rebooted, reflashed stock, rebooted, reflashed Magisk, rebooted, applied the modules, rebooted... black screen.
Click to expand...
Click to collapse
That's odd. It should really work having done all those steps.
I guess the only last thing I could suggest is to completely reflash stock by wiping data and everything.
But, probably that's just too much trouble just to get this working...dunno...
The logs still report "TensorFlow Lite" lib issue, right? Or is it any other stuff?
Typhus_ said:
That's odd. It should really work having done all those steps.
I guess the only last thing I could suggest is to completely reflash stock by wiping data and everything.
But, probably that's just too much trouble just to get this working...dunno...
The logs still report "TensorFlow Lite" lib issue, right? Or is it any other stuff?
Click to expand...
Click to collapse
Not home at the moment, but IIRC it was indeed the same TensorFlow library that couldn't be found for whatever rhyme or reason.
Pixel 6 Pro, boots up and black screen flashes a few times on the lock screen and then the phone shuts down, reboots and after a second time of doing this flashing, the phone gives up and tells me that my data is corrupt and may need a factory reset
--------- beginning of crash
11-15 00:37:06.978 2012 2012 E AndroidRuntime: FATAL EXCEPTION: main
11-15 00:37:06.978 2012 2012 E AndroidRuntime: Process: com.android.systemui, PID: 2012
11-15 00:37:06.978 2012 2012 E AndroidRuntime: java.lang.NullPointerException: Attempt to write to field 'android.graphics.drawable.Icon com.android.internal.statusbar.StatusBarIcon.icon' on a null object reference
11-15 00:37:06.978 2012 2012 E AndroidRuntime: at com.android.systemui.statusbar.phone.StatusBarIconControllerImpl.setIcon(StatusBarIconControllerImpl.java:168)
11-15 00:37:06.978 2012 2012 E AndroidRuntime: at com.google.android.systemui.reversecharging.ReverseChargingViewController.updateReverseChargingIcon(ReverseChargingViewController.java:165)
stopthebadpuns said:
Pixel 6 Pro, boots up and black screen flashes a few times on the lock screen and then the phone shuts down, reboots and after a second time of doing this flashing, the phone gives up and tells me that my data is corrupt and may need a factory reset
--------- beginning of crash
11-15 00:37:06.978 2012 2012 E AndroidRuntime: FATAL EXCEPTION: main
11-15 00:37:06.978 2012 2012 E AndroidRuntime: Process: com.android.systemui, PID: 2012
11-15 00:37:06.978 2012 2012 E AndroidRuntime: java.lang.NullPointerException: Attempt to write to field 'android.graphics.drawable.Icon com.android.internal.statusbar.StatusBarIcon.icon' on a null object reference
11-15 00:37:06.978 2012 2012 E AndroidRuntime: at com.android.systemui.statusbar.phone.StatusBarIconControllerImpl.setIcon(StatusBarIconControllerImpl.java:168)
11-15 00:37:06.978 2012 2012 E AndroidRuntime: at com.google.android.systemui.reversecharging.ReverseChargingViewController.updateReverseChargingIcon(ReverseChargingViewController.java:165)
Click to expand...
Click to collapse
Thank you for your test, report and logcat.
I'm sorry for that issue regarding your data. That really shouldn't have happened.
I know now what caused that behavior. That was the exact same error that existed on Pixel 5 owners when I did this mod for Android 11.
The issue is caused by Network traffic indicators feature. I never figured out what could be wrong and the only solution I could provide was to completely remove the feature of showing Network Traffic on satusbar. The feature could only work if we choose network traffic location only on QS Header.
I'm going to try and create a new SystemUI module just for Pixel 6 users. Maybe I need to create a new one for Pixel 5 users as well since, it could be happening on Pixel 5 like it did on Android 11 (no one reported back so I don't know by now).
Once again, thank you for your test and I'm really sorry for the data issue.
Cheers!
Typhus_ said:
Thank you for your test, report and logcat.
I'm sorry for that issue regarding your data. That really shouldn't have happened.
I know now what caused that behavior. That was the exact same error that existed on Pixel 5 owners when I did this mod for Android 11.
The issue is caused by Network traffic indicators feature. I never figured out what could be wrong and the only solution I could provide was to completely remove the fature of showing Network Traffic on satusbar. The feature could only work if we choose network traffic location only on QS Header.
I'm going to try and create a new SystemUI module just for Pixel 6 users. Maybe I need to create a new one for Pixel 5 users as well since, it could be happening on Pixel 5 like it did on Android 11 (no one reported back so I don't know by now).
Once again, thank you for your test and I'm really sorry for the data issue.
Cheers!
Click to expand...
Click to collapse
No worries, I was still able to remove the module after booting into safe mode. Happy to help test and thank you for your work as always!
stopthebadpuns said:
No worries, I was still able to remove the module after booting into safe mode. Happy to help test and thank you for your work as always!
Click to expand...
Click to collapse
Link on the OP for the Pixel 6 version was updated. Can you try and test that new version, please? The name is the same but the file is new.
I've also added a version with the same "fix" for Pixel 5 users (in case this is needed for Pixel 5 just like it was on Android 11).
Hopefully, it will work.
Cheers!

Categories

Resources