iOS Broadcast Extension(Screen Broadcasting) is not Working - ios

I'm new to Programming Business and making Broadcasting App Which is supposed to Handle Screen Broadcast Function(iPhone Control Center --> Broadcast. Like a Mobcrush).
So I try to implement Broadcast App Extension that was introduced at WWDC, but my Demo App Doesn't work well. My Demo App Just Doesn't Broadcast And Just Show Me an Error Alert Which Says "Live Broadcast to MYDemoApp has stopped due to: (null)"
Here Are The Things What I Did On Demo App
Implementing App Extension(BroadCast Extension. Which Makes SampleHandler, BroadcastSetupViewController)
Implementing App Group(Setting Capability, BundleIdentifier,
Setting App Groups And Provisioning Profile in Developer.Apple.com)
Pod Install And Copied The Codes That I Didn't Write From Other Developer's Demo App (HaishinKit)
(https://github.com/shogo4405/HaishinKit.swift)
Put RTMP URL String in userDidFinishSetup() in BroadcastSetupViewController
(This App is Demo, So i Just Put My Own RTMP Address And Stream Key. Like This : rtmp://bc.CompanyName.tv/app/VeryLongStreamKey)
Plus, I Think this is Not an RTMP URL Issue. because I already did Camera(Front, Rear) Broadcast Test With That URL(Not an App Extension. Just in the Simple ViewController).
Could you Tell Me A Hint? Any Feedback Would Be Appreciated!
Thank For You Reading My First Question About Coding.
This is an Alert That I Saw

I found there is many limitations on iOS broadcast extension.
- If extension started by container app via API, Network become off when app goes background.
- File access is not possible.
- Asset access is not possible.
- Swift print() do nothing. Use NSLog() and idevicesyslog.
- Xcode "Attach to process by PID or Name..." works.
If you get "due to (null)" error, debug on Xcode by attaching process.
Or put NSLog() and see by idevicesyslog.

Related

App metadata rejected because of Core NFC but it is not used anywhere in app code or pods code

I submitted application to apple and they responded that "we need a video that demonstrates the use of the Core NFC"
Guideline 2.1 - Information Needed
We're looking forward to completing our review of your app. Before we
can continue, we need a video that demonstrates the use of the Core
NFC feature in the current version in use on a physical iOS device.
and they want me to do video demonstrating NFC usage in the app, I don't see how to respond them by saying we don't use it at all. I searched whole code base for NFC and also pods that are included and I don't see any. And only thing I have in mind is that maybe some binary library I use "regula forensic document reader" can have hidden some NFC code inside but that is just my wild guess as they also don't mention NFC in their documentation.
they also say:
Next Steps
Create the demo video, add a link to the video in the App Review
Information section of your app’s page in App Store Connect, and reply
to this message in Resolution Center.
So I am lost a little here and any help would be greatly appreciated.

How to get the iOS Camera suggest my app when snapping a QR code

I want the Camera App that comes with an iPhone to recommend a QR code be opened up in my app. My first question is, if two or more apps register the same universal link, which app gets suggested.
For instance I removed one app that kept on being recommended. Then suddenly another app starts getting recommended. How does a user or developer control this.
Have a look at Apple's guide for implementing Universal Links. In short, your website must upload a JSON file at a specific location that tells iOS which apps can be associated with the website domain. Here is an example file used by the NBC app.

Google Cast iOS sample app not scanning for devices

Trying to use this sample app provided by Google: https://github.com/googlecast/CastHelloVideo-ios
It is not asking to connect with my Chromecast, or even scanning for receiver devices. There is only the "Cast Video" button that alerts "Not Connected - Please connect to Cast device" when clicked. I understand there is a whitelisting/registration process for styled and custom media receiver apps, but there is supposed to be a default media receiver app built into the Chromecast that I should be able to use right away. How can I make it scan for devices?
Did you follow the instructions for setting up that app? Unless you use your own App Id or you update the sample to use the default app id, it won't find any device; it is doing the scanning. In addition, please use the GitHub's issue tracker to ask questions about that and other cast samples if you run into any issues when trying to run them.

What is this error 7 with google-cast sample ios/application?

I downloaded the chromecast ios sample and when I connect the sample application to chromecast, it give the following error:
error domain=com.google.GCKError code=7 "The operation couldn't be completed. (com.google.GCKError error 7.)"
Do you know why?
I got the same error message while testing the "CastHelloText-ios" sample provided by Google on GitHub.
First I checked all the required steps described by Google were ok:
In your cast developer console: check your Chromecast has the status "Ready for Testing" otherwise register it.
host the receiver somewhere on the web and note the URL
in the cast developer console, declare a new app with a custom receiver and fill the URL of your receiver. Save it and note the application ID.
fill this application ID in the controller of your iOS app: static NSString *const kReceiverAppID = #"1234ABCD";
make sure that your chromecast has the option "Send this Chromecast's serial number to Google when checking for updates" is ticked (in the iOS app it's in the General section of your device)
Finally I solved the issue by rebooting the chromecast:
Run the Chromecast iOS app from Google, click on your chromecast device, click on General and click on the red button "Reboot".
For information, I've performed this reboot after reading the note of this Google documentation:
If you wish to verify that your published application is working properly, you can manually restart your Google Cast device to force a load of new configuration data.
PS:
- to reboot your chromecast you can use any chromecast app provided by Google (iOS, Android, MAC, etc.)
GCKErrorCodeApplicationNotFound - Typically this error will occur if either your device doesn't have [x] send my serial # to Google set, or your AppID is incorrect.
We'll try to get the docs updated shortly.
For test this app you will need to change this line
[self.deviceManager launchApplication:kReceiverAppID];
To use default applicationID:
[self.deviceManager launchApplication:kGCKMediaDefaultReceiverApplicationID];
Or you need to create a development account and to change kReceiverAppID with your AppID.
And if you have an another error, you can to check the GCKError.h class, there has all error codes possible with explanation
I had the same problem. In my case seems like the Chromecast still associated with the old Application ID. It worked fine after restarting the device.

IOS Launch Application to chromecast not working

I created my IOS application based on CastHelloText example, I can connect perfectly to chromecast but when launching the app, nothing happens
Sometimes I see a message on my TV saying "brain freeze"
in the app, the delegate method:
- (void)deviceManager:(GCKDeviceManager *)deviceManager
didConnectToCastApplication:(GCKApplicationMetadata *)applicationMetadata
sessionID:(NSString *)sessionID
launchedApplication:(BOOL)launchedApplication
is never called!
I think I can be setting something wrong in the developer console, When I check the option IOS, there is a field that says App URL and not sure I should enter there!
Is there any option to call directly to a URL without using an app id?
I use the default Media Player AppID for my test kGCKMediaDefaultReceiverApplicationID until I figured out how to make my application work.
Maybe this would help.

Resources