We are planning the next release of App Inventor for March 27th. ai2-test has been updated. This is a components release and will come with a new companion, which you can download from the test server (under Help > Companion Information). Some highlights in this release include:
New components (Magnetometer, Navigation, Serial)
New Screen properties to discover platform and version (e.g., customize behavior for Android or iOS)
New blocks, including a block to iterate over dictionaries, different numeric bases in math, and new text operations
Plenty of bug fixes
For full release notes that you can comment on, please see this Google Doc:
A special thanks to all of our open source participants who have contributed features and patches in this release.
Known Issues:
Navigation component crashes on Android versions < 4.4 (fix pending update) (Fixed with March 23rd update of ai2-test)
Regards,
Evan W. Patton, Ph.D.
On behalf of the MIT App Inventor team
Here’s an example app I built that uses the Navigation component to tell you how to get to Carnegie Hall. This will only work on ai2-test until we do the release, and you will need to provide your own API key from OpenRouteService.
I recorded a GenyMotion session of getting a copy of Emulator.apk onto a fresh emulator, and connecting to ai2-test. (I was trying to reproduce a problem I had on my laptop before, unsuccessfully.)
So I will repurpose the video to show how to use GenyMotion to test …
Regarding the Serial component, I notice you have BaudRate but not the other two attributes that defined a serial connection: bits (7/8) and parity (None/Odd/Even) in the old BBS days.
Is there a default?
Also, in GenyMotion Companion connection, I use the Connect->USB option.
Will this interfere with the Serial component at test time?
I don't think so, but you may need to do additional configuration in Genymotion so that it can see hardware attached to your computer. This may be a case where it is easier to test with a physical Android device.
As Evan says, the library uses 8 bits, 1 stop bit, and no parity:
Technically, it could be possible to set a different one using this method:
However, the question would be: is it really needed? I mean, there is no "mention" in the front page to set parity, which makes it feel like it is not really needed to be specified.
Do you know of any cases which setting the parity is strictly needed? That library was designed for Arduino, and it works perfectly using that configuration.
And also, won't it make the component too complex? Having to set a data size in bits, parity, stop bits (and specifying rts request to send, and dtr data terminal ready) may confuse some newbie users.
I think that, if it is needed, we could "extend" the component by making a modified version and distributing it through an extension, rather than making over-complex the existing component.
@ewpatton Here is a test AIA to demonstrate some of the new WebView changes. It is a web browser that uses the new BeforePageLoad event and Stop method to block URLs that match a list of websites.