NSURLSession returns data as Null on Watch OS2 usi

2020-04-11 13:24发布

问题:

This works perfectly on iPhone (Simlulator and Device) but on Watch OS2 i get blank data. What might be the issue with this ?

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *task = [session dataTaskWithRequest:theRequest
                                        completionHandler:
         ^(NSData *data, NSURLResponse *response, NSError *error) 
 {
      theData = [[NSString alloc]initWithBytes:[data bytes] length:[data length] encoding:NSUTF8StringEncoding];
    NSLog(@"%@", theData);
}];
 [task resume];

回答1:

Sorry found the mistake. Had to add Allows Arbitrary Loads on the WatchKit extension. After adding i got the result.



回答2:

[self.table setNumberOfRows:[arrurlimg1 count ]withRowType:@"QuoteTableRow"];

for (NSInteger i = 0; i < self.table.numberOfRows; i++) {

    ICBQuoteTableRow* theRow = [self.table rowControllerAtIndex:i];

    NSURLSessionConfiguration  *config =[NSURLSessionConfiguration defaultSessionConfiguration];
    NSURLSession *session =[NSURLSession sessionWithConfiguration:config];

    NSURLSessionTask *task = [session dataTaskWithURL:url completionHandler:^(NSData * _Nullable data1, NSURLResponse * _Nullable response, NSError * _Nullable error)
                              {
                                  for (int i=0; i<arrurlimg1.count; i++)
                                  {

                                      UIImage *image =imgData1;
                                      [theRow.myFirstImage setImage:image];
                                      // [theRow.myGroup setBackgroundImage:image];
                                  }
                              }];
    [task resume];

}