您的位置:首页 > 移动开发 > Android开发

Pro Android学习笔记(一六九):发布应用(2):应用准备

2015-07-02 10:26 357 查看
文章转载只能用于非商业性质,且不能带有虚拟货币、积分、注册等附加条件。转载须注明出处http://blog.csdn.net/flowingflying/以及作者@恺风Wei


应用本地化

如果应用支持多种语音,在res/下通过不同的目录进行适配,例如res/values-fr则是针对缺省语音为法文的系统。因此,与UI有关的字符串值,通常在res/values(-xx)/下的xml,如strings.xml中设定。

文字以及风格需要本地方适应,例如drawable,menus(不同国家可能不仅是文章问题,不同的组合,多些或少些菜单项),image,color。如果我们为不同语音设定不同的颜色,可以在xml中定义颜色,例如<color name="alert_color">#f00</color>,这样就可以分别进行适配。


应用图标

应用图标和名称是很重要的,可以看看同类的其他应用如何设计,不要和它们混淆。图标要能适配不同尺寸或像素的手机,不仅仅是尺寸缩放,有时还需要对画面进行调整。 这里需要注意,尺寸和像素是两个问题,像素表明可以提供更清晰的图像,例如我们可能在超高像素采用96×96,在高像素用72×72,在普通用48×48。在res/下目录命名后缀,尺寸分别为small, normal, large, xlarge,而像素高低则分别为ldpi, mdpi, hdpi, xhdpi, nodpi,
tvdpi
。而尺寸方面,往往和layout布局有关,这有关用户视图的大小。

现在大屏幕超高清为趋势,实际上我们并不需要太过担心这些问题,小尺寸屏幕的往往不是我们的目标用户,忽略了也就忽略了。


应用收费

(1)付费下载

在国内的应用商店,还没留意到哪个是提供付费下载的。Google Play支持付费下载,虽然国内用户几乎不使用Google Play。假设应用有付费和免费,有要使用同样的代码库,我们如何区分这是一个付费的还是免费的用户 。我们可以在代码中利用PackageManager来进行:

this.getPackageManager().checkSignatures( mainApppkg, keyPkg);

checkSignatures(String pkg1, String pkg2)比较两个包是否有着同样的签名,如果一样,则返回SIGNATURE_MATCH,不一样则是SIGNATURE_NO_MATCH或者SIGNATURE_UNKNOWN_PACKAGE。如果一致则允许某些权限的使用。

具体到区分免费应用和付费应用的情况,付费版和免费版的包名不同,签名也不同。当判断某个功能是否允许,则比较当前的主应用包和付费应用包的签名是否一致。如果一致,则是付费的。当然,还有很多其他方法,例如在代码中标明版本,区分付费版本和收费版本。 对于需要用户登录的应用,有服务器返回用户属性,包括免费用户还是付费用户。

(2)广告收入

网络广告,如AdMob和AdSense,在应用中使用它们的SDK。不过我挺讨厌这些网络广告的。

此外还有应用内购买等等。我们需要考虑如何在收入和用户体验取得平衡。



相关链接:
我的Android开发相关文章
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: