Testing the next release of MIT App Inventor (nb187)

Thank you but i cant share project because it contains paid extensions.

I found the solution cardview and recyclerview libraries are only added if we use listview component.
and using defualt listview as invisiable it works .

3 Likes

So make a sample project with no paid extensions that will produce the same error.
Unless you think the problem is with two recyclerview libraries in your project? Perhaps extension developers will have to adapt their extensions to the new ai2.

2 Likes

This class was not found at runtime.

No way extensions can use resource files, as of now.

1 Like

Yes but i tested with decompiling 2 apps ,
One black project and one with listview component

  1. There is no cardview and recyclerview libraries inside androidx folder in blank project
  2. Another one have both files

So i think if any external extension uses cardview and recyclerview we must use defualt listview as dummy

1 Like

New Listview component. When clicking in the "second" textbox you have to click twice to be able to edit the textbox. It is difficult to see in the gif but when you click the first time you can see a cursor appear and then disappear. You have to click a second time so you can edit the textbox. This goes for both textboxes. If you start with Detail Text the problem is with Main Text and vice versa.

When you go back to all ready entered items you always have to click twice in the textbox to edit the text.

5 Likes

Simple example of ListView.

nuevo_visorlista.aia (31.4 KB)

The separating line between two elements is not clear.

4 Likes

Hi! Thanks for testing out the new helper blocks :smiley: I looked into all this stuff, and I think it's behaving as intended.

Left red bubble: That block represents a value ReadExternalStorage of type enum Permission, so I think that's correct.

Right bubble: As stated above, it is of type enum Permission, not string. This was a design decision. Basically unless we need to coerce an enum to it's underlying value (in this case string) we don't. That keeps the blocks more type-safe and less error prone.

Blue Bubble: Hmm that's a bit tricky. The thing is, the "underlying value" is "READ_EXTERNAL_STORAGE" (see here), so those two things are not equal. I'm not sure how to resolve this (or if the core team wants it resolved) but hopefully that explains the weird behavior.

Thanks again for trying it out. I can't speak to your other issues, but hopefully someone else can!

Best wishes,
Beka

5 Likes

Thanks for the explanation.

1 Like

I uploaded 2 complicated projects I've been working on. They both work on the current server but crash when trying to open after installing the apks built from the test server. They also crash when running from the companion on the test server.

Both show this error in the companion:

invoke: no method named `GetValue' in class java.lang.Boolean
Note: You will not see another error reported for 5 seconds.

I assumed this refers to dictionaries or tinydb, even though dictionaries and tinydb seem to work on the test server when building from scratch.

I also get an error when trying to use the taifun tools extension to keep the screen on.

I attached the less complicated app if it helps. It is still quite involved though. I can't replicate the errors when building a simpler app on the test server.

1 Like

you forgot to tell us, which error exactly you get... also which Android version are you using for your trests?
Unbenannt
I now tested an example app on the test server in the companion app and as apk file, which does not result in an error...

Taifun

2 Likes

Thanks for the reply. This is the error:

invoke: no method named `KeepScreenOn' in class java.lang.Boolean

Again, if I make another app from within the test server using your extension, it works, but for whatever reason if I upload an aia that is working in the current release, I get errors, incomplete loading and crashing when building from the test server.

This is on a pixel 3a, android 11.

@ewpatton Is extension aar support PR added in https://ai2-test.appinventor.mit.edu ?

Regards

3 Likes

I can confirm what @Boban was already whispering. As soon as there is any button, label, image, ... in a tableArr, there is a crash. An empty tableArr does not crash, not even with @Taifun's KeepScreenOn block. Tested on Android 11 and 9 with the same result.

Recommendation: Avoid tableArrs and replace them with horizontal / vertical arrangements.
(Btw, this general advice was also valid before the nb187 release.)

3 Likes

I've identified the underlying problem with the TableArrangement and am putting together a fix.

6 Likes

No, we won't be including the .aar support in this release. Because of the nature of the AAB change and its implications on building apps we thought it might be better to split up additional changes to app building into a separate release. Since these changes only affect the buildserver, we can deploy them separately once we know the upcoming build system is stable.

6 Likes

Does the error appear in the companion app or after building the app in the apk file?
Unfortunately I'm not able to reproduce the error neither in the companion app nor the apk file...

I created a small test project which only uses the KeepScreenOn method during Screen.Initialize on the production server, saved the project, uploaded it on the test server built it and after opening the project everything seems to be normal without error...

Taifun

test187.aia (23.8 KB)

2 Likes

Any specific data / time when the .aar files support would be added? Would love to see it soon!

The error appears in the companion. I can't get my apps to start after installing the apks that were built on the test server. Everything works as it should if I use the current production server -either companion or apk) I don't get any errors when using your extension on new projects on the test server.

Could you try testing the .aia I posted yesterday to see if you get the same error in companion?

I hope Anke is right, that is all stems from tables, but I don't know why that would lead to the errors I get (getValue and KeepScreenOn when I uploaded older projects)

ai2-test.appinventor.mit.edu + Bluetooth LE Extension 20200828 + MIT Companion 2.60t4u

it doesn't work for me with Android 9.

I tried to trip up the new smart text blocks by using the Download Blocks As Image facility to see how a new project would react when a block with dangling references was dragged into it.

(I resolved the red X errors by pulling in missing components and global variables for the blocks with red errors.)

One thing I did not fix was the reference to a missing Screen at the bottom.

It did not appear on the warning or error counts and it showed its status with a new, unique error indicator: a red border.

Using the pulldown list to select a Screen removed the red border.

I wonder why the potential error (opening a nonexisting screen) did not get flagged with a red or yellow X and appear in the error block navigation lists and counts?

(This is not a deal breaker, it's still an improvement over before.)