从想做App开发到今天差不多半年时间了,现在已经有3个APP发布在谷歌应用商店上面。是时候给自己做个总结了。
本人想做app的想法是源于想找一个拨打电话的应用,能够显示相对较大的头像。我使用的Android/ target=_blank class=infotextkey>安卓手机,所以所有的经验都是基于安卓的开发。经过搜索,我没有找到,大部分的快速联系人都是一般大小的图标,或者是联系人姓名。我就想能不能自己开发一个应用,能够显示大的头像,让视力不好的,比如老年人可以一眼认出联系人,然后拨打号码。
说干就干。本人也不能完全说是零基础。在20多年前的大学里,也学过C语言,BASIC语言。研究生期间也用VB编过小程序。现在的本职工作是土木工程师,平时用电脑最多的是画图软件比如AutoCAD, MicroStation。但对电脑和软件还是比较有兴趣的。
首先查询到的最流行的安卓开发工具就是Android Studio,而且是免费的。那就下载安装吧。根据自带的实例教程,学习了基本的操作。其实各种语言都是相似的,编程逻辑也是相通的。估计搞开发的都编过hello world这个程序吧。
最开始的时候,想开发一款应用只满足自己的需要就可以了。所以用家里常用联系人的头像作为打电话按钮的图标,在一个手机屏幕界面里可以显示9个联系人。然后增加了设置电话和拨打电话的功能。在网上,找到相应的类似的程序源代码都不难。根据自己的需要改动和组合精简作为己用。
最后的成品是这个样子的。通过一些方式事先剪裁好圆形的头像(圆形比方形好看),在每个头像下面设计一个按钮来输入电话。最后,点击头像就可以拨号了。这样一来,界面非常简洁,没有多余的按钮。生成安装文件apk后,转入自己的手机中,安装使用了一段时间,很顺利。
实践过程中学到编出一个应用,不是仅仅会coding,还需要美工(对应用的界面进行设计,不能太难看了吧)。还要制作图标(而且对不同分辨率,还要制作不同的大小的图标,这点很蛋疼)。还有就是,在编程工程中,难免会出错。排查错误,改正编码是一定避免不了的。
这第一个应用,取名叫QinPhone(亲人电话)有太多的局限性了。首先,联系人照片是事先写入程序的,不能更改。即使是自己的家人,有时也想更换一下头像照片。而且这个应用只能自己使用,不能推广。有了这个想法后,决定开发出可以自己设置头像照片的功能,这样应用就可以开放,对任何人都可以使用了。
出于对隐私的考虑,本人是不太愿意让用户去建立一个网上的账号,然后把照片存到网上。每次打开应用,都去调用网络信息。所以还是把存联系人头像的功能设计为存在本地手机上。对于照片的剪裁,网上有很多的实例。我借鉴了一个常用的,并且最后剪裁成圆形的照片作为自己开发程序的功能之一。因为使用了这个常用的相机的一个功能(intent),这里存在个问题,在后面会讲到。
为了把头像做得尽可能的大,我把界面设计成了6个联系人。对一般人,常用的6个电话也够用了。随时也可以更改照片和电话。应用取名为PicPicture,意思是选取照片的意思,Pic是Pick的谐音。
开发过程中,遇到的问题是当应用选取照片并剪切成联系人头像,并存储到本地路径后,下次打开应用,这六个联系人的头像还是默认值。
这个问题一直没有解决。在这个想办法解决的过程中,为了使应用能够被其他人使用,我把头像改成了通用的家庭成员称谓,比如父亲,母亲等。实际效果如下。现在看,还是简陋了些。而且在美观方面也有改进的空间。但作为一个基本可以使用的应用,我还是决定把它尝试发布出去,也是对发布应用的过程进行学习。应用取名为9 Big Family Call Button (有点长)。
发布安卓应用,最常见的就是发布到它自己的应用商店里,使用play console的服务就可以。需要建立账号,并且交$35费用就可以发布了。大概经过1天时间,就发布到google play store上面了。这一刻,还是很激动的,很有成就感。
下面还是继续开发最初的应用。在没有合适的解决方法下,我单独开发出另一个应用PhotoCall,去调用前一个应用生产的头像,然后在每个头像下面增加一个设置电话的按钮和拨号按钮。曾经想设置一个透明的按钮去覆盖头像,但是没有成功。好在最后的结果还是比较满意的。在对这两个应用的使用后,发布到了应用商店上面。
还没完。想能不能让自己的应用给自己带来些收益。于是研究一下,要么把应用设置成收费的,要么加广告。后来还是觉得加广告好些,毕竟这年头愿意买应用的不多。又是一些研究啊,加广告也有3种不同的方式。最终选取了比较常用的banner横幅的形式。又学会了申请开通AdMob账户,把广告代码加入到相应的位置里。
期间也学到一些教训,就是生产发布的应用时候,一定要记录密匙。如果忘记了,下次就不能发布升级,而只能作为新应用发布。
再后来,就是为了方便用户,在两个应用里增加了转到另一个应用的按钮。
又过了一段时间,发现下载使用的用户不多,尝试了打广告。最开始是对一个应用演示的视频打广告,效果不是很好。后来直接对应用打广告,效果还是不错的。PhotoCall的下载已经突破100了。打广告又是对Google Ads的学习过程。
对于一个非计算机专业的非科班,能够发布出有一定实用性的应用,让更多的人受益,还是很高兴的。
总结一下不足吧,如果有能力希望未来能改进自己的应用。
1. 为了实现最初的功能,分成了2个应用,还是不方便用户。希望可以合并。
2. 剪切功能的实现,使用了com.android.camera.action.CROP这个intent,但是有些安卓手机尤其是原生安卓系统的,不带这个功能,强行使用会出错。希望以后能找到更通用的剪切模块。
3. 或许以后设计成调用通讯录里的联系人,把联系人的头像放大(但原图可能就不大,看效果吧)。
好了,以上就是对这半年的业余时间开发应用的总结。总体来说,对自己是锻炼和提高的。对于以后做任何事情,尤其是没有经验的事情,增加了很大的信心。很多事情没有你想象的那么难。我能做到,你也行!对吧!