I want to do some treatment of the gsm data in ios before it sent. i know that i have to use private APi and in my case its not a problem, my app is experimental and will not be sent to the AppStor.
i dont know from where to begin.
I think that i will have those problems:
Install/use private framework on xcode.
No official documentation for that APIs, but i think with Cydia, many people use them.
Have you some tutorial or link that can help me to start?
I think it would be good idea to divide this question on two subquestions:
1) How to use private API
You can check following questions for info on this subject:
How to use iPhone SDK Private APIs
http://aralbalkan.com/2106
iOS Private API Documentation
Getting signatures of private API methods for iOS
If you will have any additional questions on. You can post it here or send me an email (I have it in my profile).
2) How to intercept gsm data using private api?
I don't know.
Three question for youL
Did you really mean "gsm" data (gsm protocol level information) or did you mean wireless data (let say HTTP requests which are send from device)?
Do you need to intercept and modify or do you need just intercept and view them?
If you meant wireless data and just viewing it then try to search for traffic sniffers. Some of them should work on iOS.
One more note. As soon as I hear "intercept" my guess would be that you will be better off with jailbreak tweak (vs private API). Private API's are limited in usage. Is this ok, if your app will work only on jailbroken devices?
Related
I'm working on a doctor-patient appointment app on native iOS Swift project. Here I want to implement a live video call with chat using WebRTC and PubNub signaling server. I'm totally new to it. I don't know how to implement this. I have seen some of the Objective-C codes but still I didn't understand. Please help if any of you implement the same in swift.
Highly recommend you reach out to a service such as Vonage (https://www.vonage.com) who can provide HIPAA compliant WebRTC video service for you.
Once you have a set of keys on Vonage, you can use PubNub to move the video session details around the channel in question.
Traditionally I use a JSON object model that looks like this:
channel: "UUID of medical session"
messageID: "MessageID on your platform"
messageType: "videoInvite"
sender: "Hilaj"
sessionDetails: "session JWT and/or session token"
timestamp: "1597347054"
This means you can send text based messages as well as video invites in the same channel and write the event to logs.
I have implemented this in Swift (and previously in Objective C) but it is completely proprietary.
You are going to have to download the Google WebRTC framework.
Taking a quick look at PubNub, it looks like it just does signalling. You are still going to need an actual WebRTC server (eg, Janus). There are others and I'm not really sure which ones support PubNub.
I used to use an app called Battery Life on iOS which I believe was using https://github.com/eldade/UIDeviceListener as a method to retrieve the charger's information (as in the wattage amount, voltage, and amplitude). However, that app has since been pulled from App Store and was replaced with a new version without that functionality, and UIDeviceListener has a note saying that it's no longer working in iOS 10+.
Now, I currently have an iPhone X that I charge with Qi charger, and I'm just curious about how much wattage does my Qi charger supplies to my iPhone. I know that for a USB charging I could easily put a USB wattage meter and I could get the number that I want, but because this is an induction charger I feel like I have to test it on the device itself.
Has anybody found a API that would provide this information similar to what UIDeviceListener was reporting (IOKit?)? I'm planning to just side load it to my phone, so using private API wouldn't be an issue.
Thank you.
It seems you can do it with the private API IOKit as you suggested.
I found this project : https://github.com/ethan605/ios-battery-stat
It's old, so it might need some modifications
Edit : I found this one, much more recent : https://github.com/eldade/EEIOKitListener
I'm trying to get into a new project, by creating an iOS application. But before I start I would like to understand some points:
is it possible to let an application make a phone call? So what I mean is, assumed we have a phone number and would like to call it. Would it be possible to use an (my) application to call this number?
is it possible to let an application speak during a phone call? So after the application started the call, would it be possible that some predefined statements are said in the call?
is it possible that this application hears, registers and analyses what the other person on the phone line is saying? (Leaving apart the privacy issue, assuming that the other person is willing to do that).
Could you please help me? If my question aren't clear, please tell me, I will try to explain it in another way.
Many Thanks
F.P.
iOS is very restricted in terms of the system behaviors third party applications can influence.
To answer your question bluntly, a third party application could prompt the user to initiate a phone / FaceTime call. Once the call is initiated however, your app would enter a background state and relinquish control to the system. The app would not be able to contribute or read any data related to the system phone / FaceTime call.
iOS 10 introduces a VoIP extension, CallKit, which allows third party apps to use the built in calling UI with a custom protocol. You could implement your own protocol (and host servers for handling the exchange of information) and build an extension to make it feel like a system call. You'd be responsible for all aspects of the custom call protocol and thus reading voices, contributing audio, etc. would all be possible (and up to your implementation).
Outside of iOS 10, you would have to built your own VoIP system and interface entirely from scratch.
For more info on CallKit:
WWDC Enhancing VoIP Apps with CallKit
CallKit Enabled Sample App
I'm looking for a way to develop an iOS in which I can access all network traffic, (I mean System-Wide) and route it through my app. Something like a proxy server but notice that I want to force the route and access all the traffic not only web requests (Something like what VPN Connections do).
I think that may go a bit beyond Apple limitations regarding App Store Guidelines. Any VPN API accessible for doing that ? Any practical suggestion or description on undocumented and private APIs is really appreciated.
P.S: This article may help understanding what I'm looking for;
To be able to do VPN functionalities you have to create a vpnplugin, the problem is that it's a pseudo-Private API, I'm saying "pseudo" because there are companies that had access to the documentation and there are apps on the App Store that uses it (OpenVPN connect for example). You can try reverse engineering some of those app plugins (it's the folder with the .vpnplugin extension).
By the way, someone already did that and published the vpn plugin API to github: https://github.com/Smartype/iOS_VPNPlugIn/blob/master/iOSVPNPlugIn.h
Network Extension of iOS9 will allow custom VPN tunnel implementations and NEPacketTunnelProvider is probably what you are looking for.
Check out the WWDC video.
https://developer.apple.com/videos/wwdc/2015/?id=717
You need to send an email to apple to get access to this function.
https://github.com/shadowsocks/shadowsocks-iOS/issues/124
Is it possible that Apple does or will provide an API for Siri? It would be great if I can be sipping my coffee and say,
User: Hey Siri, could you please open Angry
Birds; Level 4 and throw a first bird for me. Make sure you at least hit one green pig or it's coming out of your paycheck.
Siri: Yes sure, I will do that for you.
Is this possible? And would you think Apple will provide this to us?
THIS IS NO LONGER ACCURATE:
There is no API and there is no indication of it changing anytime soon. There are private headers that you can look at by decompiling the SDK. This is a great synopsis:
Quora
You can be clever like RTM though, this is as close as it gets:
http://www.rememberthemilk.com/services/siri/
In iOS 10, Apple has announced an API for Siri called SiriKit. However, you can only do it as an app extension and only if your app implements one of the following types of services:
Audio or video calling
Messaging
Payments
Searching photos
Workouts
Ride booking
Climate and radio
SiriKit is a way for you to make your content available through Siri.
It also lets you add support for your services to the Maps app. To
support SiriKit, you use the Intents framework and Intents UI
framework to implement one or more extensions that you then include
inside your iOS app. When the user requests specific types of services
through Siri or Maps, the system uses your extensions to provide those
services.
This means SiriKit cannot be used for the scenario mentioned in the question and in ways that many of us would like.
Source: Apple Docs for SiriKit
When the iPhone was first released, there was absolutely no public talk from Apple about custom app development. The delayed release of the SDK gave them plenty of time to get public feedback on the iPhone user experience and make the SDK ready for public use.
It seems likely that they're taking a similar approach with Siri.
Not yet. If you want it, file a feature request at bugreport.apple.com, and briefly describe what you want it for. The more people ask for it, the more likely it is to happen.