【基础扫盲】app和apk什么区别

一、app是应用,apk是应用格式(安卓应用包)

也就是说,app是大概念,apk是小分支,
类比视频有mp4、flv、rmvb等格式

二、安卓的文件格式是apk/gpk,苹果IOS系统软件的文件格式是IPA

无论是apk还是ipa,它们本质上都是压缩包
(IPA是Apple程序应用文件iPhoneApplication的缩写,实质是一个 zip压缩包(不是 rar 或 7z 包),包含 3 个组件:payload 目录下的 .app 目录,这个是软件的主程序;iTunesArtwork,实质是一个无后缀名的png图片,用来在 iTunes 中显示图标;iTunesMetadata.plist,记录购买者信息、售价等数据);

三、应用商店里的app上架

安卓应用市场上架时上传的安装包是apk格式,苹果的 app store里上传的安装包是ipa格式

四、拓展

(1)为什么在移动 app下载页面,iOS 给的是 app store ,而 Android 都直接是 apk 安装文件,为什么这么设计?很多网站都是这么给的,PM是怎么考虑的?不是也有google play market么?

--- google play 国内访问不方便,另外国内android第三方市场上传后审核很慢,所以还不如直接给apk,保证用户拿到最新的

(2)开发手机软件的工具有哪些?

① android 软件开发有Android SDK、集成开发环境 Eclipse、Android NDK;
目前主流的开发分原生开发和混合开发:
原生开发以java为主,IDE主要使用Google官方开发工具Android Studio。
混合开发是用前端技术。
还有一种非主流的做法叫E4A,就是用易语言来写安卓,也具有图形化页面。
现在世界上大多数的Android开发者所用的工具都是Eclipse+ADT+SDK三个组件整合开发,其实开发工具仅仅是一个工具而已,个人的编程技术高低才是至关重要的问题,如果技术不强,无论用什么样的开发工具都开发不出来优秀的程序,如果技术能力强,开发工具对于开发者而言只是用着是否习惯的问题

② iOS程序开发主要使用苹果公司推出的Xcode开发平台进行开发,是iOS系统软件开发快捷的方式。Xcode 具有统一的用户界面设计,编码、测试、调试都在一个简单的窗口内完成。MAC OS平台:开发工具xCode;iPad平台:Codea

延伸:做简单的应用,android的,你需要学习java的语法,ios需要学习objective-c的语法,然后学习android和ios的一些基本的控件和页面布局,如果需要联网的app,你还需要学会如何编写服务器端以及一些必要的网络协议,如果要游戏之类的建议学习下c++,opengl,cocos2dx等等游戏相关的教程,需要的工具有eclipse和xcode。

你可能感兴趣的:(【基础扫盲】app和apk什么区别)