0-2岁的app开发人员必读,Android开发APP前的准备事项

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

随着移动互联网的兴起,各行各业对移动应用的需求越来越大,从事APP开发的人也越来越多,APP开发行业可以说是方兴未艾。APP开发是比较复杂的事情,涉及产品、美工设计、服务器端开发、Android/iOS开发、软件测试和项目管理等各方面。这些方面都是相互关联的,如果要做好一个APP,需要对上述各方面都有所了解。

在实际工作中,许多从别的行业转行从事APP开发或从事APP开发一两年的人员,对APP开发的基础知识不甚了解,需要关注的地方都没有考虑到,导致在开发APP的过程中犯了许多低级错误,而这些本来是可以避免的;而在APP开发行业中,从事APP开发一两年的人员又是占了绝大多数。在许多创业型的小公司里,也没有专职的产品、美工和测试人员,往往要求Android/iOS开发人员做到一专多能、身兼数职。

目前介绍APP开发的书籍很多,大都局限于某一方面,内容不够全面,并且许多书籍偏于理论,与实际联系不紧密。国内外市面上大多数的Android开发类图书,基本上可以分为两类:

一类是从系统内核和源代码入手,书的内容重在分析Android各个模块的运行机制,深入理解系统肯定对应用开发者有好处,但很多时候并不是那么实用;

另一类是标准教程,基本内容与Android官方文档类似,围绕API的用法就事论事地讲解,这类书在写法、教学思路和实例上虽然各有千秋,但在实际工作中就会发现还远远不够。

有感于此,一本面向初级读者且全面介绍APP开发的书《Android APP开发实战——从规划到上线全程详解》诞生了。与上述两类书都不同,本书完全从实战出发,以从零开始规划一款APP至APP上线这个过程为主线,介绍整个过程中所涉及的知识,而不局限于某一方面。这样一来,读者将对APP开发的相关知识有一个全面的了解,进而以更专业的方式完成APP的开发。​

 

9ccc0ca9ly1frz1uwl4mtj205706a745.jpg

​点击链接购买纸书

本书是从多个实际项目中获得的经验总结,可以使读者在开发APP的过程中少犯低级错误,减少可能遇到的各种问题,从而提高开发效率。

   1.1 开发App前需要准备哪些工作?

1.1 APP适配的硬件

1.2 APP横竖屏界面的选择

1.3 APP适配的操作系统版本

1.4 APP适配的屏幕尺寸

1.5 APP开发样机的选择

1.6 APP内置的图片资源

开发APP前,除了竞品分析和项目组搭建外,还有以下事项需要确定。

   1.1 APP适配的硬件

大多数用户主要是将PAD用于娱乐、教育或企业办公。对于游戏、视频播放、图形图像处理、阅读、教育或企业办公等类型的APP,建议适配手机和PAD。电商或理财等类型的APP建议只适配手机。

随着硬件性能和网速的提高,使用PAD的用户越来倾向于直接打开相关的网站,而不愿去下载应用,以免频繁升级应用。因此在开发APP的时候,为节约资源,加快开发进度,可以先开发网站和手机版本的APP,最后再开发PAD版本的APP。

   1.2  APP横竖屏界面的选择

目前大部分PAD的尺寸都是大于等于7.9英寸,对于PAD版本的应用可以只考虑开发横屏界面,不用考虑竖屏界面。还有一部分PAD的尺寸在7英寸左右,对于这类PAD,可以考虑直接让用户使用手机版本APP(如果一个APP在6英寸的手机上使用,没有界面问题,那在7英寸的PAD上通常也可以正常使用)。

对于手机版本的应用:游戏、视频播放、图形图像处理、阅读、教育或企业办公等类型的APP建议支持横屏和竖屏;电商或理财等类型的APP可以只支持竖屏。

   1.3  APP适配的操作系统版本

iOS APP建议适配iOS 8.0以上版本,Android APP建议适配Android 4.2以上版本,可以根据Apple和Google提供的各版本系统占有率的统计数据做实时调整。使用Android Studio新建工程时,在图1-1所示的界面,单击“Help me choose”链接,显示如图1-2所示的界面,列出了Android系统各版本的市场占有率。

9ccc0ca9ly1frz1yms8vgj20e60aemxe.jpg

​图1-1

9ccc0ca9ly1frz1yuo235j20gh0axwew.jpg

​图1-2

对于大多数公司来说,毕竟开发和测试资源有限,对于占有率低于5%的系统版本建议不必考虑支持。

   1.4  APP适配的屏幕尺寸

Apple产品的尺寸不像Android产品那么多,每种尺寸的用户量巨大,除了iPhone 4系列和之前系列的手机外,其余型号的手机和PAD都要适配。

Android产品的尺寸千差万别,建议适配的手机屏幕基准尺寸为5英寸、5.5英寸和6英寸,PAD屏幕基准尺寸为7英寸、8英寸和10英寸;屏幕像素密度支持MDPI、HDPI、XHDPI和XXHDPI这4种。

   1.5  APP开发样机的选择

Apple的机型比较少,除了iPhone 4系列的手机外,其余每个机型都可以考虑购买样机。

Android的机型比较多,在选择机型的时候,应根据以下几项综合判断。

屏幕尺寸、屏幕像素密度、内存、价格和目标用户。

APP在小内存(1GB)低端机(低于1千元)上可以正常使用,那在中高端机上肯定也可以正常使用,如果目标用户包括低端用户,那一定要购买小内存低端机,大内存高端机可以不买。

如果不考虑低端设备用户,那屏幕密度为MDPI 的样机可以不买。

友盟和极光等厂商也会发布一些关于不同设备的市场占有率等的数据统计报告,在选择开发样机的时候,可以做参考。

   1.6  APP内置的图片资源

Apple 的产品硬件配置高、屏幕好,所以iOS APP通常内置两套图片,即@2x和@3x分辨率的图片。

Android的产品中,屏幕像素密度为XXHDPI的比较少,且大多数产品的配置不高,为了节约存储空间和减少APP的大小,Android APP通常只内置一套完整的像素密度为XHDPI的图片,以及部分MDPI、HDPI和XXHDPI的图片。

如果APP定位高端用户,建议还是要内置一套完整的像素密度为XXHDPI的图片。

本文摘自《Android APP开发实战——从规划到上线全程详解》

9ccc0ca9ly1frz1z6h7lhj205706a745.jpg

《Android APP开发实战》

强增  著

​点击链接购买纸书

本书从实战出发,以从零开始规划一款APP至APP上线这个过程为主线,尽量贴合实战,介绍整个过程中所涉及的各类知识,而不局限于某一方面,使得读者对APP开发相关知识有一个全面的了解,帮助他们开阔眼界,且能够以更专业的方式完成APP的开发。 

本书的许多内容是在官方文档之上,从多个实际项目中获得的经验总结,可以使读者在开发APP的过程中,少犯低级错误,减少可能遇到的各种坑和提高开发效率。  ​

9ccc0ca9ly1frz20hq4upg20hs01pt93.gif

推荐阅读

2018年5月新书书单(文末福利)

2018年4月新书书单

异步图书最全Python书单

一份程序员必备的算法书单

第一本Python神经网络编程图书

9ccc0ca9ly1frz20z3xe4j205w05y74f.jpg

​长按二维码,可以关注我们哟

每天与你分享IT好文。

 

在“异步图书”后台回复“关注”,即可免费获得2000门在线视频课程

点击阅读原文,购买《Android APP开发实战——从规划到上线全程详解》

阅读原文

转载于:https://my.oschina.net/u/3722671/blog/1825173

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/277843.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FixedThreadPool吞掉了异常

为了方便遍描述问题,如下是简化后的 public class RunException {public static void main(String[] args) { ExecutorService readerPool Executors.newFixedThreadPool(3); readerPool.submit(new Runnable() { public void run() { throw new RuntimeException(…

Teams Meeting App的 task 弹出框

前几篇文章我们介绍了 Teams Meeting App 的各种类型和如何从无到有的使用 net6 和 c# 来开发一个 Teams Meeting app,那今天我们开始讨论一些 meeting app 的高级互动: task 弹出框。我们先来快速修改一下之前的代码,看看什么是 task 弹出框…

react 学习

react官网地址:http://facebook.github.io/react/ webpack官网地址:http://webpack.js.org/ 英文 https://www.webpackjs.com/ 中文 参考资料: React 入门实例教程-阮一峰 webpack的学习 学习列表: 了解react的语法&#x…

如何获取Teams Meeting 详情

最近有一些朋友问我,有没有可能获取到会议的详情,我搜索了目前所有的 teams 文档,发现有一个api可以获取,不过在我写这篇文章的时候,这个 api 还在 preview 阶段,可能在正式发布前,还会有一些变…

C++ : 内联函数和引用变量

一.内联函数 内联函数和普通函数的使用方法没有本质区别&#xff0c;我们来看一个例子&#xff0c;下面展示了内联函数的使用方法&#xff1a; #include <iostream> using namespace std; //下面展示内联函数的使用 inline double square(double x) {return (x*x);} int…

Teams Meeting 实时事件通知

Microsoft Teams最近推出了很多新的功能和api&#xff0c;我们今天就来一起看一下 teams 会议的实时事件通知&#xff0c;我觉得有了这个功能&#xff0c;我们的app&#xff0c;我们的bot又可以有很多可以实现的场景了。 我们来看看如何在 c# 里处理会议开始和结束这两个事件。…

error记录 | 不能将参数 1 从“const char [5]”转换为“LPCTSTR

Windows使用两种字符集ANSI和UNICODE&#xff0c;前者就是通常使用的单字节方式&#xff0c;但这种方式处理象中文这样的双字节字符不方便&#xff0c;容易出现半个汉字的情况。而后者是双字节方式&#xff0c;方便处理双字节字符。Windows NT的所有与字符有关的函数都提供两…

JMM 学习笔记

并发编程的模型 并发编程需要解决的两个问题&#xff1a;线程之间如何同步&#xff0c;线程之间如何通信。 线程之间通信&#xff1a;共享内存&#xff0c;消息传递。 共享内存通过线程之间读-写程序的公共状态进行通信。消息传递要通过线程之间主动传递消息进行通信。 线程之间…

嵌套函数,匿名函数,高阶函数

目录 嵌套函数匿名函数高阶函数嵌套函数 就是在函数里再定义一个函数 # 1,函数内部可以在定义函数 # 2,函数要想执行&#xff0c;必须要先被调用 def name1():print(kk)def name2():print(vfx)name2() name1() 输出&#xff1a; kk vfx name2 现在他内部代码找输出&#xff0c;…

Teams Developer Portal介绍

在去年的 Build2021 大会上讲到的 Teams Developer Portal 已经上线一段时间了&#xff0c;我这几天玩了一下&#xff0c;发现比之前的 app studio 强大了很多&#xff0c;所以赶快写篇文章和大家分享。 Developer Portal 有两种访问的方式&#xff0c;一个是网页版&#xff0…

使用环境变量来配置 Teams App 的 manifest

上篇文章我们介绍了 Teams 的 Developer Portal&#xff0c;今天我想分享一个dev portal里一个比较实用的功能。这个功能在之前的 App Studio 里没有。这个功能叫 Environment variables。 当我们真实开发一个 teams app的时候&#xff0c;肯定有自己的开发环境&#xff0c;测…

[Unity优化]批处理03:静态批处理

[Unity优化]批处理03&#xff1a;静态批处理 原理&#xff1a; 运行时&#xff0c;把需要进行静态批处理的网格合并到一个新的网格中。虽然只进行一次合并操作&#xff0c;但是会占用更多的内存来存储合并后的网格&#xff0c;并且被静态批处理的物体无法移动旋转缩放 要使用静…

制造领域的人工智能技术

“AI将执行制造、质量控制、缩短设计时间、减少材料浪费、提高生产再利用率&#xff0c;执行预测性维护等等&#xff0c;尽管人工智能有望从根本上改变很多行业&#xff0c;但该技术非常适合制造业”Ng说。Andrew Ng是深度学习Google Brain项目的创始人兼斯坦福大学计算机科学兼…

如何获取一个会议的 transcripts

Teams 开发团队在过去半年里提供了很多的关于会议的 api&#xff0c;这让我们又有了很多的可以实现的功能和场景。今天我要介绍的是如何获取会议的 transcripts。 首先我们要知道的一个概念是&#xff1a;一个会议 meeting 可能有很多的 transcript&#xff0c;是一对多的关系…

JS获取IP地址

HTML代码&#xff1a; <!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title><script src"https://unpkg.com/vue/dist/vue.js"></script></head><body><div id"vm&quo…

1小时玩爆趣头条自媒体平台,增粉实战操作分享

做自媒体的人最关注的就是每天自己账号的后台数据&#xff0c;因为数据决定当天的收益。因此只要每天能达到几十万的数据&#xff0c;相信对于做自媒体的朋友来说&#xff0c;一个月下来&#xff0c;最少也有1万以上的收入。目前&#xff0c;自媒体平台能赚钱的平台有很多&…

营业额统计

传送门 这个题...裸题啊,裸的不能再裸了 按天数插入,每次插入之后,比较和前驱后继的差,取 min 统计入答案即可 注意之前已经插入过的值就不需要插入了.然后这题就 A 了 Code: #include <iostream> #include <cstdlib> #include <cstdio> #include <ctime&…

React setStats数组不更新,百思不得其解。

楼楼今日遇到个坑爹的问题。 就是 this.setStats({}) 对 this.stats 不更新问题 问题是这样的 constructor(props) {super(props);this.state {imageList: []}WechatService.getMaterialOrealList("image").then((result) > {this.setState({imageList: result})…

隧道6in4 和隧道6to4(GNS3)

隧道6in4实验配置 拓扑图 Device Interface IP Address&#xff08;IPv6&#xff09; R1 F 0/0 10.1.81.1 F 0/1 2001:db8:cafe:81::10 R2 F 0/0 10.81.1.2 F 0/1 172.81.1.2 R3 F 0/0 172.81.1.3 F 0/1 2001:DB8:ACE:81::20 R4 F 0/0 2001:db8:cafe:81::4…

hadoop常用命令总结

2019独角兽企业重金招聘Python工程师标准>>> 一、前述 分享一篇hadoop的常用命令的总结&#xff0c;将常用的Hadoop命令总结如下。 二、具体 1、启动hadoop所有进程 start-all.sh等价于start-dfs.sh start-yarn.sh 但是一般不推荐使用start-all.sh(因为开源框架中内…