Crash in LiveRoomInfoEvent.properties

0 votes

Hi,

 

I am getting a crash in LiveRoomInfoEvent.properties when i assign this to NSDictionary.

It says somthing like : 

-[__NSCFString objectForKey:]: unrecognized selector sent to instance

And i am using git commit 1.6.2.

I guess you have updated NSString* to NSDictionary* in

-(void)onGetLiveRoomInfoDone:(LiveRoomInfoEvent*)event  

but not in       -(void)onUpdatePropertyDone:(LiveRoomInfoEvent*)event.

Please verify it in all the callbacks where client is receiving LiveRoomInfoEvent.

Waiting for a quick response.Thanks in advance.

 

Also suggest me which framework to include out of the two(normal & 64 arch) you have provided.

Thanks

asked Jun 11, 2014 in AppWarp by viral.dhingra2511 (10 points)
edited Jun 11, 2014 by viral.dhingra2511

1 Answer

0 votes

Hi,

Which API you are using. Can you share the code snippet.

You can check Sample as well that comes with the SDK.

If you are making your app specific to 32-bit architecture, you can use AppWarp_iOS_SDK.framework.zip,

and for 64-bit architecure, you can use AppWarp_iOS_SDK_64-bit.zip.

Thanks.

answered Jun 11, 2014 by rajeev.etc (1,660 points)
I am using AppWarp Api (the same way as that of sample).
I have created a room and added key-value pairs' dictionary(properties) while creating it.

and when i update these properties, the onUpdatePropertyDone of Room Request Listener is called back.
Which returns LiveRoomInfoEvent with room properties.

Now if i try to use these properties of event returned.I get following runtime error:

-[__NSCFString objectForKey:]: unrecognized selector sent to instance.

Please verify the datatype of properties returned in onUpdatePropertyDone(Room Request Listener) where LiveRoomInfoEvent is returned to client.

I am creating iphone app which supports both ios 32-bit and 64-bit architecture.
Should i use the 64-bit framework in that case?

Thanks.
Yes, You can use 64-bit framework.
Regarding the issue, i cross verified and it is working fine at SDK side.

Can you make sure that you are using the latest SDK i.e. 1.6.2, because this was the issue in the previous version of the SDK.
To know the SDK version you are running, You can see the Xcode console, as SDK will print its version when you enableTrace as :

[[WarpClient getInstance] enableTrace:YES];

I have updated the sample to check "updateRoom" API. Please try the sample and let me know if the sample is also not working and giving the same error.

Thanks.
Hi Rajiv,


I really appreciate your effort for solving my problem.
But i am doing the same thing.

I went through your sample and found the same issue in there.Please find the steps below:
Steps:
1. Enter your name And press connect.
2. Create new room and join, subscribe it.
3. Press update property button and onUpdateProperty gets called which returns NSDictionary as event.properties.
4. But also check method
-(void)onUserChangeRoomProperty:(RoomData *)event username:(NSString *)username properties:(NSDictionary *)properties lockedProperties:(NSDictionary *)lockedProperties

of notify listener and print the class of properties using
NSLog(@"Properties Class : %@",[properties class]);

and boom, you will see that it prints __NSCFString rather than __NSCFDictionary.

This is the problem i am facing and stuck with.
Looking for a quick response from your side and if you can fix it by today, i'll be able to complete my work by this weekend.

Thanks :)
Hi Viral,

Yes, there was a issue in onUserChangeRoomProperty.
I have fixed the issue and updated the SDK(V_1.6.3) that can be downloaded from our github repo( https://github.com/shephertz/AppWarp_iOS_SDK_Framework/blob/master/V_1.6.3/AppWarp_iOS_SDK.framework.zip ).

Thanks.
Thanks a lot.
You people are awesome. :)
Download Widgets
Welcome to ShepHertz Product line forum, where you can ask questions and receive answers from the community. You can also reach out to us on support@shephertz.com
...