MIT App Inventor version nb198

MIT App Inventor version nb198 is now up on ai2.appinventor.mit.edu. This version contains the following changes:

  • Target Android SDK 34 to comply with Google Play requirements
  • BluetoothClient will now ask for Bluetooth permissions on Android 12+ rather than raising a PermissionDenied error
  • Fix an issue where conditional permission constraints were not being included in compiled apps (affected the BLE extension in particular)
  • Picker components will no longer open if a block within the BeforePicking event raises a StopBlockExecution exception.
  • Fix a spelling error in ActivityMetadata that could result in aapt failures.
11 Likes

within = inside?

Sorry, Language BIAS.

If BT is disabled you get an runtime (permission) error:


There is no way to catch this (at least not if you want to do it in one step) since the PermissionGranted event is no longer triggered.

BTclient_test2a.aia (9.3 KB)


See also here: Bluetooth liste of devices deosn't work anymore - #7 by Anke

Do you see the same issue on code.appinventor.mit.edu?

1 Like

Yes.

This isn't an SDK 34 specific issue then, as code.appinventor.mit.edu is running the previous release targeting SDK 33. Can you give a complete stack trace from adb?

That was clear to me and that's why I referred to your change note regarding the BT permissions in my post.

Please check this issue too ,

while using some extension like firebase it occurs

Hi, this bug is still unsolved in this released, right?:
https://community.appinventor.mit.edu/t/listpicker-title-is-not-showing-on-screen/100332/9

BLUETOOTH_CONNECT must be granted before BT can be enabled (at least in a direct way, as I showed). So it can be done using a timer:

But is this really easier than it was before, by requesting the BT permissions manually (like I showed in my test aia, BTclient_test2.aia)? I don't think so.