evaluateJavaScript传值失败
YiFan-Tong opened this issue · comments
Tong commented
请大家指导一下,我不知道这块应该怎么写,我还没有完全理解这个工具
我在使用dsbridge的demo,然后在其中的JsApiTest.m新加了一个调用系统联系人的api,之后点击联系人号码,我想将联系人的手机号传递给H5那边,但是一直传递不过去,我不知道应该怎么写,请指导一下,下面是我的部分代码
#import "JsApiTest.h"
...
...
...
@interface JsApiTest(){
NSTimer * timer ;
void(^hanlder)(id value,BOOL isComplete);
int value;
}
@end
....
#pragma mark - Contacts
- (NSString *)pushContacts:(NSDictionary *) args {
// 1.创建选择联系人的控制器
CNContactPickerViewController *contactVC = [[CNContactPickerViewController alloc] init];
// 2.设置代理
contactVC.delegate = self;
// 3.弹出控制器
[[AppDelegate shareInstance].mainNav presentViewController:contactVC animated:YES completion:nil];
return nil;
}
#pragma mark - CNContactPickerDelegate
// 2.当选中某一个联系人时会执行该方法
- (void)contactPicker:(CNContactPickerViewController *)picker didSelectContactProperty:(CNContactProperty *)contactProperty
{
CNContact *contact = contactProperty.contact;
// 1.获取联系人的姓名
NSString *lastname = contact.familyName;
NSString *firstname = contact.givenName;
NSLog(@"%@ %@", lastname, firstname);
// 2.获取联系人的电话号码(此处获取的是该联系人的第一个号码,也可以遍历所有的号码)
NSArray *phoneNums = contact.phoneNumbers;
CNLabeledValue *labeledValue = phoneNums[0];
CNPhoneNumber *phoneNumer = labeledValue.value;
NSString *phoneNumber = phoneNumer.stringValue;
NSLog(@"%@", phoneNumber);
// NSString *js = [NSString stringWithFormat:@"phoneNumber(\'%@\')", phoneNumber];
//
// [self.message.webView evaluateJavaScript:js completionHandler:nil];
// NSLog(@"%@", self.message.webView);
}
用的H5页面是demo中的test.html修改的,h5那边可以通过call.pushContacts调起手机相册,然后手机端点击联系人手机号,我拿到了手机号,但是不知道怎么传递到H5那边,用了 evaluateJavaScript没用, 也不知道是不是我的self.message.webView找的不对还是其他问题,我的 self.message.webView是这个东西
@property(retain, nonatomic) WKScriptMessage *message;
请求大佬们救命!!!
Tong commented
找到原因了,传值方法没问题,但是webview找错了