REAL Sony Bravia Engine mod for Samsung Galaxy S3 I9300 under test

the long awaited, a REAL and working Bravia Engine mod for SGS3 Android 4.1.2 is now under test. couple of screenshots here and see the different at the larger thumbnails on the right hand side column (not the folder column on the left)

note that this mod is still in early development stage


Original
with Bravia Engine


















reference:
more Bravia Engine screenshots marked with differences
Galaxy Note with Sony Bravia Engine Demo
SGS2 ICS 4.0.3 Sony Bravia Engine demo with wallpaper rendering available
now with wallpaper enhancements - SGS2 wallpaper Sony Bravia Engine demo
SGS2 Gallery Sony Bravia Engine demo

Premium Suite for Samsung Galaxy S3 rolling out

Samsung just started rolling out the Premium Suite upgrade for their flagship GT-I9300 Galaxy S3 in UK. certain new features found in the Galaxy Note 2 will be included in this Android 4.1.2 update like Multi Window, as well as other new camera enhancements like Best Face and Low Light Mode, Paper Artist, Contextual Awareness and the like






watch the official videos here to learn more about the Premium Suite:
Premium Suite Upgrade for Galaxy SIII (Part 1)
Premium Suite Upgrade for Galaxy SIII (Part 2)

I9300XXELL4 I9300XXELL5 new Android 4.1.2 firmware for Samsung Galaxy S3 released

two new Samsung Galaxy SIII GT-I9300 4.1.2 Jelly Bean firmwares XXELL4 and XXELL5 released for Russia and Germany (Vodafone) respectively. it is reported that the home screen redraw problem has been resolved partially, with some more improvements are expected as the branded XXELL5 contains much more changes


I9300XXELL4 firmware details:
pda: XXELL4
modem: XXELL4
csc: OXEELL1
build date: 10 Dec 2012


I9300XXELL5 firmware details:
pda: XXELL5
modem: BUELK1
csc: VFGELL1
build date: 11 Dec 2012


download links:
XXELL4 (by sammobile)
XXELL5 (by sammobile)

fix Android memory full boot loop soft brick bug

IllegalStateException:
"Cannot broadcast before boot completed"
log:
"Running low on memory. Sending notification"

perhaps this is the most ridiculous bug that annoyed many Android users, especially normal users. if i were not able to find the root cause of this bug, i think i would have to reformat the whole device and start to pray. just can't believe it is still there in Android 4.1.2



what is this about?

during the boot process, the checkMemory function will be called to see if your memory (disk space) is full or nearly full. if this is the case, it will send a "Phone storage is full. Delete some files to free space." notification to the users telling them the device is running out of memory (space). thus, users will be alerted by this notification message which, supposedly, shown as a ticker in the status bar

but for some reasons, all notifications will be "checked" by the verifyBroadcastLocked function before sending to the users by showing a message in the status bar, for instance. the "checking mechanisms" include the status of the device, like whether the phone is booted up already. this is very straight forward since it will be pointness to show any notification if the phone is not booted up yet. these notifications will be dropped or should be queued up and will not be sent to the users until a proper time has come. in this case, screen is on or the home screen (desktop) is drawn could be regarded as a proper time



why is this happening?

if one boots up his device which the memory is neary full, then during the boot process the checkMemory function will send a notification to inform the user about this and logged as "Running low on memory. Sending notification". however, since the device is not booted up yet, the verifyBroadcastLocked function will not allow to send this notification for the reason that the boot process is not yet comlpete and throw an IllegalStateException "Cannot broadcast before boot completed"

when this fatal IllegalStateException is sent by verifyBroadcastLocked and received by the system, the boot process will be crashed. this crash event alerts the system that the previous attempt to boot was a failure, which in turn will try to boot the system again. now the device will begin to boot again and during this second boot, the checkMemory function will send a memory low notification again, followed by another "Cannot broadcast before boot completed" IllegalStateException and hence, a boot loop (some describe as soft brick) is created, as illustrated in a simple flow chart as below:

booting up --> low memory/memory full --> send notification --> notification dropped and IllegalStateException thrown --> failed to boot --> try to boot up again --> booting up --> low memory/memory full ...... --> fail to boot --> try to boot up again ......


so if your phone enters a boot loop for unknown reason, try to take a look at the log. if you find something like "Cannot broadcast before boot completed" or "Running low on memory. Sending notification" in the log file, you will know why and how to solve it



how to solve this problem?
1/. always keep an eye on your phone and make sure you have "sufficient" memory (disk space). unfortunately, the word "sufficient" is defined by Google, the programmers, the manufacturers, etc, which could be 2%, 5%, 10% of the total available memory, and can be different in different Android versions, different firmware versions, etc

2/. modify the sending low memory notifications process by:
a) removing sendNotification in checkMemory function in DeviceStorageMonitorService
b) handling the IllegalStateException thrown by verifyBroadcastLocked in ActivityManagerService in a better way


for me, i opted to disable the sendNotification in DeviceStorageMonitorService.smali found inside services.jar as temporary solution. here's how to (based on stock I9300XXELKC):


[i] find the lines that read like:

const-string v2, "DeviceStorageMonitorService"

const-string v3, "Running low on memory. Sending notification"


[ii] remark the following lines a few lines after [i] (line 229 and 230 in my case, may be differnet for you):

### low memory --> boot loop bug --> Cannot broadcast before boot completed
.line 229
#invoke-direct {p0}, Lcom/android/server/DeviceStorageMonitorService;->sendNotification()V

.line 230
#iput-boolean v7, p0, Lcom/android/server/DeviceStorageMonitorService;->mLowMemFlag:Z


by commenting or removing these lines, no memory full notification will be sent but a log will be printed to the system log, and the memory full boot loop bug can be avoided




I9300XXELKC Android Jelly Bean 4.1.2 for Galaxy S3 released

Samsung started to roll out JB 4.1.2 XXELKC for Galaxy S III GT-I9300, which contains several new features like multi view introduced in Galaxy Note 2, new gallery, new Samsung Keyboard with continous inputs support, etc


firmware details:
pda: XXELKC
modem: XXELKC
csc: OXXELK4
build date: 30 Nov 2012

some build info:
ro.build.id=JZO54K
ro.build.display.id=JZO54K.I9300XXELKC
ro.build.version.incremental=I9300XXELKC
ro.build.version.sdk=16
ro.build.version.codename=REL
ro.build.version.release=4.1.2
ro.build.date=Fri Nov 30 17:54:15 KST 2012
ro.build.description=m0xx-user 4.1.2 JZO54K I9300XXELKC release-keys
ro.build.fingerprint=samsung/m0xx/m0:4.1.2/JZO54K/I9300XXELKC:user/release-keys
ro.build.PDA=I9300XXELKC
ro.build.hidden_ver=I9300XXELKC
ro.build.changelist=566833

download links:
XXELKC - link 1 (by sammobile)