You can get all previous Processing versions from the Processing download page … scroll down and you’ll find the link. This takes you to the required GitHub page … just find the 4.0.1 version and it’s “Assets” drop-down.
Once running, try the most recent Android Mode with it and see what happens.
@svan Thank you for the offer. I agree the setup is key. Also the basic underlying system changed from ‘ant’ between 4.0.1. and 4.1, I don’t know if that has a bearing.
I think from what you say, I only need to use the SDK to obtain the proper platforms rather than code the project. If so, I have done that and it was the only reason for installing it, because I could not use the command line sdkmanager. I did install platform 18-19-20 for kitkat and already there were 33 and 35 and they all showed up in the ‘Documents/processing/android/sdk/platforms’ folder. I assume that when I did that and pointed the PDE to the sdk folder it would be properly recognised. The path did show in the processing PDE ‘preferences.txt’ file.
If I am wrong then I will ask for that guidance, thank you.
@shedMusic Thank you again.
I had found the link you mention but as I say there is no download of the PDE (Processing.dmg). I cannot find the drop down ‘assets’ you mention. Page 2 shows v4.0.1 the pages only show the release note differences between releases. I obviously may be mistaken but I cannot see it.
I will try your suggestion from the second post tomorrow now, unfortunately.
Good night.
@shedMusic
Sorry and thank you. I obviously need a white stick. Assets is so obvious I cannot believe I missed it. I will proceed as suggested.
EDIT: Download speed is average 20kb/s (3 hours), it must be throttled, other downloads are normal.
@shedMusic
I did not get it, it gets to 85-90% and stops. So I have done as you said. In Studio I connected the tablet and found it as you said. I then got continuous messgaes without doing anything. Discovered that in logcat top bar Right I needed to select ‘show only selected application’ then to its left select the sketch from the drop down and to its left select the tablet. Then I cleared logcat screen by right click and ran the sketch. I changed ‘verbose’ to ‘error’ to eliminate the white messages. The red errors did not enlighten me. Perhaps it is clear to you?
It is a pity one cannot simply upload a txt file. Below…
05-02 14:17:42.560 733-733/? E/dalvikvm: >>>>> Normal User
05-02 14:17:42.560 733-733/? E/dalvikvm: >>>>> processing.test.sketch_250502a [ userId:0 | appId:10237 ]
05-02 14:17:42.690 733-733/processing.test.sketch_250502a E/ActivityThread: Pause GC
java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at android.app.ActivityThread.pauseGC(ActivityThread.java:5410)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2277)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2392)
at android.app.ActivityThread.access$900(ActivityThread.java:169)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1280)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5487)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.UnsatisfiedLinkError: Native method not found: dalvik.system.VMRuntime.pauseGc:(Ljava/lang/String;)I
at dalvik.system.VMRuntime.pauseGc(Native Method)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at android.app.ActivityThread.pauseGC(ActivityThread.java:5410)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2277)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2392)
at android.app.ActivityThread.access$900(ActivityThread.java:169)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1280)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5487)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
at dalvik.system.NativeStart.main(Native Method)
05-02 14:17:42.720 733-733/processing.test.sketch_250502a E/dalvikvm: Could not find class 'android.os.LocaleList', referenced from method androidx.core.os.LocaleListCompat.wrap
05-02 14:17:42.820 733-733/processing.test.sketch_250502a E/dalvikvm: Could not find class 'android.support.wearable.watchface.CanvasWatchFaceService', referenced from method processing.a2d.PSurfaceAndroid2D.<init>
05-02 14:17:42.825 733-733/processing.test.sketch_250502a E/AndroidRuntime: FATAL EXCEPTION: main
Process: processing.test.sketch_250502a, PID: 733
java.lang.VerifyError: processing/core/PSurfaceNone
at processing.a2d.PGraphicsAndroid2D.createSurface(PGraphicsAndroid2D.java:180)
at processing.core.PApplet.initSurface(PApplet.java:538)
at processing.android.PFragment.onCreateView(PFragment.java:149)
at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2963)
at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:518)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2189)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2100)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:2002)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3138)
at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:3072)
at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:251)
at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:502)
at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:251)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1177)
at android.app.Activity.performStart(Activity.java:5461)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2392)
at android.app.ActivityThread.access$900(ActivityThread.java:169)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1280)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5487)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
at dalvik.system.NativeStart.main(Native Method)
@shedMusic
Yes I hid the white, but if required \i can rerun and include all, some of which interleaved the red.
I shall be grateful for you looking at this mumbo jumbo (to me).
The slow download mentioned earlier speeded up this afternoon. I have so far tested AndroidMode versions 271, 410, 411, 412, 413 with processing v4.02 and v4.1, all produce the same; no errors on build but simply close on the device.
I found another post from (svan) which appears to be showing the same PSurface error where somebody provided an AnroidMode 410 to supposedly clear that. As shown here I tried that to no avail.
Once again, good night.
@shedMusic
Thank you for your continued support.
The device is Samsung Note 8 GT-n5110 WiFi. Android version 4.4.2
Kernal version3.0.36~civZ-KK_RUNNER-Rev1.1-kk.bl-5110~
vivato@ubuntu #1
Mon Oct 6 00:03:39 CEST 2014. Build number KOT49H.N5110XXDNE1
SE for Android status Permissive
I remember I installed an upgrade and the pen no longer lined up with the underlying screen grid. I then rooted and installed a custom ROM in 2020? Clockwork Mod comes to mind. I did that because the pen no longer lined up with the underlying screen grid making it useless. After the installation it was perfect. Nothing has changed on the tablet since and I last uploaded the game in 2023/4.
Despite all this there is a combination of SDK, androidMode and Processing out there that worked perfectly with this Samsung. I know I used Processing 3.5.4 and possibly 4.01 but that is vague. I know the SDK was installed by Android Studio but I always used the PDE for simplicity. There seem to be many versions of androidMode and I would not have noticed what I had, it just worked.
I may have been using Windows 10 at the time or Mac I cannot say for sure.
EDIT: I have just realised that the Processing logo on the Samsung screen for the current version of the game is the green circle, filled black with a green triangle in the centre. Does that not mean that it was created with a vesrion 3 not 4??
Thanks for the new info. So you don’t have KitKat even installed now? I accept that you did have a working setup, so all this may be irrelevant, but I think there may be 2 issues. First the fact that Kitkat (or whatever your replacement ROM is) has a bug in it relating to implementation of garbage collection, and second a separate issue with Processing/Android mode combination.
Best solution for now, I guess is to try and get back to the setup you had when it was working, which is what you are doing, but not easy or even possible to have Processing 3 running on a silicon Mac? Do you have an old Intel Mac/PC you could try with?
The crash is being caused by an error when trying to pause the garbage collector as the app initiates … nothing to do with your code. It’s throwing an error that isn’t being ‘caught’ so I am wondering if earlier versions of Android Mode did catch the error but newer versions have that removed for some reason? This is getting deeper than my knowledge extends to but it would make sense. It would be useful if someone on the AndroidMode dev team could advise here!
You say you have an uploaded app … is that on Google Play?
EDIT: ps the kitkat 4.4.2 upgrade also introduced a screen resolution/dpi bug that is likely the cause of your pen not lining up
@shedMusic
Thank you for that clue, not that it is within my knowledge range.
Yes; Android 4.4.2 as noted in my response. The ROM was a cure for some KitKat (4.4.2) problems but retained the Android version number 4.4.2. I read the info I supplied from the tablet.
The tablet is exactly as it was when I last uploaded the working game.
I have this morning searched an old PC laptop. It contains many different backup iterations of Processing, which I will have to try. It even has Processing v1.5. when I worked with an Arduino.
The most prominent PC setup I just found seems to have been Processing v3.5.3 & v3.5.4 with sdk platform 26 (which seems odd when KitKat [4.4.2] was platform 19). The androidMode seems to have always been v271 and v279.
I know I finished up on macBook Pro laptop (intel) Big Sur which I still have (but no remnants of Processing left).
I did attempt a few days ago, as mentioned on the other thread to run 3.5.4 & sdk platform 19 but a current androidMode (so too new) on the macBook with the same ‘stopped’ result.
My next test will be on the macBook but use androidMode 279.
Then test all the new found Windows versions.
I only use the M2 with the new Samsung Android 12 tablet because the old tablet has the problem.
The upload mentioned referred to uploading to the tablet. (red herring)
Hope that all makes sense.
It’s been interesting digging in to this .. learnt a lot.
I feel for the Android Mode devs having to keep up with the ever changing rules imposed by Google … must be very hard to keep up, and I’m aware there’s ever more coming from Google.
Thanks again for your help, glad you got something out of it. I will post back if I get anywhere. The configuration I had must be reproducible, but it is only worth a certain amount of time. You are right, it needs help from a developer. Failure, will mean it is going to happen again with the newer tablet eventually.
If anybody knows how to set up an old configuration that doesn’t then download something and mess it up, please let me know.
@shedMusic
Much appreciated but do not waste your life on this. Tests on Windows did not work; over to macBook (intel) which will keep me busy, being the most likely.