Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

iTeaTime(技术清谈)【-004期】【代号:星际穿越】 #128

Open
ChenYilong opened this issue May 31, 2019 · 0 comments
Open

iTeaTime(技术清谈)【-004期】【代号:星际穿越】 #128

ChenYilong opened this issue May 31, 2019 · 0 comments
Labels

Comments

@ChenYilong
Copy link
Owner

ChenYilong commented May 31, 2019

技术清谈【-004期】【代号:星际穿越】


本期特辑:hybrid、跨平台特辑
本期出品人:微博@iOS程序犭袁

注:题目难度五星为满分,各个类目下题目从易到难依次排列。



hybrid 类 【easy级别】


1【问题】【iOS】【hybrid】请阐述 JavaScriptCore 与 WebCore 工作过程中与线程的关系,阐述基于这种关系,对 JS 与 native 交互的影响,阐述解决优化。

【难度】🌟
【出题人】 微博@iOS程序犭袁


2【问题】【iOS】【Android】【hybrid】嵌入 native 的 web 页面,其 dom 的 localStorage 操作,在 iOS 的沙盒环境下的,阐述使用场景与限制或优势。基于局限,有无替代方案或者优化建议。

【难度】🌟🌟
【出题人】 微博@iOS程序犭袁


3【问题】【iOS】【hybrid】阐述 UIWebView 迁移到 WKWebView 的原因,以及有无遇到阻力,如何解决?

【注】work around 方案也可以。
【难度】🌟🌟
【出题人】 微博@iOS程序犭袁


4【问题】【iOS】【Android】【hybrid】如何用 js 创建一个原生的 Label 居中显示到某个 ViewController/ activity 上,可以通过 JS 修改 Label 的 text 属性,iOS版本代码如下:

var label = new Label();
label.text("Lefe_x");

// view 为 App 当前显示的 ViewController 的 view,通过 js 获取。
label.addToSuperView(view);

【难度】🌟🌟🌟
【出题人】 百度阅读-Lefe_x


5【问题】【iOS】【Android】【hybrid】阐述 H5 秒开方案,从 Web 层,和native层分别阐述。

【难度】🌟🌟🌟
【出题人】 微博@iOS程序犭袁


6【问题】【iOS】【hybrid】iOS 中如何低成本实现 WebRTC 功能,你的方案,请罗列有什么限制,主要从以下角度分析:

  • 与其他平台相比
  • 与常规native功能相比

【难度】🌟🌟🌟
【出题人】 微博@iOS程序犭袁


7【问题】【iOS】【Android】【hybrid】请阐述下 app 开发者如何保证用户访问的页面是安全页面,如何保证自己的网站,嵌入到 native 的 WebView 中,不会被劫持、被 js 注入。

参考场景:

  • PC端的Chrome在遇到非HTTPS页面时可以报警告,但很少见 native 应用中报这些错误。

【难度】🌟🌟🌟
【出题人】 微博@iOS程序犭袁


8【问题】【iOS】【hybrid】跨平台方案中,如何截取特定 div 标签,并保存为一张图片。跨平台语言不限:RN、Weex。

场景参考招商银行-掌上生活,发送电影卡邀请函。

【难度】🌟🌟🌟🌟
【出题人】 微博@iOS程序犭袁


9【问题】【iOS】【hybrid】针对 RN 开发人员不熟悉native开发的情况下,会出现很多操作,比如绘制一个3000px的cell,cell重用符号滥用,在scrollView上强行拼view而不用tableView,等等,针对这些情况,你作为一个native的开发,怎么避免或者及时预警?

【难度】🌟🌟🌟🌟
【出题人】 大灰灰-平安-iOS-上海


常规类


10【问题】【iOS】如何设计一个圆形的按钮,点击区域也是圆形的?
【难度】🌟
【出题人】 微博@iOS程序犭袁


11【问题】【计算机基础】16进制的 FF+2 后等于什么,有哪几种情况?
【难度】🌟
【出题人】 微博@iOS程序犭袁


12【问题】【iOS】【C】AB线程执行到一半去执行C线程,用Objective-C/Swift和C各自怎么实现。给出代码示例。
【难度】🌟🌟🌟
【出题人】 微博@iOS程序犭袁


13【问题】【算法】给出10W条人和人之间的朋友关系,求出这些朋友关系中有多少个朋友圈(如AB、BC、DE、E
F,这4对关系中存在两个朋友圈),并给出算法的时间复杂度。
【难度】🌟🌟
【出题人】 微博@iOS程序犭袁


hybrid 类 【medium级别】


14【问题】如何自定义 Web 使用的 UserAgent ?

【难度】🌟🌟🌟
【出题人】 颜-物灵-iOS

//one more thing

  • 比较通用的方法, 适用于 WKWebView 或者 UIWebview.

15【问题】嵌套进native的 web 页面,如何展示用户相册图片?

【难度】🌟🌟🌟
【出题人】 颜-物灵-iOS

//one more thing


16【问题】 如何实现 ReactNative 代码的动态更新?

【难度】🌟🌟🌟
【出题人】 颜-物灵-iOS

//one more thing


17【问题】【 Lua 实现 App 动态化方案】如何在 iOS 项目中,集成 luajit, 实现特定业务逻辑的动态更新.

【难度】🌟🌟🌟
【出题人】 颜-物灵-iOS

//one more thing


18 【问题】【iOS】【hybrid】调用 js 绘图库的情况下,调用 js 绘图通过以下方式调用会出现什么情况, 该怎么解决

- (void)webViewDidFinishLoad:(UIWebView *)webView {
    // 调用 js 绘图
}

// 或者

- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation {
   // 调用 js 绘图
}

【难度】🌟🌟
【出题人】 PlutoY-广州YY


19 【问题】【iOS】【hybrid】WKWebView 加载本地文件如何做兼容?

【难度】🌟🌟
【出题人】PlutoY-广州YY


Posted by 微博@iOS程序犭袁
原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0


One more thing...

【非礼勿视】以下为彩蛋部分,建议28岁以上男性观看


@ChenYilong ChenYilong changed the title 技术清谈【-004期】【代号:星际穿越】 iTeaTime(技术清谈)【-004期】【代号:星际穿越】 Jul 10, 2019
@ChenYilong ChenYilong added note and removed note labels Jul 12, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant