开发缘起

近年来年齿渐衰,老眼昏花,看网页已颇感吃力。不得已把字体放大再放大,但长时观看仍感眼睛疲劳。因此想找一个可以随时朗读手机上看到的文字的App。网上找了一圈没有找到适用的、满意的。找到过程中发现苹果的iSO系统有一个“朗读所选项”的功能,我使用的安卓系统好像没有这个功能。

于是我想是不是可以自己开发一个App实现这个功能。可是我从来没有开发安卓App的经验,也不会JAVA语言,行吗?不过我想我年轻的时候玩过Delphi,现在也时不时搞些vba,js等小玩意,通过网上查找一些教程,应该行吧。

开发过程

首先我上网找了开发安卓App所需的软件,现在主流应该是Android Studio。并罗列了我需要实现的功能:

  • 从其他App中把选中的文字转移到我的App;
  • 朗读文本;
  • 编辑文字。

根据这些主要功能,我上网查找了相关实现的源代码,感觉还行,不复杂。于是安装Android Studio,安装JAVA环境,开干。

新建工程需要一个名称,想了想觉得叫”随手读“比较好,英文就叫HandySpeak。

然后首先是界面,比较简单,上面文本框,下面一个播放按钮。上网查了安卓的布局原理,自己试来试去,基本实现了。2天以后,终于实现了App的基本功能。

试用过程中,发现文本框滚动较慢,没有其他软件中滚动的丝滑感,而且一按到文本框就弹出一个键盘,相当不爽。想到应该默认文本框不可编辑,双击进入编辑状态。于是又是网上搜搜搜,实现了我要的效果。

再想到应该实现从文本的指定位置朗读功能,希望能从滚动到的第一行开始朗读。这个功能一开始不知道怎么搜,后来终于也搜出了些结果,知道应该怎么实现该功能了。

经过一周多的开发调试,软件终于基本实现了我希望的功能。试用了几天效果不错,心里很高兴,想把他分享出来。看了一下网上发布App的地方,大多要上传身份证等,觉得麻烦。因为知乎用的较多,就把这个软件发布在这里了。(这是不是第一个在知乎首发的App^皿^)

总之,这个App很简单,主程序300行不到,基本通过网上现学的知识,把他实现了。

如果有哪位朋友使用了这个App,感到有哪些欠缺的地方,欢迎提出宝贵意见。我水平较渣,如果力所能及,意见又比较符合我的感觉,我会想办法更新完善。

附:随手读App说明

本软件实现了朗读其他App中的可选择文本的功能。

使用方法:

在其他App中选中待朗读文字,选择弹出菜单中的“随手读”项,可以把选中的文字显示在随手读App中,按播放即可朗读文字。
也可以在选中文字后,选择弹出菜单中的“分享”项,再选择“随手读”应用,与上面一样可以把选中的文字显示在随手读App中,按播放即可朗读文字。
上述两种操作的区别是:选“随手读”只能处理大约1000汉字以内的文字,而选“分享”则可以处理多得多的文字(具体有没有限制没有测试)。估计前一种情况是由于目前安卓系统的限制。所以朗读大量文字请优先选用“分享”功能。
为了方便实现从文本中间的某个地方开始朗读的功能,朗读前可以先滚动文本显示区到你希望朗读的地方,将从显示的第一行开始朗读。
菜单“系统TTS设置”可以进入安卓系统的文字朗读设置功能,方便你设置朗读的引擎、语言、读速等各种参数。
如果不能朗读中文,需要你安装安卓中文朗读引擎,如“讯飞语记”等。
默认文本区不可编辑。双击可以进入编辑状态。按手机回退键可以退出编辑状态。

下载地址:

App下载地址

记录一下开发选择文本朗读的安卓App的过程相关推荐

  1. 开发自己的第一个安卓app

    开发自己的第一个安卓app 在开发安卓app的时候,首先我们需要配置一下电脑的开发环境.到jdk官网下载最新版本的jdk安装包. Window64位下载地址:http://download.oracl ...

  2. Android:安卓APP启动过程简介

    你打开一个安卓系统 它的界面是Launcher 进程,它不断的检测用户的触摸落在哪个APP上面,如果你的触摸落在空白它不做处理,你要滑动他就给你滑动 当用户触摸这个app的时候, 他会进行下面的流程 ...

  3. 安卓开发环境的搭建(安卓app开发流程)

    1.下载并安装JDK Android开发需要使用Java语言,因此需要先安装JDK(Java Development Kit).可以在Oracle官网上下载适合自己操作系统的JDK. 2.下载并安装A ...

  4. 手机APP开发:学JAVA转安卓APP开发是不是很容易?

    成都亿合云商小编为您分享:Android开发是以Java语言为基础的,Android 虽然使用Java 语言作为开发工具,但是在实际开发中发现,还是与Java SDK 有一些不同的地方.Android ...

  5. 软银开放Pepper开发,给机器人写安卓App是怎样一种体验?

    日本软银推出的Pepper智能机器人 新浪科技讯 北京时间5月19日下午消息,谷歌Android移动操作系统的触角正在不断扩大,从今天开始,开发者可以为日本电信公司软银的Pepper人形机器人设计An ...

  6. 搭建Android开发环境 以及 ionic 编译安卓app步骤

    1. 下载安装JDK 下载地址: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htm ...

  7. Android:安卓APP开发显示一个美女,安卓APP开发显示两个美女

    控件的宽度 android:layout_width="match_parent" 控件的高度 android:layout_height="match_parent&q ...

  8. 切水果安卓APP逆向过程报告----安卓逆向入门

    一.准备工作 下载切水果大战原版.apk. 链接:https://pan.baidu.com/s/18N_Lg8C4O5D1J7cbt99W6Q?pwd=p625 提取码:p625 开始游戏 找找有什 ...

  9. 安卓 App 库存系统开发 开发成本估计

    一个客户想外包开发一个使用超高频 RFID 安卓 App 系统开发 需要预估算一下开发成本及时间 需要只需要几项基本功能,同时有特殊要求 基本功能 需要盘点功能 需要加 Tag 功能 需要网页可以用 ...

最新文章

  1. 关上Deepfake的潘多拉魔盒,RealAI推出深度伪造视频检测工具
  2. 《交互式程序设计 第2版》一2.7 作用域
  3. 创建一个springMVC项目总结
  4. Python-GUI PyQT5编程:QTdesigner设计工具及UI转换py文件
  5. ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小解决办法
  6. 2020蓝桥杯省赛---java---B---1(门牌制作)
  7. java servlet spring_带着新人简单看看servlet到springmvc
  8. matlab内存管理工具,[转载]MATLAB内存管理
  9. 表单提交中文时出现乱码的问题
  10. AEC、AGC、ANS是什么意思?
  11. c 字符输入与验证,毁人不倦
  12. 录音转文字工具,支持6大语音识别引擎识别,非常好用的网赚工具!
  13. SpringBoot+海康威视摄像头实现在前端的预览
  14. 编译原理———词法分析器
  15. FTP建议使用教程——以Xftp7为例
  16. linux显示点阵字体,使用文泉驿点阵字体解决Linux中文化问题
  17. 百度地图经纬度转腾讯/高德
  18. Oracle数据库基础(二)
  19. PP-OCR论文翻译
  20. 产品经理(21) #数据分析

热门文章

  1. 用 Axure RP 9 设计百度搜索网页
  2. VR场景会对普通场景的摄像机有影响
  3. VR场景制作报价是多少
  4. 【Mysql】EVENT 使用基础 - Create Event
  5. 完美代替IIS的网络盒子NetBox
  6. 湖南hp服务器虚拟化解决方案,HP刀片服务器 虚拟化整合解决方案-2017年11月.doc...
  7. PMP之成本预测(BAC、EAC、ETC)
  8. 为何机房要升级动环监控系统?
  9. SqlServer表与表之间字段一对多sql语句写法
  10. 网络学习笔记之IP地址