设计原则: 一.让人着迷: 1.给人惊喜:使用漂亮的界面.精心的动画.适时的音乐. 2.真实的对象比按钮和菜单更有趣   这句话的意思是:使用描述描述性的图标作为快捷方式,界面美观   当然这个快捷方式是描述一个实体的,像一个人,不是扁平化的 3.个性化设计  提供个性化设计,提高亲切感和控制感.多设计几套个性化方案 4.记住人们的使用习惯,不要重复问  记住人们的使用习惯,不要重复问.多使用可以自动记住的控件,Autocomplete控件,不要每次询问操作 二.简单我的生活 1.使用简单词.短…
AllJoyn+Android开发案例-android跨设备调用方法 项目须要涉及AllJoyn开源物联网框架.前面主要了解了一些AllJoyn主要的概念.像总线,总线附件,总线对象,总线接口这种概念,以及之间的关系和跨设备.平台的调用功能.项目终于的目的实现是.跨平台的方法调用如:windows调用android.以及对于设备事件的订阅功能. 入手的步骤: 1.实现android端的跨设备方法(自己定义)调用案例-java 2.实现windows端的跨设备方法(自己定义)调用案例-c++ 3.…
最近公司组织项目组成员开发一个Android项目的Demo,之前没有人有Andoid方面的开发经验,都是开发C#的. 虽说项目要求并不是很高,但是对于没有这方面经验的人来说,第一步是最困难的. 项目历时一个多月,4个人开发,最终行成一个可用的Demo,整体效果还非常不错.这其中借鉴了网上的“仿网易客户端的Demo”还有就是学习<疯狂Android>,收获颇多,这里利用几篇文章做一个项目经验总结,还有就是更多的从C# 程序员的观点来理解Android的一些异同之处. 文章目录: CSharp程序…
概述 有时候我们想在 andorid 手机上实现一种 跨越 顶部状态栏的效果,比如一张图片直接显示在 状态栏内.比如下图: 这个页面里有张图片,这个图片显示在整个页面的上部分.状态栏是 漂浮在这个图片上的. 实现透明状态栏的方法 适配Android 4.4 +的方法: if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { Window window = activity.getWindow(); // Translucent sta…
android 的5.0公布不光google官方给出了一些新控件,同一时候还给出了一套符合material design风格的设计标准,这套标准将未来将覆盖google全部产品包括pc端,站点,移动端.在android端上陆续出现了很多开源的控件库開始以google的以 material design为指导而设计的新风格控件库.对照了多个库之后这里推荐一套比較齐全且效果比較好的控件库.用法和传统控件高度一致,并向下兼容.附上使用方式和demo下载. 效果图: 这是由rey5137公布的mater…
一.需求 做一个类似QQ登录似的app,将数据写到ROM文件里,并对数据进行回显. 二.截图 登录界面: 文件浏览器,查看文件的保存路径:/data/data/com.amos.datasave/files/LoginTest.txt------/data/data/(包名)/files/(文件名) 导出的文件内容: 三.实现代码 新建一个Android 工程.这里我选择的是2.1即API 7,进行开发的,其它都是默认下一步下一步即可. /datasave/res/layout/activity…
Android Studio使用手册 "工欲善其事必先利其器" 作为一个Android开发人员来说,一款好的开发工具也是相当重要的,在相当长的时间礼,Google都是基于Eclipse以ADT插件的形式来开发Android应用的,Eclipse可谓是经典到不能再经典的开发工具了,他几乎什么都可以干,也应用很广泛,三十由于近几年来Android市场的日益扩建,Eclipse似乎有点吃力了,而且平台限制也大,于是,Google在2013年的I/O开发者大会上正式推出了这款杀手级的IDE--…
原文:http://android.eoe.cn/topic/summary Android开发之旅:组件生命周期吴秦 Android开发之旅:HelloWorld项目的目录结构 * HelloWorld项目的目录结构* (这个HelloWorld项目是基于Android 2.1的)在Eclipse的左侧展开HelloWorld项目,可以看到如下图的目录结构: Image:http://andriki.com/mediawiki/images/c/c8/Image_thumb_1.png 下面将…
大家好我们今天的教程是在Android 教程中自定义View 的学习,对于初学着来说,他们习惯了Android 传统的页面布局方式,如下代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertic…
Android的存储 内部存储空间RAM内存:运行内存,相当于电脑的内存ROM内存:存储内存,相当于电脑的硬盘外部存储空间 SD卡:相当于电脑的移动硬盘    * 2.2之前,sd卡路径:sdcard    * 4.3之前,sd卡路径:mnt/sdcard    * 4.3开始,sd卡路径:storage/sdcard* 所有存储设备,都会被划分成若干个区块,每个区块有固定的大小* 存储设备的总大小 = 区块大小 * 区块数量文件访问权限* 指的是谁能访问这个文件* 在Android中,每一个应…
Android项目的目录结构: 资源文件夹: 清单配置文件: Android的四大组件在使用前全部需要在清单文件中配置 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.first"  //应用在系统中的…
Android的体系结构采用了分层架构的思想, 从上层到底层共包括四层,分别是应用程序程序层.应用框架层.系统库和Android运行时和Linux内核. 一 应用程序层 该层提供一些核心应用程序包,例如电子邮件.短信.日历.地图.浏览器和联系人管理等.同时,开发者可以利用Java语言设计和编写属于自己的应用程序,而这些程序与那些核心应用程序彼此平等.友好共处. 二 应用程序框架层 该层是Android应用开发的基础,开发人员大部分情况是在和她打交道.应用程序框架层包括活动管理器.窗口管理器.内容…
概述 在很app上都见过 可折叠的顶部导航栏效果.google support v7  提供了 CollapsingToolbarLayout 可以实现这个效果.效果图如下:    实现步骤 1. 写一个 CollapsingToolbarLayout,它有两个 子视图,一个就是上图显示的图片(降落伞哪个)的Imageview,另一个就是 顶部导航栏toobar 2. 为 CollapsingToolbarLayout 指定属性 app:layout_scrollFlags="scroll|ex…
一.android studio下载: 1.Windows版: 下载地址:https://pan.baidu.com/s/1-sg4dN_2B5nn2YJf-C7XLQ 提取码:yedc 2.Mac版: 下载地址:https://pan.baidu.com/s/1KoM-QY9JONJVbGv_yaeZrQ 提取码:swno 3.Linux版: 下载地址:https://pan.baidu.com/s/1lPnhnwceoyTZEWnWgfb7fA 提取码:rjer 二.安装: 原生androi…
获得屏幕的宽度和高度有很多种方法: //1.通过WindowManager获取 DisplayMetrics dm = new DisplayMetrics(); heigth = dm.heightPixels; width = dm.widthPixels; //2.通过Resources获取 DisplayMetrics dm = getResources().getDisplayMetrics(); heigth = dm.heightPixels; width = dm.widthPi…
概述 谷歌官方推出了SwipeRefreshLayout 来实现下拉刷新的效果.对比以前我们常用的 pull-to-refesh ,这个方案显得更加的简单方便. 关联项目引用(管理依赖) 在你的 应用级别的 build.gradle  中添加如下: compile 'com.android.support:appcompat-v7:23.0.0' compile 'com.android.support:support-v4:23.0.0' 编写布局(Layout) <LinearLayout…
所谓“工欲善其事,必先利其器”.Android Studio 是谷歌推出一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试. 在IDEA的基础上,Android Studio 提供 : 基于Gradle的构建支持 Android 专属的重构和快速修复 提示工具以捕获性能.可用性.版本兼容性等问题 支持ProGuard 和应用签名 基于模板的向导来生成常用的 Androi…
原文:http://android.eoe.cn/topic/summary 文档内容 API概述 Android中manifest文件需求 工作的设备 * 发现设备 * 获得和设备进行“交流”的权限 * 和设备进行“交流” * 中止和设备的“交流” 相关例子 Adb测试用例 相关链接 当您搭载Android系统的设备处于USB主机模式时,它就像一个USB主机,为总线提供能源,并且列举出所有已经连接上的设备.在Android 3.1或者更高的版本中支持USB主机模式. API概述 在您开始之前,…
最近有个项目,要使用android设备操作串口的 斑马GK888T打印机,使用打印机打印二维码. 硬件设备连接方式: 安卓设备 通过 串口RS232 连接 斑马打印机的串口 那么就要解决:使用安卓设备操作串口的问题. 我找到一个框架:android_serialport_api,这个框架被托管在: https://code.google.com/p/android-serialport-api/    谷歌的代码库,无奈国内无法下载 https://github.com/cepr/android…
xml布局 <WebView android:id="@+id/wv_content" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/transparent" android:layerType="software" /> 代码…
今天我们的教程是根据前面一节扩展进行的,如果你没有看,请点击 Android高手进阶教程(三)查看第三课,这样跟容易方便你的理解! 在xml 文件里定义控件的属性,我们已经习惯了android:attrs="" ,那么我们能不能定义自己的属性能,比如:test:attrs="" 呢?答案是肯定的. 好了我就不卖关子了,直接进入主题.大致以下步骤: 一. 在res/values 文件下定义一个attrs.xml 文件.代码如下: <?xml version=&q…
本系列持续更新中.转载请注明来源. 前言:近期打算系统学习一下Android开发,发现Android官网上的developer training也是个非常好的学习资料,于是想到一边学习一边写一个中文版出来,方便大家学习沟通交流.不足之处请大家指出. 教程官方链接:http://developer.android.com/training 本节链接:http://developer.android.com/training/basics/firstapp/creating-project.html…
第三步.下载并安装AndroidSDK 前面两步,我们已经配置了JDK变量环境,并安装好了Eclipse,通过这两步之后Java的开发环境就准备好了,如果我们只是开发普通的JAVA应用程序的话,那么到这里就可以了.但如果我们要通过Eclipse来开发Android应用程序的话,那么我们还需要下载Android SDK(Software Development Kit)和在Eclipse上安装ADT插件. 首先,下载Android SDK Tools,翻过墙的朋友可以去Google Android…
Android的存储 Android中的数据存储方式及其存储位置 SharedPrefrence存储 1). 位置           /data/data/packageName/shared_prefs/xxx.xml      2). 特点           a. 小数据 key--value           b. 应用卸载时会自动删除此数据      3). 相关API       接口/类:           1). 它是用来做什么的           2). 如何得到它的对…
现在都说互联网寒冬,其实只要自身技术能力够强,咱们就不怕!我这边专门针对Android开发工程师整理了一套[Android进阶学习视频].[全套Android面试秘籍].[Android知识点PDF].如有需要获取资料文档的朋友,可以点击我的GitHub免费获取!…
Snackbar 类似toast,用于向 用户展示信息,和用户交互,它能够显示一个 按钮 获得用户的操作.它的特点如下: 作为android.support.design.widget.CoordinatorLayout 的子视图,出现在页面底部. 可以显示一个字符串和一个按钮.Toast只能显示文本,无法通过 按钮和用户交互 支持向右滑动手势:手指在snackbar上向右滑动,则关闭snackbar 支持设置一个时间,超时自动关闭snackbar 使用方法: 1.放置父布局  Coordina…
在上文中,已经将CMD创建的应用程序导入到项目里了,而且也看到默认的主界面了,今天的主要工作就是修改这个主界面,以符合项目的需要.除了设计主界面,还有一些其他的东西需要配置一下. 添加本地化包 打开app.json文件,找到requires,代码如下: "requires": [ "font-awesome" ], 以上代码说明项目默认已经引用了Font Awesome的图标,可以在项目中直接使用.这个在项目的后续开发中会经常使用到. 本地化文件从Ext JS 5开…
设计原则 使用设计模式的根本原因是适应变化,提高代码复用率,使软件更具有可维护性和可扩展性.在进行设计的时候,我们需要遵循以下几个原则:单一职责原则.开闭原则.里氏替代原则.依赖倒置原则.接口隔离原则.合成复用原则和迪米特法则. 1.单一职责原则 专业的人做专业的事,面向对象编程中类也是一样,一个类只负责一些特定的职责,如User类只负责用户相关的业务功能,Order类只负责订单相关的功能,想象下如果我们把用户和订单的功能放在一个类,然后去设计用户的权限中会怎么样呢?订单业务和权限耦合了..单一…
在我们的APP开发中,通常需要获取到设备的唯一标识.在Android6.0之前,有很多方法我们可以方便获取到硬件的唯一标识,但是在Android6.0之后,Android系统大幅限制了我们获取设备的硬件信息. Android6.0之前的方法(已过时) DEVICE_ID 通getSystemService(Context.TELEPHONY_SERVICE).getDeviceId()获取,但是6.0之后必须申请READ_PHONE_STATE,并且获取到的这个值在不同的厂商和设备中并不可靠.…
现在开始学习Android嵌入式编程,首要的问题就是在Windows中搭建开发环境,就这个都要摸索很长的时间,总是在版本之间折腾折腾去,而且Google的Android正式差劲得很,经常是连不上,要不就是服务器改变了路径.把我收集的完整的搭建好的分享给需要的朋友. Eclipse Java EE IDE for Web Developers,Kepler. Android SDK的信息: 下载路径(百度云盘):http://pan.baidu.com/s/1o8PKWAY包含:android-s…