[General Topics] revuwa:
[Short story]

Is there somebody, who has time and inclination to modify the AOSP Gallery2(.apk) app to get that to work on Android versions without graphics acceleration features?

[Long version]

I'm using the latest Replicant ROM. This is shipped with the legacy /system/app/Gallery.apk which has serious problems to show previews of images, and some image contents at all...

Replicant comes without OpenGL ES. So that's the case why the Gallery2.apk (which heavily relies on graphics acceleration features) crashes when I try to start that app with the following traces:

I/ActivityManager(2868): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.android.gallery3d/.app.GalleryActivity} from pid 3196
I/ActivityManager(2868): Start proc com.android.gallery3d for activity com.android.gallery3d/.app.GalleryActivity: pid=25408 uid=10066 gids={50066, 1006, 3003, 1015, 1028}
W/Trace (25408): error opening trace file: No such file or directory (2)
V/StateManager(25408): startState class com.android.gallery3d.app.AlbumSetPage
D/libEGL (25408): loaded /system/lib/egl/libGLES_android.so
W/dalvikvm(25408): threadid=12: thread exiting with uncaught exception (group=0x40cfc930)
E/AndroidRuntime(25408): FATAL EXCEPTION: GLThread 503
E/AndroidRuntime(25408): java.lang.IllegalArgumentException: No configs match configSpec
E/AndroidRuntime(25408):	at android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:865)
E/AndroidRuntime(25408):	at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:1026)
E/AndroidRuntime(25408):	at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1403)
E/AndroidRuntime(25408):	at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1242)
W/ActivityManager(2868): Force finishing activity com.android.gallery3d/.app.GalleryActivity

I've sent an email to a Replicant developer before, with the question, why Replicant doesn't use Gallery2? The answer was:

"On Replicant, it is too slow to be usable, has parts missing and many bugs because of the incomplete software-only graphics stack implementation we use".

I've temporary tested to add the proprietary OpenGL ES bits (on my Samsung Galaxy S2 [i9100]):

/system/lib/libMali.so

/system/lib/libUMP.so

/system/lib/egl/egl.cfg

/system/lib/egl/libEGL_mali.so

/system/lib/egl/libGLES_android.so

/system/lib/egl/libGLESv1_CM_mali.so

/system/lib/egl/libGLESv2_mali.so

/system/lib/hw/gralloc.exynos4.so

which enables graphics acceleration, and made the Gallery2.apk work. But I deleted them again, because I don't want to use that non free bits. So that's the reason why I'm using Replicant...

I also haven't found any open source alternatives for the Gallery2 app.

Tips are very welcome, too!

(I just asked the developer of

QuickPic: https://play.google.com/store/apps/details?id=com.alensw.PicFolder

if he doesn't want to release his app as open source in the future, but sadly he declined).

Now I'm searching for somebody, which could modify the Gallery2 sources:

https://android.googlesource.com/platform/packages/apps/Gallery2/

to get a patched version of the app to work on BLOB less Android versions.

I don't know the best practice way to find someone for that job. If somebody would give it a try, but don't wants to do that for free, you could leave a donation information and I would try to animate people to make a donation for you, (of course including myself).

Thanks for any answers, hints or any further help.