Creating [object] in a different context than the calling function.
Jumaat, 19 Ogos 2016, 10:13 pm0
Creating [object] in a different context than the calling function.
This warning occured when a JS callback function is passed to Objective-C as KrollCallback and then executed on non-JS thread.
KrollCallback *callback = [args objectForKey@"callback"]; [OneSignal initWithLaunchOptions:[TiApp app].launchOptions appId:appId handleNotificationAction:^(OSNotificationResult *result) { [callback call:@[] thisObject:nil]; }];
Problem with this warning is, if the JS callback create Ti.Network.HTTPClient instance, then that instance is null.
function callback() { var http = Ti.Network.createHTTPClient(); http.open('GET', getUrl()); // JS error! http is null http.send(); }
To fix, get krollContext instance of current module/proxy and execute callback inside invokeBlockOnThread
// For TiModule / TiProxy descendants KrollContext *context = [self.executionContext krollContext]; // For TiUIView descendants KrollContext *context = [self.proxy.executionContext krollContext]; // invoke [context invokeBlockOnThread:^{ [callback call:@[] thisObject:nil]; }];
30 Mac 2017
Download youtube video as audio file
17 Mac 2016