Simulating a resizeable airplay display - ios

Im working on an iOS application that supports external displays over airplay, I do most of my testing with the external display option in the simulator, and some on iOS devices connected to macs running various airplay receiver apps.
Im now attempting to support an external display whose size changes, and I don't have access to the the device to test with(And I can't say what the device is).
I've noticed in the documentation for UIScreen the UIScreenModeDidChangeNotification:
Clients can use this notification to detect changes in the screen resolution.
This notification supposedly gets triggered for the device i'm trying to support, and it seems this is where I should handle resizing the UI to respond to this change.
Are there any ways to simulate an airplay display that can be resized, and on resize will post a UIScreenModeDidChangeNotification notification?

Many displays support multiple resolutions. When the resolution changes on the display it will re-negotiate the new resolution with the iPad and the notification will be triggered. Try changing the display's resolution while the iPad is plugged in via a video adaptor.

Related

ipad does not properly recognize mirroring to mac

I want to share a note in Notability app on my ipad as a white board for an online Zoom lesson.
For that I connect my ipad to my mac through cable, and mirror my ipad screen to my mac using the Zoom application's option of share of ipad via cable.
The ipad's screen is mirrored, namely, appears on my mac (usually, sometimes it doesn't and I have know idea why). However, the ipad's Screen Mirroring window (accessed via the ipad's control center) is stuck in a weird intermediate state: it keeps thinking and does not show any devices, but does show a Stop Mirroring button. In addition, Notability app in the ipad does not recognize the mirroring and does not enable the new presentation mode (but rather keeps showing the Send-to button instead of the display-mode button). For some reason, the mirroring occasionally does work fine, but usually it doesn't, and I cannot replicate what causes it to work.
How can this be fixed?
(My mac, ipad and notability are all updated: versions 10.15.4, 13.4, 9.3.1 respectively.)

Is it possible to programmatically open an app on an iOS device based on a trigger from a web api

I want to use an old iPad to view an ip camera feed. Instead of keeping the iPad on all day, I want to be able to tell the iPad to wake and open the camera viewer application when the camera senses motion. (Not just a small notification on lock screen, I want to be able to view a full screen image of the cameras feed). After a given period of time the iPad would go back to an off/sleep mode. Is this even possible in iOS? Thanks!
Take a look at the "Singe App Mode" and "Background Execution". Choose an event type that can take your device out from background mode, like VOIP. Do not expect the app to be accepted in the public app store.

iOS Simulator doesn't recognize AirPlay even if External Display is added

Original Question
I have a MPVolumeView added to a custom view as
_airplayButton = [[MPVolumeView alloc] init];
[_airplayButton setShowsVolumeSlider:NO];
[self addSubview:_airplayButton];
I don't have a real device to test but when on iOS simulator the button doesn't appear. I have more than one Apple TV connected on my network. Is it because the simulator doesn't support AirPlay?
I tried adding external display on the simulator and still the view seems to be hidden.
UPDATE
I tried adding the external display and on the control centre AirPlay wasn't activated. Is there something else I need to do to get AirPlay activated on simulator other than adding an external display?
AirPlay is not supported in the iOS Simulator. The closest thing you can do is enable an extended display (eg: a 720p TV). That is not going to be the same experience as AirPlay but may get you what you need.
There are also various bugs with the media player and extended display, so if you can't get it working in the sim, I'd recommend testing on device before concluding that there's something wrong with your app.

ipad airplay mirroring to multiple airplay receivers (specifically for videos/pictures)

my client asks me to develop some app for real-estate presentation which has the following features:
1. The seller can have their ipads connect to the projector wireless over wifi.
2. The seller can broadcast the screenshot of some other ipads to the customers's ipads.
For feature 1, I can have a apple TV and airplay mirroring the ipad screen to it, then have some HDMI-VGA adapter for the connection with the projector.
For feature 2, I can also install airfloat to make the ipad an airplay receiver. I can also airplay mirroring the screen of the seller's ipad to the customer's ipad.
As for as I know, it seems to be no way to airplay mirroring the screenshot of one ipad to multiple ipad airplay receivers.
So I'm wondering how can I airplay mirroring one screen to many ipad airplay receivers?
How about you use airview or airplay receiver like in this link? It seen like we need to solve some problem to use.
https://github.com/nto/AirView
Another one is you can use this SDK. It has screen sharing and gesture sharing from one device to another device. It seen quite good.
http://www.showkit.com/
Our rPlay airplay mirroring software implemented the features you asked. rPlay acts as Apple TV, you can mirror ios devices to it, rPlay can also duplicate displays to other rPlay devices, the result is one ios device sends its screens to multiple devices.
We are also develop viewers for mobile devices to receive rPlay displays.
Check our forums at http://www.vmlite.com for more info

Disabling second screen on iPad through 30pin HDMI without disconnecting

iPad automatically detects when connected to a screen through 30pin HDMI cable and mirrors the content of its screen to the second screen.
Is it possible to disable the second screen from mirroring without disconnecting the cable?
I would like to have a feature which enables and disables the second screen without disconnecting the cable.
Thanks
The default behavior is to mirror as you note. You can override this by registering to be alerted for screen events. See the docs for Multiple Display Programming Guide for iOS. This will enable you to determine if and what is displayed on the external screen.

Resources