Thanks for the suggestions.
So is there an official solution to this? I'm all for contributions but I don't know how well these contributed extensions are written. It sounds like I can try a few different extensions and see which one works best for my case. What if the author stops the support or changes the underlying code? Any way to see the code in the extension? Thanks.
BTW, I recognize @Taifun as the id has responded to several questions I posted. I will start with their extensions on the account of the id being very actively responding to my questions (good sign). I wonder if the MIT group is listening in on this forum since these features like formulas, displaying nearby BT devices (@Taifun has a custom extension BT classic that has it), and displaying WiFi routers (again @Taifun has one extension that official release has none). How would you teach a class with all these contributed extensions all over the place while the official release is so bare?
It sounds like you have found this:
which is probably your best approach....
If an extension is doing what you want, then theoretically you do not need support...
However Google might restrict functionality in a later release of the Android operating system and probably then an extension needs adjustment...
Only for open sourced extensions
It has not been updated with the new Webviewer event block that signals end of evaluation, so it still uses the Clock Timer.
Thanks. So Webviewer with a math expression processing library that is no longer available? I took the pain to build a few expressions like building a house in minecraft. My quadratic equation exercise was helpful. I wish the MIT academics would make this possible as a built-in feature. Is this ai2 project currently dormant? Do they not have funding anymore?
Good points. Thanks. I prefer open-source but if not possible I may prototype with free but not open-source extensions.
That's an interesting extension. Thanks.
So I'm building up my app, spent 2 days to get this much stuff. It's an app to connect to a BT sensor node to read sensor values.
One last convenient feature I'd like to achieve before the release would be to have a way to store a few calibration values to the app so it would be recalled each time the app runs. In python or even C/C++ in some cases, I would use json.dump() to dump a dictionary to a config file. Then I would use json.load() to load the parameters back in. What would be the proper way to achieve this feature within ai2?
Save to a list, then to a tinydb, and call back and use / update as required
Thanks. I found a tutorial on this:
So I made the save feature trigger when an entry loses focus and load values on screen1 init and updates the entry text. Works like a charm. It does have different save locations for the ai2 companion and an actual compiled app, FYI.
I made an updated math editor using the WebViewer that doesn't rely on a Clock.
Math.aia (56.6 KB)
It looks like this: (The top is the editor, the bottom shows the LaTeX source)
For those wanting a quick peek into the easrng solution, here are the parts, inline:
The Math.html file is too large to show inline.
It is in the .aia source, in the Media folder.
P.S. This would benefit greatly from the addition of a Latex editor front end, if any one is up to it.
Regarding your complaints about AI2 math formula representation,
I notice you cast your math blocks exclusively in external socket mode.
You can give your blocks a more formulaic appearance by switching some of them to inline mode for interior factors. That gives you a more compact representation, and helps group your terms.
The choice between inline/external is on a per block basis, in its context menu.
(added to FAQ)
Thanks for trying to help. I know about that. It just doesn't help the overall situation. Something that should have been included has never been included for this long and only contributed extensions solve problems that the official system should have done ages ago is very concerning to me.
Remember, AI2 is an educational tool maintained by a very small team at MIT, intended for people getting their first exposure to programming.
If you want to go on the AutoBahn, try a different tool.
@ABG ... very effective small team !!
No, it's not dormant. Yes, we have funding.
Part of writing software is recognizing the right tools for the job. It seems like potentially ours is not the tool for your needs. App Inventor is open source though so you're always welcome to check out the sources yourself and implement features you need.
Good for you to have academic funding despite the difficulty all around in academia.
I think you pointed out the root to my struggle, using the wrong tool. I saw arduino, lego, and other official components, and videos of a couple of gals having a blast building fun apps and I thought this tool may help me do something similar, connect to an actual device, talk to it, and do something simple to moderate, like that app enthusiast, who looked like a 20-yr old gal, so college level. I've never taught 100-level engineer intro courses but I know they do matlab and sometimes robotics. I imagine if I wrote an app that works with arduino or lego I could solve problems at that level. That may not align with this project. Maybe this is intended for younger audience with less emphasis on completing a specific task but more on having fun and enjoy making something new. I'm definitely down for new and fun when I'm not looking to complete a specific task.