V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
mthli
V2EX  ›  分享创造

还在为刷微博点击链接时不时跳转到浏览器加载而烦恼吗?来试试 Ninja 网络浏览器吧!

  •  1
     
  •   mthli ·
    mthli · 2015-04-27 10:52:19 +08:00 · 3816 次点击
    这是一个创建于 3498 天前的主题,其中的信息可能已经有所发展或是发生改变。
    软件截图:



    项目地址: https://github.com/mthli/Ninja

    下载链接: https://github.com/mthli/Ninja/releases/download/v1.0.0/Ninja.1.0.0.apk

    系统要求:Android 4.1及其以上版本。

    通常我们在刷知乎、推特(微博)等社交App的时候都会点击链接,如果此类App没有内置浏览器的话,那就悲剧了,你得点击链接跳转到你的默认浏览器等待它加载完毕;或者先切换回主App让浏览器处于后台加载的状态。这样很浪费时间,也比较繁琐。

    所以我们就想,有没有什么比较好的方式可以解决上述问题呢?方式很简单,只要点击链接的时候直接让浏览器在后台加载不就可以了~所以我前前后后花了一个多月的时间撸了一个简单(并不) 的Android网络浏览器Ninja(忍者),主要解决这么一个问题。

    使用指南:

    1. 点击链接时设定Ninja作为你的默认浏览器。

    2. 单击链接Ninja会默认后台加载网页。加载网页的时候Ninja会在系统通知栏上显示当前的加载状态,你可以点击通知栏进入Ninja浏览网页。

    3. 双击链接(间隔 <= 300ms)Ninja会弹出上下文菜单,你可以选择跳转到浏览器加载,或者拷贝链接,或者分享。

    那么除了上述功能,Ninja还有哪些特色呢?

    1. 安装包小于200kb(相当于塞班时代的Opera mini浏览器的体积),然而常见的浏览器功能基本提供,所谓麻雀虽小,五脏俱全。

    2. 使用Android System WebView组件,html5test跑分最高可以达到509。与之对比的是Chrome/Firefox/Opera的510+,而UC只有350上下。

    3. AdBlock。Ninja提供了简单的AdBlock功能,实现原理是host屏蔽。

    4. 无限加载(加载限度取决于你手机的内存限制)。与Ninja类似的App有Link Bubble/Flynx,然而他们的Free版本均存在加载限制,而Ninja取消了这个限制,使得你可以无限加载(当然如果你想自己添加限制的话,clone我的代码稍作修改就可以了)。

    5. 通知栏显示。并不像Link Bubble/Flynx那样在桌面显示悬浮窗口(我认为悬浮窗口是邪恶的),而是把入口整合进系统通知栏,符合Android的设计规范。

    6. 等待添加新特性 :P

    其他:

    我暂时没有上架的打算,因为缺一个好看的启动图标,感兴趣的同学帮忙做一个吧 :P

    另外Ninja的代码量比较小(虽然风格不一定很好看),可以添加的功能还有很多,我会长期维护这个项目的。你可以通过Ninja的代码了解一个简单的浏览器是怎么写出来的。感兴趣的同学可以fork and pull request。
    9 条回复    2015-04-28 08:35:22 +08:00
    laruan14
        1
    laruan14  
       2015-04-27 12:20:12 +08:00   ❤️ 1
    看起来好像还不错OWO等会儿吃饭的时候试试!
    mthli
        2
    mthli  
    OP
       2015-04-27 12:40:14 +08:00 via Android
    @laruan14 谢谢支持 :)
    Stof
        3
    Stof  
       2015-04-27 13:09:13 +08:00 via iPhone   ❤️ 1
    值得鼓励
    等多少年之后希望可以用的上
    loading
        4
    loading  
       2015-04-27 13:22:06 +08:00 via Android   ❤️ 1
    构想不错。
    gangsta
        5
    gangsta  
       2015-04-27 13:26:38 +08:00   ❤️ 1
    good job
    crs0910
        6
    crs0910  
       2015-04-27 17:43:38 +08:00
    很不错
    BGYL
        7
    BGYL  
       2015-04-27 18:16:34 +08:00 via Android
    cool
    Hello1995
        8
    Hello1995  
       2015-04-28 08:17:38 +08:00 via Android   ❤️ 1
    喜欢这种爱意满满的作品,先给楼主赞一个,然后站着说话不腰疼的我来提几个建议:

    上次也有一个 V 友发布了一个浏览器( XBrowser ),当时我也提了这样的一个建议,即增加自定义 User-Agent 的功能。虽然需求很少,但有时候用户的确需要修改 UA,尽管大部分移动端浏览器有"请求切换到桌面版网站"的选项,但感觉这并不够,如果能让用户自定义 UA 那是最好。我用过的浏览器中,Firefox 浏览器可以在 about:config 页面中设置 UA,但是步骤比较繁琐;自由浏览器也有自定义 UA 功能,但无法保存 UA,当你切换回默认 UA 后又需要再次设置 UA。

    关于利用 hosts 来屏蔽广告,也可以让用户自己添加内容。
    mthli
        9
    mthli  
    OP
       2015-04-28 08:35:22 +08:00
    @Hello1995 自定义UA这个功能加上没问题,可以做到。自己添加hosts屏蔽广告也没问题。这些功能只是做起来稍微繁琐一些,但是难度并不大。我会再接下来添加的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2657 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 05:25 · PVG 13:25 · LAX 21:25 · JFK 00:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.