I am developing an application for video call, but when try to make call application crash with following error
2014-12-30 00:00:50.866 closeChat[28683:3791106] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFConstantString xmlChar]: unrecognized selector sent to instance 0x19b4a8'
*** First throw call stack:
(0x29e5949f 0x3764fc8b 0x29e5e8b9 0x29e5c7d7 0x29d8e058 0xf2bc5 0xee3a9 0x89923 0x89d89 0x29e1627b 0x88c05 0x889af 0x371b3 0x2d34c9fb 0x2d34c9a1 0x2d337613 0x2d34c40d 0x2d3111ad 0x29e1fd95 0x29e1d453 0x29e1d85b 0x29d6b3c1 0x29d6b1d3 0x311690a9 0x2d37afa1 0x67189 0x37bcfaaf)
libc++abi.dylib: terminating with uncaught exception of type NSException
I used the following code:
self.videoChat = [[QBChat instance] createAndRegisterVideoChatInstance];
self.videoChat.viewToRenderOpponentVideoStream = self.imgOppenentViewView;
self.videoChat.viewToRenderOwnVideoStream = self.imgOwnVideoView;
self.videoChat.useHeadphone = 1;
self.videoChat.useBackCamera = 1;
NSMutableDictionary *videoChatConfiguration = [[QBSettings videoChatConfiguration] mutableCopy];
//
[videoChatConfiguration setObject:AVCaptureSessionPresetLow forKey:kQBVideoChatFrameQualityPreset];
[videoChatConfiguration setObject:#10 forKey:kQBVideoChatVideoFramesPerSecond];
//
[QBSettings setVideoChatConfiguration:videoChatConfiguration];
[QBChat instance].delegate = self;
[self.videoChat callUser:[self.opponentID intValue] conferenceType:QBVideoChatConferenceTypeAudioAndVideo];
I've tested video sample Quickblox with your settings and video call works as expected.
Please try to setup Quickblox with CocoaPods and see if error happens again
http://quickblox.com/developers/IOS-how-to-connect-Quickblox-framework#CocoaPods
And there is a new WebRTC sample you can test. It has more features and preferred to use.
Related
I am working on a project which requires integration with cocoalibspotify. I have some unit test cases for the classes that import CocoaLibSpotify.h. Those test cases have failed with the following stack trace:
Assertion failure in NSString* base::deviceIdFromKeychain()(), /Users/spotify-buildagent/buildAgent/work/1e0ce8a77adfb2dc/client/base/_apple/_ios/os_ios.mm:287
2013-10-20 11:14:03.505 * Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Keychain error when fetching device ID, nonrecoverable'
* First throw call stack:
(0x30f0cf53 0x3b2366af 0x30f0ce2d 0x318b41df 0x2d142f 0x2d1a09 0x2ce6db 0x17b1b5 0x1798b3 0x30ed81b9 0x30ed753b 0x30ed5e45 0x30e40ce7 0x30e84803 0x179b1d 0x318efe27 0x3b85dc1d 0x3b85db8f 0x3b85bc90)
libc++abi.dylib: terminating with uncaught exception of type NSException
The method at which the exception is thrown is in the SPSession.m class: CFRunLoopRun();
+(void)runBackgroundRunloop:(dispatch_block_t)runLoopReadyBlock {
#autoreleasepool {
[NSThread currentThread].name = #"com.spotify.CocoaLibSpotify";
[runloopReadyLock lock];
libspotify_runloop = CFRunLoopGetCurrent();
sleep(1);
libspotifyThread = [NSThread currentThread];
// Use a custom, no-op run loop source to keep the loop alive and fast.
CFRunLoopSourceContext libspotify_source_context;
memset(&libspotify_source_context, 0, sizeof(CFRunLoopSourceContext));
libspotify_runloop_source = CFRunLoopSourceCreate(NULL, 0, &libspotify_source_context);
CFRunLoopAddSource(libspotify_runloop, libspotify_runloop_source, kCFRunLoopDefaultMode);
[runloopReadyLock unlockWithCondition:1];
CFRunLoopRun();
CFRelease(libspotify_runloop_source);
CFRelease(libspotify_runloop);
libspotify_runloop_source = NULL;
libspotify_runloop = NULL;
libspotifyThread = nil;
}
}
I have no clue what causes the error or how to fix it. Does anyone have any idea about this?
Thanks,
Make sure you're using the latest version of CocoaLibSpotify (2.4.5).
Also, how are the unit tests run? Does your app run correctly? Does CocoaLibSpotify's own unit test suite run? It's worth noting that the Keychain is unaccessible to CocoaLibSpotify before the device has been unlocked.
Hi I am using gamekit to connect two IOS device for transferring data between them, below is the code iam using here
.h
#property (nonatomic,strong)GKSession *sessionObj;
...
.m
...
GKPeerPickerController *connectionPicker = [[GKPeerPickerController alloc] init];
connectionPicker.delegate = self;
//NOTE - GKPeerPickerConnectionTypeNearby is for Bluetooth connection, you can do the same thing over Wi-Fi with different type of connection
connectionPicker.connectionTypesMask = GKPeerPickerConnectionTypeNearby;
[connectionPicker show];
sessionObj = [[GKSession alloc] initWithSessionID:#"com.myapp.connect" displayName:nil sessionMode:GKSessionModePeer];
sessionObj.delegate = self;
so when i run the app it goes to GKPeerPickerControllerDelegate
-(GKSession *)peerPickerController:(GKPeerPickerController *)picker sessionForConnectionType:(GKPeerPickerConnectionType)type{
return sessionObj;
}
and once this it return from this delegate method it throw an error which say's
*** Terminating app due to uncaught exception 'GKInvalidArgumentException', reason: 'A vaild GKSession object with a GKSessionModePeer mode must be supplied, or to create a default GKSession object return 'nil' in the implementation of -peerPickerController:sessionForConnectionType:. Supplied object was: (null description) with session mode: 0'
*** First throw call stack:
(0x1335052 0x1155d0a 0x12dda78 0x12dd9e9 0x665e0 0x65798 0x64e9a 0x64e13 0x5d15cb 0x64cf7 0x63237 0xb781 0xb438 0x5099d6 0x50a8a6 0x519743 0x51a1f8 0x50daa9 0x1d67fa9 0x13091c5 0x126e022 0x126c90a 0x126bdb4 0x126bccb 0x50a2a7 0x50ba9b 0xc12d 0x75f5 0x1)
terminate called throwing an exception(lldb)
Can you please let me know what's wrong in here.
I am getting this exception:
2013-08-06 21:48:05.046 entrepreneur[13200:11f03] Not purchased: 1
2013-08-06 21:48:09.075 entrepreneur[13200:11f03] Buying (null)...
2013-08-06 21:48:09.077 entrepreneur[13200:11f03] Buying (null)...
2013-08-06 21:48:09.079 entrepreneur[13200:11f03] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Invalid product identifier: (null)'
*** First throw call stack:
(0x1691012 0x1123e7e 0x1690deb 0x3c7dc 0x18d5f 0x1a4be 0x1137705 0x6e920 0x6e8b8 0x12f671 0x12fbcf 0x12ed38 0x9e33f 0x9e552 0x7c3aa 0x6dcf8 0x14dbdf9 0x14dbad0 0x1606bf5 0x1606962 0x1637bb6 0x1636f44 0x1636e1b 0x14da7e3 0x14da668 0x6b65c 0x2a1d 0x2945)
libc++abi.dylib: terminate called throwing an exception
Because the product seems to be nil. Here is how I put the product object together:
This is the method which is called when the "subscribe" button is called:
- (IBAction)subscribe:(id)sender
{
UIButton *buyButton = (UIButton *)sender;
SKProduct *product = _products[buyButton.tag];
NSLog(#"Buying %#...", product.productIdentifier);
[[RageIAPHelper sharedInstance] buyProduct:product];
}
I am working from this tutorial:
http://www.raywenderlich.com/21081/introduction-to-in-app-purchases-in-ios-6-tutorial
And I don't really understand how they can be creating the product object which seems like it would be empty. But when it is empty, it gives an exception down the line.
Is there something I am not doing quite right here?
Thanks!
I have a problem with UIWebView. If a iframe is loading some content and for some reason I change the source or I remove the element, I get the following exception:
MyApp[5812:11303] shouldStartLoadWithRequest
2013-03-14 18:48:45.899 MyApp[5812:11303] shouldStartLoadWithRequest
2013-03-14 18:48:45.900 MyApp[5812:11303] *** WebKit discarded an uncaught exception in the webView:decidePolicyForNavigationAction:request:frame:decisionListener: delegate: <NSInvalidArgumentException> *** setObjectForKey: key cannot be nil
2013-03-14 18:48:45.901 MyApp[5812:13603] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** setObjectForKey: key cannot be nil'
*** First throw call stack:
(0x1c94012 0x10d1e7e 0x1d170de 0x26e35ce 0x26e5693 0x26d44b5 0x2bf8747 0x2bf5610 0x2ec841a 0x2ec6c49 0xb0108ef 0x6619e11 0x6572fc3 0x2dd9d34 0x2eacd15 0x2b31eac 0x2b31c76 0x317bce9 0x2b176d5 0x2b184a5 0x316ade9 0x2b1772e 0x317cc6d 0x2b1e3f4 0x2b1f97b 0x2b2382f 0x26f1f7b 0x356182c 0x3561795 0x3564b2f 0x35648bb 0x356bffb 0x356487c 0x1e50f4 0x356bffb 0x1e4deb 0x1e5787 0x356c548 0x1c17f3f 0x1c17a39 0x1c3a734 0x1c39f44 0x1c39e1b 0x356bc50 0x97efced9 0x97f006de)
libc++abi.dylib: terminate called throwing an exception
(lldb)
Is there something that I need to add to my code the deal with this scenario ?
In my case it was because I call my method scrollToId in viewWillAppear, before webWiew is loaded
- (void)scrolToID
{
NSString *jsCall = [NSString stringWithFormat:#"window.location.hash='#%#'", currentID];
[self.webView stringByEvaluatingJavaScriptFromString:jsCall];
}
It should be call in webViewDidFinishLoad
If my application crashes I take the information on All Output window like this:
Uncaught exception: * -[NSPlaceholderMutableString initWithString:]:
nil argument 2013-02-28 04:09:15.209 Cpp[948:907] Terminating app
due to uncaught exception 'NSInvalidArgumentException', reason: '
-[NSPlaceholderMutableString initWithString:]: nil argument'
* First throw call stack: (0x3336b3e7 0x3b05c963 0x3336b307 0x33bf0eb5 0x33c0ab8b 0xd16ed 0xd0a63 0xc3e79 0xc5cfd 0x3336ead4
0x332c628f 0x332c5de3 0x39be081b 0x3336d737 0x332c5208 0x3336ead4
0x332c628f 0x3930bc5b 0x39348ce1 0x333408f7 0x3334015d 0x3333ef2f
0x332b223d 0x332b20c9 0x36e9033b 0x351ce2b9 0xc0109 0xc00a0)
libc++abi.dylib: terminate called throwing an exception (lldb)
And the call stack like this:
Where is there something helpful to fix the issue? Where is there my method on call stack? Where is there my line of code? What's wrong with xCode and how to fix this problem?
Here's something I do to get the stack trace.
In your AppDelegate.m file:
void uncaughtExceptionHandler(NSException *exception) {
NSLog(#"Call Stack: %#", exception.callStackSymbols);
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);
// The rest of your method here...
}