Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Could an iOS application read/access SMS text?

I want to implement an iOS application which will use the SMS text as raw information. I think Apple does not allow this. Could an iOS application read/access SMS text? or do we have any other approach to do the same?

Modification: Can we read service messages which are not saved in the SMS box like balance message?

like image 825
Saurabh Shukla Avatar asked Oct 26 '13 06:10

Saurabh Shukla


People also ask

Can iOS app access SMS?

No, there is no way to read SMS messages. Apple is very strict on this due to privacy concerns. Log in to the developers portal and click App Store Review Guidelines.

Can apps read your text messages?

With your permission, some Google and third-party apps can access your messages to provide companion experiences like when you restore messages to a new phone or app, or when you send message notifications to your home device, smartwatch, or car.

Is there an app that can read someone else's text messages?

Xnspy is our top choice as the app to see who someone is texting. It's pretty user-friendly and comes with basic and advanced spying features. It allows you to clone a cell phone to see text messages so that you can remotely track all sent and received SMS on both Android and iOS.

Can iPhone read your text messages to you?

Change the speech settings Go to Settings > Accessibility > Spoken Content. Adjust any of the following: Speak Selection: To hear text you selected, tap the Speak button. Speak Screen: To hear the entire screen, swipe down with two fingers from the top of the screen.


2 Answers

Correct, you cannot access these on a standard, non-jailbroken iPhone. You should file a bug with Apple, perhaps they'll improve SMS access in the future.

  1. Not possible
  2. Check this

  3. For SMS sending through application allowed but for accessing inbox for sms/email not allowed.

It is only possible when the phone is Jailbreaked. There are many tools to jailbreak your phone.

Once Jailbreaked, an application cal open the SQLite database at

/var/mobile/Library/SMS/sms.db and read the message table.

It contains, the date/time at which the message was received, the sender/recipient phone number and even the clear text of the message.

like image 198
Pradhyuman sinh Avatar answered Sep 30 '22 16:09

Pradhyuman sinh


I'm pretty sure that it can only be done on jailbroken phones.

Put this launchd plist in /System/Library/LaunchDaemons. It will trigger the script whenever the sms database changes.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
 <key>Label</key>
 <string>com.billybob.SMSremote</string>
 <key>ProgramArguments</key>
 <array>
 <string>/usr/sbin/script</string>
 </array>
 <key>Nice</key>
 <integer>20</integer>
 <key>WatchPaths</key>
 <array>
 <string>/private/var/mobile/Library/SMS/sms.db</string>
 </array>
</dict>
</plist>

For the script I'd use something like the following to determine if there is a message containing the string:

sqlite3 /var/mobile/Library/SMS/sms.db "select 'String Found' from message where text like '&&XX&&' order by date desc limit 1"

for the whole script maybe

case $( sqlite3 /var/mobile/Library/SMS/sms.db "select 'String Found' from message where text like '&&XX&&' order by date desc limit 1" ) in 'String Found') sqlite3 /var/mobile/Library/SMS/sms.db "delete * from message where text like '&&XX&&'" ; commandscript;;esac

In order words when the string is found, delete all messages containing the string and execute the commandscript.

Of course you need a jailbroken phone and sqlite from cydia. The same process could be done on the other databases as well. I'm not sure how you would go about doing this without a shell script but I'm sure it's possible. I haven't tested the script yet so you might want to make a copy of your sms.db before trying. https://stackoverflow.com/a/8120599/4731224

like image 26
J.Arji Avatar answered Sep 30 '22 14:09

J.Arji