I am trying to receive SMS text using AI2. Firstly I had a problem sending SMS Data without the android messaging App opening. This was thanks to google and I have sorted it using the other AI2 Companion.
Now I am trying to receive A SMS and display the data and the android messaging App opens and the data stays there and dose not come to the ai2 app.
I have used the No texting while driving app as an example and it does not work as i am receiving no data.
Is this also part of the google problem?
Is the ReceivingEnabled set to Off? If so, set it to one of the options as shown in the image.
Set to either Foreground or Always. Please read Component Documentation http://ai2.appinventor.mit.edu/reference/components/social.html#Texting
The default setting for ReceivingEnabled was changed from I believe Foreground to Off to conform to Google guidelines. The NoTexting tutorial was written when the default was Foreground. If you have this set to Off, that is the probable issue.
Try setting to Foreground or Always and let us know what happens.
Thanks a million it works
Hi, Im new in this forum, and with ai. I have the same problem, but the option ReceivinEnabled is set on Always. But it works only when my App is in the foreground. Any Idea ? I wont make an App which make an Sound when I receive an SMS from an selected number…
Sorry for this bad english …
Read this completely The application has stopped receiving text messages in the background .
You have a similar issue. Yes, with some cell providers if Always is set , queuing of messages does not work. So you discovered ‘it works only when my App is in the foreground’ despite selecting option 3 … Always. Why? It might not be working because of an issue with your Android version (possibly this feature does not work with some Android os); or it could be an issue with your cell phone provider (they do not que messages the way MIT says in their documentation) or MIT has a bug that prevents the option working on every phone and phone network. A solution is to use option 2, if you want to copy all messages, keep your Android active using a Stay Awake routine
Stay Awake block routine using a Notifier
or you use Taifun’s Tools Extension: https://puravidaapps.com/tools.php
Using either an extension or a block routine drains your device battery rapidly . These work around methods are not running the app in the Background, they force the app
screen to stay open .
If your is running in the foreground it should ’ make an Sound when I receive an SMS from an selected number…’ using foreground. Even if the Always option was working in your app as it should, the app would NOT be able to make a sound (alarm). The option is supposed to do (but some times does not) send a notification. The comportment does not provide an event handler that will work when in the background. The documentation indicates :
ReceivingEnabled property is set to 1 messages will not be received. If
ReceivingEnabled is set to 2 messages will be received only when the application is running. Finally if
ReceivingEnabled is set to 3, messages will be received when the application is running and when the application is not running they will be queued and a notification displayed to the user. Unfortunately, sometimes that does not happen. Be happy with option 2 (Foreground).
Thank you for your reply.
I have been going over the youtube tutorial on NoTextWhileDriving . This thread got me closer in resolving the same issue. Thanks for the tip on receiving enabled. Once I switch it to always i am getting
Error 908: The permission RECEIVE_SMS has been denied. Please enable it in the setting app.
I have tried giving permission in the phone SETTING menu … I gave everything I can to AI companion app. But nothing works. Am I at the wrong setting ? What am i missing ? Thanks in advance for any help
Getting the Version 2,58au of the companion fixed the problem
For me, I was making a texting app and it didn't really work for receiving messages until I asked for permission SEND_RECEIVE_VIA_MESSAGES. The ask for permission block is in screen1.
Also if your goal is to SEND messages, then as mentioned above set the ReceivingEnabled to Foreground or Always.