Is there a (legal) way to capture the ENTIRE screen under iOS?

前端 未结 5 545
悲哀的现实
悲哀的现实 2021-01-19 01:10

I\'ve tried several techniques to capture a screenshot of an app from within that app. None of the techniques appear to capture the status bar -- it ends up being black.

5条回答
  •  抹茶落季
    2021-01-19 01:56

    At this point it seems clear that there is no simple way to detect if Airplane Mode is enabled. Although you could probably infer it by looking at low-level network stack info or scraping status bar pixels, either method would be relying on undocumented behavior. It's very possible that on a future release of iOS or a future iOS device, the behavior will change and your code will generate a false positive or false negative.

    (Not to mention that, on future devices, the interference may not even be there.)

    If I were in your shoes, I would:

    1. File a bug to let Apple know you want this feature.

    2. Work the notice into the app, regardless of whether Airplane Mode is enabled. Yes, it might be kind of annoying to the user if it is enabled, but the overall harm is minimal. I would probably make this an alert that pops up only once (storing a key in NSUserDefaults to indicate whether its already been displayed).

    3. If you want to get super-fancy, analyze the recorded audio and, if the buzz is detected, remind the user again to enable Airplane Mode while recording. You could do this in real time or after the clip has been recorded, whatever makes more sense for your app.

提交回复
热议问题