产品思考|基于webkit的有趣ideas(一)

都已经是2022年末了,但手机浏览器到目前仍然不能算一个好的产品。主要原因除了互联网公司希望把内容和客户行为数据都留在自己的app里,还有一部分原因是这么多年过去,浏览器内核webkit本身也没有什么killer feature。日复一日的优化渲染效率也不现实,毕竟根据摩尔定律,每过一年半载 ,硬件性能就会增强一倍。

笔者曾经在工作中思考过如何对webkit进行优化,以便给应用层带来更好玩的功能。

当时还打算把这些脑洞想法一一实现后发表专利,但是时过境迁,种种原因没有继续下去。现在分享出来,贻笑大方。

1,手势标签

这个想法很简单,就是在手机浏览器上能够快速添加标签,不用找各种标签入口。对于标签查找也可以用手势呼出。

这部分的功能应用层就可以实现,并不用在webkit层进行支持。当然,这个手势操作其实从产品层面又需要考虑对手势的管理。感觉会引入更多的复杂性。

2,一种实现跨Android多平台的函数调用方法

这个想法是我工作中遇到的问题。许多Android厂商会在os内核中修改类对象的定义方式。比如 AudioTrack类,华为,小米,魅族的都不一样。这就会导致如果我们在代码中直接使用AudioTrack对象的话,在本机上测试没问题,但是在某些机器上出现内存溢出等错误。

这个问题抽象后如下:

比如华为手机os提供了公共音频类A供上层调用

Class A:

{

   public:

   int getXXX(){  return x; }

  private:

   int x;

   int y;

}

而小米手机的公共音频类A的定义方式不同

Class A:

{

   public:

   int getXXX(){  return x; }

  private:

   int x;

   int y;

   int  z;

}

那么,此时,如果应用层代码直接使用了A a对象,那么在某些手机上,当调用a.getXXX()时就可能发生出错。解决这种问题就需要使用placement new为A类申请内存,而不是依赖编译器进行分配。比如

int* buff = new(256);

memset(buff,0,256*sizeof(int));

A* a = new (buff)A()

这样使用a指针就能避免内存出错的问题

下期请见:

3,网页分类,块内分割
4,网页内容分块保存
5,用户自定义的网页排版算法
6,用户网页内容笔记(内容保存)
7,一种新奇网页加载显示的方式 (部分RenderTree中的子树,图片)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值