Android 學習之旅!(1)
就這樣就過去了一年加一個學期,現在是大二第二個學期而且是下半學期了,以前都是無所事事,沒事睡睡覺,打打遊戲就過去了,但是想到家境和以後的路,我還是決心自己找點東西學習下,以後出去還能有一技之長(雖然可能只是一大堆擁有這項技能的人中的一個...但是還是要學,至少能餬口吧?)
嗯,從今天起我要開始學習 Android 開發,因爲現在在國內評價最好的應該就是 apple 公司的iPhone了吧?對,他是ios(不知道有沒拼錯..)系統的,iphone每一代走的是高端路線..就連App也是質量非常好的(跟android的App比較下..可以說一個頂幾百個?)..但是我個人還是對ios沒什麼興趣,可能是因爲我是 google 粉 吧..正式因爲目前沒有什麼質量非常好的App,而且除了ios 系統的iPhone,其他手機基本都是android系統的,所以市場理所當然會挺大的...以下略了很多水..(我真的不會吹啊...上面的分析都是亂說的..別當真..)
我下載的開發平臺是 android studio.(不敢說我"用"的開發平臺啊..因爲我根本不會用)(在官網下載 3k/s也是累死我了)
在此,我在網上的資源中下載了一套視頻資源,是 黑馬程序員_精通android4.0開發視頻 .以下我會做出相關的筆記.以及我的學習情況.僅作學習研究參考使用.(下面開始進入正文)
筆記:
google 親兒子 手機 可以用於開發..好處:自己下載android源代碼,自己編譯,安裝到手機上.其他手機的話會缺少一些驅動.(我也好想要部Nexus6啊.不過好貴...等工作在考慮吧..)
Wireless Markup Language(WML)精簡版的html語言
Dalvik VM(開源的java 虛擬機)
android是很多開源項目組拼的一個系統.
基於linux內核的開發.做了包裝,
libraries(surface manage(界面),mediaFramework(多媒體),SQLite(嵌入式數據庫,iphone也用),OpenGL|ES(3D渲染圖形引擎,window用的是 direct X),FreeType(字體),WebKit(瀏覽器內核),SSL(安全相關),libc(標準庫)),
android runtime(運行java代碼的虛擬機)(core libraries(核心),dalvik virtual machine(android下的java虛擬機,可以調用 libraries的函數,方法)),
application framework(應用程序框架)(開發時可用API直接調用),
applications(系統自帶的應用)(home,contacts,phones,browser)(必備的)
JVM 和 Dalvik vm 的比較
JVM Dalvik VM
編譯後文件格式: .java->.class->.jar .java->.class->.dex->.odex
↓ ↓
jdk javac sdk dex
基於的架構 基於棧(連續的內存空間的架構 基於寄存器(cpu的存儲空間)的架構 寄存器讀取數據比較快
class包括:header(含編譯版本),heterogeneous constant pool(常量池?),class,field,method,attributes)
dex把jar包的class包含到一起...能提高掃描加載速度,和解釋執行速度.
dex包括:header,Strings,Type/Class constant pool,field,method,class,field list,method list,code header,local varlables)
SDK:standard develop kits(標準工具包)
ADT:android develop tools(eclipse 的插件)(視頻中用的是 eclipse + ADT +SDK ,感覺我自己用 android studio 可能會有點吃力...)
自己在官網下載的SDK 在目錄中的platforms裏會是空的,用SDK manage可以下載不同版本的SDK.要針對某個版本的android系統作開發要下載對應版本的SDK.
SDK manage中的tools:開發的工具.extras:擴展工具.extras中的 android support library是將高版本的API向下兼容,google admob(看不清) ads SDK可以開發完後加點廣告條(這個我不喜歡,不過..世道),google analyties app tracking SDK分析應用程序工具.google cloud messaging for android library雲提供消息的library....(此處省略了幾個)....google USB driver(真機需要的驅動),intel x86 emulator accelerator(模擬機加速器)
對應版本的android對應的API版本要記一下!!
示例:android 4.1.2(API 16)下的SDK文件?
SDK platform 開發時用到的夾包?.
samples for SDK 實例代碼.
arm eabi v7a System image(處理器鏡像
intel x86 atom System image(處理器鏡像
mips(開源處理器構架) System image(處理器鏡像
google APIs(提供支持夾包?可直接使用google地圖之類的?)
source for android SDK(SDK源代碼)
要分析市場上android版本的佔有率,去針對下載SDK包開發?
由於國內有 wall? SDK manage 下載不成功 要 在菜單 tools->options->others:Force https://...source to be fetched using http://...勾上
avd:android virtual devices(android 虛擬設備)
QVGA 240*320 (VGA 480*640) Q:Quarter
HVGA 320*480 H:Half
WVGA 480*800 W:Width
FWVGA 480*854
Hardware Accelerated Execution Manager(硬件加速模擬器)
好吧,今天就學這麼多了..一口氣看了7個視頻..android相關的書還沒去找,暫時先看會視頻先吧..
Android 學習之旅!(1)的更多相关文章
- Android 學習之旅!(2)
早幾天因爲學車,弄了幾天時間和精力過去,今天終於考過了(科目二,還是補考的...)嗯..不管這麼多了..今天又開始我的android 學習之旅!! 筆記: platform-tools目錄下的文件: ...
- 基於tiny4412的Linux內核移植--- 中斷和GPIO學習(3)
作者 彭東林 pengdonglin137@163.com 平臺 tiny4412 ADK Linux-4.4.4 u-boot使用的U-Boot 2010.12,是友善自帶的,爲支持設備樹和uIma ...
- 開博客了, 因為搞Delphi 開發的關於Delphi學習
開博客了, 因為搞Delphi 開發的關於Delphi學習,之前都是用本地TXT文件保存,發現在本地電腦保存非常不方面,而且只能在一台電腦上保存,不容易查看和修改內容.便於以後的記錄只用,以及經驗交流 ...
- Markdown 學習
Markdown 格式由John Gruber 創建,是一種便於閱讀,非常簡潔直觀的純文本文件格式,可以方便地轉為html等其他格式,很適合與寫作,不需要關注排版問題 常用學習資源有: ###標題用 ...
- 無心插柳的Linux學習者代言人——蔡德明
誰是「蔡德明」恐怕沒有多少人知道,不過提到「鳥哥」這個稱號,在臺灣的Linux社群幾乎是無人不知無人不曉,蔡德明正是鳥哥的本名.鳥哥究竟多有名? 如果你是有意學習Linux的初學者,卻不知如何下手,1 ...
- Linux网络设备驱动架構學習(三)
Linux网络设备驱动架構學習(三) 接下來會從以下幾個方面介紹網絡設備驅動的編寫流程: 1.網絡設備的註冊與註銷 2.網絡設備的初始化 3.網絡設備的打開與釋放 4.網絡數據發送流程 5.網絡數據接 ...
- Github-Client(ANDROID)开源之旅(四) ------ 简介Roboguice
Guice是Google开发的一个轻量级,基于Java5(主要运用泛型与注释特性)的依赖注入框架(IOC),Guice非常小而且快.Guice是类型安全的,它能够对构造函数,属性,方法(包含任意个参数 ...
- 學習 DT device tree 以 ST 的開發板 STM32F429i-disc1 為例
目標 因為對 device tree 不是很熟悉, 所以就將 device tree, 設為學習目標. 啟動 注意, 這篇隨筆的解說都放在最下面,會標 Explanation_XX,只要搜尋 Expl ...
- 機器學習基石(Machine Learning Foundations) 机器学习基石 课后习题链接汇总
大家好,我是Mac Jiang,非常高兴您能在百忙之中阅读我的博客!这个专题我主要讲的是Coursera-台湾大学-機器學習基石(Machine Learning Foundations)的课后习题解 ...
随机推荐
- Unity3d Platformer Pro 2D游戏开发框架使用教程
前言 Platformer Pro框架是Unity3d AssetStore上一个非常强大和受欢迎的2d游戏开发框架,这个教程的大部分翻译于官方文档,一部分是工作总结,还有一部分是视频教程文档化.这个 ...
- SSM后台管理系统(Spring SpringMVC Mybatis Mysql EasyUI)
非常简单的一个后台管理系统,功能不多,框架也不复杂, 源码下载(附数据库)-ssm后台管理系统框架(Spring mvc + mybatis + mysql + easyui ) 实例图片
- ansible-role写法
一.role目录的创建: cd /etc/ansible/ mkdir -pv roles/{websrvs,dbsrvs}/{tasks,files,templates,meta,handlers, ...
- LeetCode - 排列相关题目
1.获取全排列 https://leetcode.com/problems/permutations/submissions/ 按字典序输出: 这里用的是vector<int>,不是引用. ...
- call()、delegatecall()
call()当使用方法是:require(msg.sender.call.value(_weiToWithdraw)());则作用是将_weiToWithdraw个以太币发送给msg.sender地址 ...
- ES6生成器函数generator
ES6生成器函数generator generator是ES6新增的一个特殊函数,通过 function* 声明,函数体内通过 yield 来指明函数的暂停点,该函数返回一个迭代器,并且函数执行到 y ...
- virtualbox - 2台虚拟机之间通过ssh互访
virtualbox 5.2.12 一台虚拟机是Debian 9,另一台是Ubuntu 18.04. 注意: 2台虚拟机系统里要安装ssh ! sudo apt install ssh 然后在virt ...
- 使用jquery-combobox实现select下拉框多选之后,如何将下拉框的值传给input隐藏域
我在之前的一篇博文中eaeyui-combobox实现组合查询(即实现多个值得搜索)地址:http://www.cnblogs.com/dushan/p/4778897.html 实现了select下 ...
- 为什么建议php字符串使用单引号而不是双引号
不少php提升效率的tip,都有提到字符串使用单引号,这是为什么呢? 因为在单引号中,php直接认为它里头包含的就是个字符串.而双引号时,php会检测里头是否包含变量.这样如果是纯粹的字符串的话,双引 ...
- Luogu2164 SHOI2007 交通网络 期望、BFS、拓扑排序
传送门 题目还算不难吧 首先我们枚举点$i$,将其他所有点到这个点的最短路求出来 然后我们在这一次建出的最短路$DAG$的反图上进行拓扑排序.假设我们算到了点$j$,点$j$的人流量为$t_j$,点$ ...