Is it possiable to grab content from an iMessage with an iMessage app - swift

Ive been reading through the iMessage documentation and I haven't been able to come across a clear answer to whether or not its possible for an iMessage app to be alerted to and grab specific content from a message. For example being alerted that a someone sent a message with a photo or link and then being able to grab that photo or link and place it in the iMessage app.

This is not possible. You only get access to messages sent via your application. Apple is very strict on privacy and there would be no way to ensure privacy if apps had access to message content.

Related

Can sent/received chat history be accessed by an IOS 10 iMessage app extension?

This is a very basic iMessage app extension question.
I'm looking to see if it's possible for an iMessage app to access the chat history and parse previously sent/received text messages. I'm aware that they are stored in an SQL database on the device, but not sure if that data is accessible from an iMessage app extension.
Absolutely not :)
This is a question of privacy, and such thing will never (in my opinion) be allowed by Apple. They clearly said that they were worried about users privacy. iMessage extension can't even access the names of participants...
The only messages you can access are :
Those sent via your iMessage extension AND that were selected by
the user.
Those that are received by your app extension AND that were sent
via your app
Meaning that even messages sent via your app won't be accessible that easily.

iPhone url scheme with content body to SMS

I'm a Java/Web developer and I don't know anything about iPhone applications.
I did search on the Internet and the following steps are what I think people suggested but I want to confirm.
I would like to know if the following steps will allow me to send a content body to SMS messages when a user clicks on a link on a web page.
Build an iPhone app that takes content body and receiver phone number.
Make the visitors to my webpage download the iPhone app in #1 (using javascript to check if s/he already has it and a custom url scheme to open the iPhone version of "PlayStore")
The visitor installs the app.
Call the iPhone app in #1 using a custom URL scheme, from a link on a web page. This link contains the phone number of the receiver and a content body
The iPhone app in #1 then opens the native SMS app in iPhone, this time with a body.
Is this
1. possible ?
2. the right way to do ?
EDIT :
To make things clearer, what I need are...
It shouldn't be the web server that sends the SMS. The client who gave us the job does not want to pay for that. The client wants each visitor send their own SMS and pay for it.
I made a mistake. The phone number of the receiver should be empty. Only the content body is pre populated. So if I clicked on the "send SMS to my friends" link(on a webpage), it opens the native SMS application.(at least, this is how it works on android devices currently). And then the visitor would type in or select the phone number of the receiver from the contacts on his device.
No, you cannot open the SMS app with a message body. The only way to send it is by using MFMessageComposeViewController (iOS 5.0+) as shown in this page. If you need to support earlier versions, you are out of luck.
I'm not sure that Javascript can "check" that the device can run a url scheme either (I'm almost certain it can't check what apps are installed), but I'm not an expert at that kind of stuff.
As far as you are launching your application with some data using Custom URL Schemes this might help you calling your app with some parameters
http://www.idev101.com/code/Objective-C/custom_url_schemes.html
For step #5 its not possible
Short Answers:
No.
No. The "right" version would be to send the SMS from your webserver, using something like NowSMS.

Can i access iOS mail app data?

Is there a way using which i can access attachments downloaded though the iOS Mail app? I need to access photos or other documents in my app.
No You cannot access the Mail App Data in any way. It is against the Privacy concerns of the iOS device user. However, the images in the user's iPhone Gallery can be accessed and used in the app according to your needs.
If you register your app to handle various file types, then you could select open with yourapp from within the mail application. So you could send a file from the mail application to your app. For more information see https://developer.apple.com/library/ios/#documentation/FileManagement/Conceptual/DocumentInteraction_TopicsForIOS/Articles/RegisteringtheFileTypesYourAppSupports.html#//apple_ref/doc/uid/TP40010411-SW1
No, You are not authorized to take any device data without user interaction that too limited access. You can create your customized mailing data with you have sent mails.

Reading SMS user settings for iPhone

I wish to access whether or not the user lets his/her iPhone preview the contents of incoming SMS messages. This toggle is found in Settings > Messages > Show Preview. Is there a way to access (read only) this information legit (I need to get the app approved)?
No. It's sandboxed along with the other core phone functionality.

iPhone: How to Programmatically Respond to SMS Messages

After a review of the iPhone SDK documentation, I have not yet found a way for an application to be written such that it can programmatically process the content of an incoming SMS message within the iPhone platform. The idea would be for such an application to be running in the background and based on specifically formatted SMS messages would be able to take specific actions.
Does anybody know if this is possible with an iPhone SDK application and if so, provide a pointer to information about how this can be done?
Unfortunately, you cannot intercept - or be notified of - incoming SMS messages with the iPhone SDK.
One possible alternative, is to register a custom URL scheme that launches your application when a url with that scheme is embedded in the sms message and the user cicks on it.
to set a custom url scheme, you must implement both the CFBundleURLSchemes and CFBundleURLName keys in your application's info.plist.
In your Application's delegate, you can then implement the application:handleOpenURL: method to get any paramaters that were passed to your App from the url in the SMS message.
I believe that currently the SDK doesn't allow for background apps (except for apple ones).
BREW and J2ME had (and probably still have) ways to launch your app via specially formatted SMS, which may be what the Jeff is referring to.
Apple does have the upcoming Push Server which will allow you to send the user an alert which will give them the option of launching your app, but you cannot launch your app for them.
Unfortunately just registering an URL scheme dosn't help you at all, because the SMS app makes "http://" urls clickable only...
You can use CoreTelephony framework.But you must user some private api.And I have some demo code for this. https://github.com/edison0951/AppNotifyBySMSDemo