lieft
lieft
  • 发布:2020-03-14 19:15
  • 更新:2020-10-09 23:30
  • 阅读:1160

uniapp原生插件开发传入UIView的视图对象问题

分类:5+ SDK

因为原生插件开发要用weex的iOS拓展,我也是刚刚接触这块不久。想请问下传入UIView的视图对象问题。
我想请问开发原生插件这块,是怎么通过uniapp点击,新开一个原生页面,就像uniapp里的navigateto。在这个新开的原生页面加载我引入的framework。

1、我创建一个新的LivePlayViewController,在DCRichAlertModule创建一个点击事件

LivePlayViewController *lliveplay = [[LivePlayViewController alloc] init];  
[self presentViewController:lliveplay animated:YES completion:nil];

我使用presentViewController方法打开新的UIVIew(LivePlayViewController),进入后能加载LivePlayViewController 的viewDidLoad,但是viewDidLoad里面代码是执行静态库framework里的start,就是不执行。
LivePlayViewController:

[super viewDidLoad];  
    [[UIApplication sharedApplication] setIdleTimerDisabled:YES];  
    _np = [[NodePlayer alloc] init];  
    [_np setPlayerView:self.view];  
    [_np setInputUrl:@"rtmp://*****:****/live/*****"];  
    [_np start];

也没报什么错,我打断点代码也执行完了,但是就是不start。

我新创建一个xcode新项目,使用storyboard的点击跳转,却没有问题,能正常start,
storyboard的点击事件:

LivePlayViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"livePlayVC"];  
    NSLog(@"33333");  
    [self presentViewController:controller animated:YES completion:nil];

2、我直接在DCRichAlertModule里添加事件调用第三方framework

[super viewDidLoad];  
    [[UIApplication sharedApplication] setIdleTimerDisabled:YES];  
    _np = [[NodePlayer alloc] init];  
    [_np setPlayerView:self.view];  
    [_np setInputUrl:@"rtmp://*****:****/live/*****"];  
    [_np start];

也是同样的没有start,我想应该是没有view装载。

我想请问开发原生插件这块,是怎么通过uniapp点击,新开一个原生页面,就像uniapp里的navigateto。在这个新开的原生页面加载我引入的framework。

2020-03-14 19:15 负责人:无 分享
已邀请:
lieft

lieft (作者)

[self.navigationController pushViewController:lliveplay animated:true];

通过navigationController也是一样

1***@qq.com

1***@qq.com - 撒打算打

大哥 解决了吗 我也碰到了 我要烦死了

  • lieft (作者)

    没有,没有研究了。现在离线包大改了,这个问题已经不适应了。

    2020-10-09 23:35

  • 1***@qq.com

    回复 lieft: 好吧 感谢

    2020-10-10 08:39

该问题目前已经被锁定, 无法添加新回复