『咕咚翻译』 开源了,一个手机端实现『划词翻译』的 Android 应用 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
gudong
V2EX    程序员

『咕咚翻译』 开源了,一个手机端实现『划词翻译』的 Android 应用

  •  
  •   gudong
    maoruibin 2016-03-03 12:38:47 +08:00 5987 次点击
    这是一个创建于 3562 天前的主题,其中的信息可能已经有所发展或是发生改变。

    自己最近开发的一个手机 App ,咕咚翻译,一个实现了划词翻译功能的 Android 应用。效果如下图,以前需要七步才能完成的翻译操作现在只要两步。

    目前项目已开源到 Github 项目地址

    咕咚翻译

    之前在这里有一个关于咕咚翻译的一些讨论帖,感谢热心的 V 友之前提供的一些反馈信息

    特别感谢TonyLOfficial提供的图标设计

    一个非常有执行力的大学生,再一次谢过~

    24 条回复    2016-03-04 20:22:20 +08:00
    karnaugh
        1
    karnaugh  
       2016-03-03 13:39:34 +08:00
    6666666
    oott123
        2
    oott123  
       2016-03-03 14:49:34 +08:00
    看效果图更像“剪贴板翻译”而不是“划词翻译”。
    感觉用辅助服务 API 是可以做到划词翻译的…
    garipan
        3
    garipan  
       2016-03-03 15:06:47 +08:00
    挺好的 感谢分享

    以前 ios 欧陆词典 /有道词典都是用这个方式的。但是 ios 的后台留驻是个问题
    gudong
        4
    gudong  
    OP
       2016-03-03 15:12:01 +08:00   1
    @oott123 没试过辅助服务,我看到有一个同学试过,好像不能拿到复制的内容,后来放弃了~
    gudong
        5
    gudong  
    OP
       2016-03-03 15:12:42 +08:00
    @garipan android 有道词典也有这个功能,但是稍显臃肿!不够简洁
    backsqpace
        6
    backsqpace  
       2016-03-03 16:35:19 +08:00 via iPhone
    star ,很不错
    hahastudio
        7
    hahastudio  
       2016-03-03 16:50:38 +08:00
    话说 Google Translate 是怎么做的呢,它是在菜单里单独有一个选项
    http://www.engadget.com/2015/10/07/google-translate-in-app-android-marshmallow/
    garipan
        8
    garipan  
       2016-03-03 17:30:45 +08:00
    @gudong 其实我主要是想说 能查完以后 立刻加进生词本里面
    gudong
        9
    gudong  
    OP
       2016-03-03 18:54:07 +08:00
    @garipan 但是这样自动性太强,其实不好,里面会生成大量的无用生词,加上收藏按钮,用户点击,说明他认可这是一个生词,你说的这个功能应该是历史记录展示,也有别人提到过,我想想~
    gudong
        10
    gudong  
    OP
       2016-03-03 18:55:14 +08:00
    @hahastudio 你用的应该是 Android 6.0 这是他的新特性,我看了下 6.0 以下不支持
    gpw1987
        11
    gpw1987  
       2016-03-03 21:54:08 +08:00
    这个可以有呀
    oroge
        12
    oroge  
       2016-03-03 22:00:51 +08:00
    @gudong 要支持这个类似 Google Translate 的特性工作量大吗?(感觉这个特性很好用的说)
    garipan
        13
    garipan  
       2016-03-03 23:44:44 +08:00
    @gudong 对对 我的意思是 你现在这个弹出窗口上一键收藏就挺好的
    可惜我用的是 ios 现在
    icedx
        14
    icedx  
       2016-03-03 23:55:41 +08:00
    软件非常不错 但是还是没能跨越 按下复制按钮的这个坎
    gudong
        15
    gudong  
    OP
       2016-03-04 01:07:19 +08:00
    @gpw1987 来了~
    gudong
        16
    gudong  
    OP
       2016-03-04 01:10:29 +08:00
    @oroge Google Translate 应该只是支持自己的应用,不能做到全局, Google 只是针对 6.0 出了一套 API ,让开发者在自己 APP 中去实现自定义的长按浮动弹框以及事件拦截,但是这需要其他应用自己的支持,所以目前实现意义不大,不过我会注意这块的~多谢提醒!
    gudong
        17
    gudong  
    OP
       2016-03-04 01:11:57 +08:00
    @garipan iOS 上有相应的划词词典,有网友提供了欧路词典,说是还不错!你可以试试~
    gudong
        18
    gudong  
    OP
       2016-03-04 01:16:07 +08:00
    @icedx 那你觉得怎样就理想了呢?如果不复制,你是想怎样会更方便?其余的方案我觉得可能需要硬件支持了~
    avatar
        19
    avatar  
       2016-03-04 06:03:58 +08:00   1
    Google Translate 用的是 6.0 的新特性, ACTION_PROCESS_TEXT ,你可以搜一下这个,很好实现。只需要在对应的 Activity 加一个 intent-filter 就可以了,像这样
    <intent-filter >
    <action android:name="android.intent.action.PROCESS_TEXT"/>
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="text/plain" />
    </intent-filter>
    gudong
        20
    gudong  
    OP
       2016-03-04 09:30:51 +08:00
    @avatar 谢谢你~
    icedx
        21
    icedx  
       2016-03-04 10:10:23 +08:00
    @gudong 不知道 我早就开发过类似咕咚翻译的软件 但是始终跨不过复制这个坎 复制可是在右上角的 单手操作很费劲...
    现在那个软件连我自己都不用...
    gudong
        22
    gudong  
    OP
       2016-03-04 10:27:26 +08:00
    @icedx 好吧,如果可以不复制就能翻译,扫描可以~
    farley
        23
    farley  
       2016-03-04 12:34:07 +08:00
    哪里有不复制就能翻译的啊?
    gudong
        24
    gudong  
    OP
       2016-03-04 20:22:20 +08:00
    @farley 有,这种叫扫描翻译, Google Translate 有这个功能,已经已经是另一个使用场景了~
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3138 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 11:43 PVG 19:43 LAX 03:43 JFK 06:43
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86