android框架

Android 程序的主要组成部分 和 Manifest 文件

浪子不回头ぞ 提交于 2019-12-07 12:11:00
Android 程序的主要组成部分 和 Manifest 文件 Android 由松耦合的组件组成,并使用 Manifest 绑定在一起; Manifest 描述了每个组件和他们之间的交互关系,还用于应用程序的元数据、其硬件和平台的要求、外部库以及必需的权限。 以下几个组件提供了应用程序的基本结构模块: Activity : 主要用于跟用户交互,显示界面,是 android 程序的表示层 Service : Android 的幕后工作者,不可见,不能交互,可以更新数据源和 Activity ,触发通知和广播 Intent 。 Content Provider :顾名思义,内容提供者,就是向别的应用程序提供数据的。用来管理和持久化应用程序数据,通常会与 SQL 数据交互。 Intent :强大到无法想象的牛逼人物, Android 几乎无时无刻不在应用它,他是一个强大的应用程序间的消息传递框架。他可以用来启动停止 Activity 和 Service ,在系统范围内活想目标 Activity 。 Service 或 BroadcastReceiver 广播消息,以及请求对特定的一条数据执行操作。 BroadCast Receiver : Intent 监听器。 BroadCast Receiver 使应用程序可以监听到那些匹配指定的过滤的 Intent 广播。 BroadCast

Android NFC

青春壹個敷衍的年華 提交于 2019-12-07 11:32:58
Android中NFC知识介绍 近场通信(NFC)是一种短距离无线技术,通常要求距离为4cm或更低以启动连接。NFC允许你在NFC标签和android 驱动 的设备之间,或者在两个android驱动的设备之间共享少量的数据。 简单的标签只提供读和写的功能,有时使用一个可编程的区域使卡片只读。更复杂的标签提供数学运算,并有加 密硬件来认证对一个扇区的访问。最复杂的标签包含操作环境,允许通过代码 与在标签 进行复杂的交互。存储在标签 中的数据也可以用多种格式编写,但是Android框架api大多都是基于NDEF 标准 (NFC数据交换格式)。 根据Google官方文档的介绍, 具有NFC的安卓设备同时支持三种主要的操作方式: Reader/writer mode , allowing the NFC device to read and/or write passive NFC tags and stickers. P2P mode , allowing the NFC device to exchange data with other NFC peers; this operation mode is used by Android Beam. Card emulation mode , allowing the NFC device itself to act as an NFC

res索引讲解(drawable、layout、values)等目录的分辨率和layout的横竖屏

强颜欢笑 提交于 2019-12-07 11:02:25
最新res目录讲解(drawable、layout、values等目录的分辨率和layout的横竖屏,以及values的多语言) 我们建好一个android 的项目后,默认的res下面 有drawable、layout、values等目录 1.drawable目录相关 启开一个新的Android专案后在res资料夹内会有 drawable-hdpi drawable-mdpi drawable-ldpi drawable-xhdpi drawable-xxhdpi 三个目录,所定义的dpi皆不同 一般來說,ldpi是120,mdpi是160,hdpi是240,xhdpi的dip是320,xxhdpi的是480。 xhdpi是Android 2.2才开始增加的分类;xlarge是Android 2.3才开始增加的分类; tvdip 则是最近的事。 此外 四种分辨率密度分类: ldpi(低,480*320及以下),mdpi(中等,480*320-800*480),hdpi(高,800*480-1280*720),xhdpi(特高,1920*1080),xxhdpi目前仅有Nexus 10使用(2560*1600) Android系统会根据机器的解析度来分辨鉴定对应到相关的资料夹找出对应的图片,什么分辨率就使用对应的drawable下的目录; 2.layout目录相关

各种编程语言简介

廉价感情. 提交于 2019-12-07 06:51:02
C/C++ 一句话概括: 大多数中国程序员的第一个语言 C 语言是面向过程语言在当代的鲁殿灵光,常用于编写 操作系统 。 C++ 是 C 语言的一个超集,既有指针又有对象使它成为最复杂的语言。 C/C++ 的优势:几乎所有现代编程语言都脱胎于 C/C++ ,因此了解了 C/C++ ,就了解了关于编程语言的一切,非常有利于快速掌握其他各类编程语言。 C/C++ 的不足:据说 C/C++ 发明的时候为了提高入行门槛和行业收入水平刻意制造了学习难度。 C/C++ 的优势: C/C++ 可以被嵌入任何现代处理器中,几乎所有操作系统都支持 C/C++ ,跨平台性非常好。 C/C++ 的不足:尽管 C 语言体型小巧,可最常使用的 C++ 规模可观且拥有大量极为复杂的功能交互方式,容易造成资源浪费。 职业路线: (1) 首推 Unix/ Linux 等操作系统软件的开发和 嵌入式开发 。 ( 2 ) Android ROM 的定制,以及 android App 的 NDK 开发。 ( 3 )用 Cocos2d-x 开发游戏也是 C++ 程序员的好出路。 Java 一句话概括: 最长寿的语言 Java 是最典型的面向对象语言。 Java 不仅吸收了 C++ 语言的各种优点,还摒弃了 C++ 里难以理解的多继承、指针等坑爹概念。今明两年毕业的大学生大多是 Java 的同龄人( 1995 年)。

GitHub 上受欢迎的 Android UI Library整理

喜欢而已 提交于 2019-12-06 22:34:42
https://github.com/Tapadoo/Alerter ★2528 - 克服Toast和Snackbar的限制 https://github.com/wenmingvs/NotifyUtil ★920 - 高仿淘宝微信等热门APP通知视图 https://github.com/halysongoncalves/Pugnotification ★683 - 通过一行代码实现通知功能 https://github.com/hss01248/NotifyUtil ★119 - notification工具类 https://github.com/shaileshmamgain5/Carousel-Notification ★73 - 轮播框通知 https://github.com/linglongxin24/NotificationUtil ★37 - 全新的Android通知栏 聊天视图 https://github.com/stfalcon-studio/ChatKit ★906 - 简化UI开发 https://github.com/himanshu-soni/ChatMessageView ★552 - 快速创建聊天信息视图 https://github.com/bassaer/ChatMessageView ★249 - Android聊天UI视图 https:

这位程序媛是如何拿下 BAT 等 7 家名企 Offer的?面经就在这!

随声附和 提交于 2019-12-06 21:09:06
程序媛 厘米姑娘 今年年底 Android 薪资待遇回暖,3-6年左右的开发很受社招欢迎,应届生也很受企业欢迎。因此这里列举了下妹子的面试经历。 本篇先以日历形式回顾秋招之路,方便各位参考某厂的处理进度;总结归纳春秋招 Android 面试题库;最后做个总结还有展望,开始新的征程~ 校招日历 在X团实习的最后一周项目在提测,相比开发阶段着实轻松了不少,所以开始改简历、投简历和复习,复习内容主要是个人博客和春招总结的笔记。 不过各厂子简历处理速度令我始料不及,在紧接的下一周就被各种面试狂轰滥炸,这波操作来得快去的也快,现已拿到BAT、美团、vivo、爱奇艺和一点资讯的(口头)offer,自此整个秋招以面试 0 Error 完美收官。 面试部门及全部流程: 杭州/阿里/数据技术及产品部:2轮技术面+交叉面+hr面 深圳/腾讯/OMG/腾讯视频:2轮技术面+hr面 北京/百度/百度APP研发部:3轮技术面+文化测评 北京/爱奇艺:3轮技术面 深圳/vivo:1轮技术面+hr面+线下交流会 北京/一点资讯:3轮技术面+hr面 题库大全 我认为看面经主要是为了查缺补漏,自己也要有一定的知识储备和学习体系,而不是临时抱佛脚、试图通过背题背答案方式应付面试,只有自己真学会的东西才能侃侃而谈,更有自信。 Android Activity Q:说下Activity的生命周期? Q:onStart(

课设

你。 提交于 2019-12-06 19:58:56
一、绪论 (一)设计背景及意义 本文描述了开发用于提高我国高校管理效率的课程设计管理系统。该系统的设计基于Android和B/S架构的跨平台混合模式开发、Java语言编程和MySQL数据库,用UML面向对象方法建模,构建符合高校课程设计全流程管理的系统模型。通过确定参与者、创建系统用例、描述系统时序图、确定静态结构来进行系统需求分析;系统总体功能设计、业务流程设计和数据库设计来进行系统设计。详细描述各功能模块的设计;通过关键技术的分析,确定Android平台架构及物理模型,采用主流的JDK+Eclipse+ADT的模式实现Android客户端的功能;采用B/S模式三层架构实现PC端功能。在android studio中能很好的运用这个模式进行开发个人管家的界面 (二)编写目的 本课题将从用户使用角度出发,完成一个功能齐全、使用便捷,用户界面美观大方的手机通讯录应用系统。为方便用户的管理,让联系人信息和头像一目了然:简化用户进行增加、删除、查找操作;并且具备更改头像的功能,拥有英观。简洁。方便的通讯录主界面。总体目标功能如下: (1) 查看功能:显示出所有自己数据中的详细值息。 (2) 增加功能:能快速,便捷地录入新数据,包括:你的计划及目标等。 (3) 修改功能:选中自己的信息及计划和目标时,可对此人的相应数报进行修改。 (4) 删除功能:选中你的id,计划的时

记第一次实习面试经历(字节跳动)

三世轮回 提交于 2019-12-06 18:02:24
想要获取笔者自己整理的Android、Java面试资料原文文稿(markdown格式),可关注左边栏二维码所示公众号,公众号内回复"A3"(Android资料)、“J4”(Java资料)即可自动获取。 笔者2.17号接到面试邀约,3.4号第一波抖音面试,四次技术面后被拒,心有不甘又找人又进行了二次内推(主要是第一次被拒的有点不明不白),从第二次内推到HR面试给口头Offer大概一周,本文主要记录从开始面试到最后面试完成的一些经历和经验,主要是Android岗,其他岗位虽然涉及的具体技术点不同,但是基本流程和面试官主要考察的基础内容应该是一样的,希望可以帮助到各位还在找工作的小伙伴们。 面试TimeLine&面试主要题目 2019.2.17 17:00 投出简历,字节跳动,base北京 2019.2.17 19:21 (抖音)接到HR面试邀约,约定3.4日远程面试 2019.2.18 开始准备面试(Android岗) 2019.3.4 14:00-15:00 (抖音)第一轮技术面试 由于准备时间短,再加上没有过大公司的面试经历,所以第一次面试慌得一批,面试前五六分钟心跳加速面红耳赤,还好面试开始之后面试官人不错状态有好点。一面主要是基础技术面,主要涉及到:进程&线程的区别,线程池的用法、原理,TCP三次握手、四次挥手、HTTP请求报文格式,算法是二叉树中序遍历,偏基础。 2019.3

Android中View绘制流程以及invalidate()等相关方法分析

橙三吉。 提交于 2019-12-06 16:55:13
前言: 本文是我读《Android内核剖析》第13章----View工作原理总结而成的,在此膜拜下作者 。同时真挚地向渴望了解 A ndroid 框架层 的 网友,推荐这本书,希望你们能够在Android开发里学到更多的知识 。 整个View树的绘图流程是在ViewRoot.java类的performTraversals()函数展开的,该函数做的执行过程可简单概况为 根 据 之前 设 置 的 状态,判断是否需要重新计算视图大小(measure)、是否重新需要安置视图的位置(layout)、以及是否需要重绘 (draw),其 框架过程如下: 步骤其实为host.layout() 接下来温习一下整个View树的结构,对每个具体View对象的操作,其实就是个递归的实现。 关于这个 DecorView 根视图的说明,可以参考我的这篇博客: 《Android中将布局文件/View添加至窗口过程分析 ---- 从setContentView()谈起》 流程一: mesarue()过程 主要作用 :为整个View树计算实际的大小,即设置实际的高(对应属性: mMeasuredHeight )和宽(对应属性: mMeasureWidth ), 每个View的控件的实际宽高都是由父视图和本身视图决定的。 具体的调用链如下 : ViewRoot根对象地属性mView(其类型一般为ViewGroup类型

Android SQLite相关框架工具

*爱你&永不变心* 提交于 2019-12-06 14:48:57
我是一个Android新手,以前做的Web应用,公司需要,我转了Android,最近发现SQLite数据库代码开发工作量很大,颠来倒去就是创建表、删除表、查询、更新等操作,所以想找个工具(像Hibernate Tool)可以直接生成表对象(Dao)以及查询更新操作(方法)。去百度了一下找到了一下三种jar包: <1>androiddataframework http://code.google.com/p/androiddataframework/ <2>ormlite http://ormlite.com/sqlite_java_android_orm.shtml <3>AHibernate http://www.cnblogs.com/zlja/archive/2012/04/13/2446561.html 由于我先看的第二个ormlite,那就先说ormlite,后续会补上androiddataframework和AHibernate。 Ormlite ormlite的最新jar包可以从上面的下载,我从这个网页上了解一下ormlite的相关知识,总结如下: <1>对于Android开发来说需要下载ormlite-android-4.45.jar and ormlite-core- 4.45.jar,运行环境要求是JDK1.5以上 <2>此工具不能自动Model