安卓 - 技术教程文章

Android4.0 input事件输入流程详解(中间层到应用层)【图】

在Android系统中,类似于键盘按键、触摸屏等事件是由WindowManagerService服务来管理的,然后再以消息的形式来分发给应用程序进行处理。系统启动时,窗口管理服务也会启动,该服务启动过程中,会通过系统输入管理器InputManager来负责监控键盘消息。当某一个Activity激活时,会在该Service下注册一个接收消息的通道,表明可以处理具体的消息,然后当有消息时,InputManager就会分发给当前处于激活状态下的Activity进行处理。 Input...

Android之JSON格式数据解析【图】

JSON:JavaScript 对象表示法(JavaScript Object Notation)。独立于语言和平台,比 XML 更小、更快,更易解析。如今JSON数据已经成为了互联网中大多数数据的传递方式,所以必须要熟练掌握。Android平台自带了JSON解析的相关API,可以将文件、输入流中的数据转化为JSON对象,然后从对象中获取JSON保存的数据内容。 Android的JSON解析部分都在包org.json下,主要有以下几个类: JSONObject:可以看作是一个json对象,这是系统中有关...

Android SDK的安装与环境变量配置【图】

(一)下载Android SDK 1)下载地址: http://tools.android-studio.org/index.php/sdk/ //网盘地址   下载完成以后解压到自己喜欢的地方: 然后继续安装一些自己需要的插件: 双击 SDK Manager.exe :选中上述的插件以后,然后点击右下角的 Install packages 按钮,进行安装,等待安装成功吧,(时间可能有些长,耐心等待)(二)配置环境变量 如果能顺利的安装完成以后,就可以直接配置环境变量了..老方法: ...

android 之 View【图】

在进行游戏开发时,需要自定义各种控件和界面。自定义View的使用:绘制屏幕刷新屏幕:后台数据发生了变化,需要开发人员自己刷新屏幕以显示最新数据例子:MyView开发,绘制界面View内容:package com.sunny;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.gr...

五步搞定Android开发环境部署【图】

五个步骤来完成Android开发环境的部署。第一步:安装JDK。第二步:配置Windows上JDK的变量环境 。第三步: 下载安装Eclipse 。第四步:下载安装Android SDK 。第五步:为Eclipse安装ADT插件。第一步:安装JDK要下载Oracle公司的JDK可以百度“JDK”进入Oracle公司的JDK下载页面(当前下载页面地址为http://www.oracle.com/technetwork/java/javase/downloads/index.html),选择自己电脑系统的对应版本即可。 下载到本地电脑后双击进...

Android Adapter代码片【代码】

/*** Adapter for grid of coupons.*/private static class CouponAdapter extends BaseAdapter {private LayoutInflater mInflater;private List<Coupon> mAllCoupons;/*** Constructs a new {@link CouponAdapter}.** @param inflater to create new views* @param allCoupons for list of all coupons to be displayed*/public CouponAdapter(LayoutInflater inflater, List<Coupon> allCoupons) {if (allCoupons == null) {thr...

Android中TimePickerDialog的使用【代码】【图】

TimePickerDialog   Android的DatePickerDiaolog是弹出时间管理的窗口,DatePickerDiaolog描述的年月日时间;,与TimePickerDiaolog不同的是TimePickerDiaolog描述的是一天中具体的时分,TimePickerDiaolog有两中表示方式,一种是12小时制,一种是24小时制。private Calendar mCalendar;private Button mButtonTimePickerDialog;privatevoidshowTimePickerDialog() {mCalendar = Calendar.getInstance();TimePickerDialog dialo...

<Android学习笔记>自定义对话框【代码】【图】

自定义对话框在layout中创建一个对话框布局文件*.xml创建一个CustomDialog类并继承Dialog类重写onCreate()方法在事件监听器中实例化CustomDialog类,并调用show()方法custom.xml自定义对话框' src="/upload/getfiles/default/2022/11/16/20221116021939260.jpg" />1<?xml version="1.0" encoding="utf-8"?>2<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"3 android:layout_width="match_parent"4 ...

Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]

http://blog.csdn.net/cjjky/article/details/6441104 在Android中的不同Activity之间传递对象,我们可以考虑采用Bundle.putSerializable(Key,Object);也可以考虑采用Bundle.putParcelable(Key, Object);其中前面一种方法中的Object要实现Serializable接口,后面一种方法中的Object要实现Parcelable接口。下面我们以一个完整的例子来说明。1.新建一个Android的工程,其中该工程的目录结构如下图: 2. 修改main.xml布局文件。布局...

android 退出程序提示是否退出对话框

public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub switch (keyCode) { case KeyEvent.KEYCODE_BACK: AlertDialog.Builder build=new AlertDialog.Builder(this); build.setTitle("注意") .setMessage("确定要退出吗?") .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int ...

Android bluetooth介绍(二): android 蓝牙代码架构及其uart 到rfcomm流程【图】

关键词:蓝牙blueZ UART HCI_UART H4 HCI L2CAP RFCOMM 版本:基于android4.2之前版本 bluez内核:linux/linux3.08系统:android/android4.1.3.4作者:xubin341719(欢迎转载,请注明作者,请尊重版权谢谢)欢迎指正错误,共同学习、共同进步!!一、Android Bluetooth Architecture蓝牙代码架构部分(google 官方蓝牙框架)Android的蓝牙系统,自下而上包括以下一些内容如上图所示:1、串口驱动Linux的内核的蓝牙驱动程、Linux的...

安卓序列化漏洞 —— CVE-2015-3525【代码】【图】

在2014年,Jann Horn发现一个安卓的提权漏洞,该漏洞允许恶意应用从普通应用权限提权到system用户执行命令,漏洞信息与POC见(1]。漏洞的成因源于在安卓系统(<5.0)中,java.io.ObjectInputStream并未校验输入的java对象是否是实际可序列化的。攻击者因此可以构建一个不可序列化的java对象实例,恶意构建其成员变量,当该对象实例被ObjectInputStream反序列化时,将发生类型混淆,对象的Field被视为由本地代码处理的指针,使攻击者...

ANDROID_MARS学习笔记_S01_010日期时间控件【代码】

1.xml 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"2 xmlns:tools="http://schemas.android.com/tools"3 android:layout_width="match_parent"4 android:layout_height="match_parent"5 android:paddingBottom="@dimen/activity_vertical_margin"6 android:paddingLeft="@dimen/activity_horizontal_margin"7 android:paddingRight="@dimen/activity_horizontal_margin...

axios 安卓低版本兼容性处理【代码】

问题:在较低版本的android手机中发现封装的 http 无效,我测试使用的是android 4.4的老手机,主要就是无法使用promise。解决方案安装npm install es6-promise --save-dev使用 main.js引用 import promise from‘es6-promise‘注册 ps:要在aixo之前注册 promise.polyfill() 此随笔乃本人学习工作记录,如有疑问欢迎在下面评论,转载请标明出处。如果对您有帮助请动动鼠标右下方给我来个赞,您的支持是我最大的动力。原文:https://...

100行Android代码自定义一个流式布局-FlowLayout【代码】【图】

首先来看一下 手淘HD - 商品详情 - 选择商品属性 页面的UI商品有很多尺码,而且展现每个尺码所需要的View的大小也不同(主要是宽度),所以在从服务器端拉到数据之前,展现所有尺码所需要的行数和每一行的个数都无法确定,因此不能直接使用GridView或ListView。如果使用LinearLayout呢?一个LinearLayout只能显示一行,如果要展示多行,则每一行都要new一个LinearLayout出来,而且还必须要计算出每一个LinearLayout能容纳多少个尺码...

Android Volley【代码】

1.volley简单的介绍:Volley是一个HTTP库,使Android应用程序变得更加容易,最重要的是,网络 得更快。 Vollry 提供以下好处:1.自动调度的网络请求。2.多个并发的网络连接。3.透明的磁盘和内存缓存使用标准的HTTP响应缓存一致性。4.支持请求优先级。5.取消请求API。 你可以取消一个单一的请求,或者你可以设定或块 取消的请求范围。6.例如,易于定制重试和补偿。7.强烈的要求,便于正确填充界面与数据获取 异步的网络。 Volley非常适合去...

x86 Android游戏开发专题篇之使用google breakpad捕捉c++崩溃(以cocos2dx为例)【图】

最近一直都在x86设备上进行游戏开发,就c++层和Android java层倒没有什么要特别注意的(除了需要注意一下修改Application.mk指定平台外),在c++崩溃的时候,很多时候看不到堆栈,只能看到一个信号,所以由于工作需要,使用google breakpad来进行异常捕捉。谷歌被墙很麻烦,索性就把breakpad打包放这里供需要的童鞋下载,google breakpad下载。1.下载google breakpad下载地址是 http://code.google.com/p/google-breakpad/source/...

Android源码编译_真机烧写

参考网址: 1、http://bbs.gfan.com/android-360754-1-1.htmlhttp://bbs.gfan.com/android-363492-1-1.htmlhttp://bbs.gfan.com/android-365768-1-1.htmlhttp://www.eoeandroid.com/forum.php?mod=viewthread&action=printable&tid=97581&_dsign=5788c8252、http://m.blog.csdn.net/article/details?id=48197787http://www.cnblogs.com/helloZQP/p/4198588.html3、http://wenku.baidu.com/link?url=i6SMhQBbDxsVaDZOcFabqx3Bz73rCL...

10天学安卓系列

10天学安卓-第一天摘要: 说明1:本系列教程仅针对新手入门,高手勿入!说明2:本系列教程均不考虑安卓版本低于4.0的情况。说明3:本系列教程假定您了解一些编程的基础知识,对于Java语言略懂即可。说点废话从什么时候说起呢,应该是很久以前的事情了。2008年的早春,因为工作的原因在日本工作了一个月,当我和同事们在商场闲逛的时候...阅读全文posted @ 2015-01-17 15:15 Game_over 阅读(2755) | 评论 (9) 编辑10天学安卓-第二天摘...

android 将手机号中间隐藏为星号(*)【代码】

if(!TextUtils.isEmpty(pNumber) && pNumber.length() > 6 ){StringBuilder sb =new StringBuilder();for (int i = 0; i < pNumber.length(); i++) {char c = pNumber.charAt(i);if (i >= 3 && i <= 6) {sb.append(‘*‘);} else {sb.append(c);}}mPhoneNumber.setText(sb.toString());} 原文:http://www.cnblogs.com/zhujiabin/p/7761981.html

一个入门安卓程序【图】

项目地址: https://github.com/BryanYang/DotaHeros截图:原文:http://my.oschina.net/u/867090/blog/519473

android 开发-自定义多节点进度条显示【代码】【图】

看效果图:里面的线段颜色和节点图标都是可以自定义的。main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/rl_parent"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:padd...

Android 开源项目

StickerCamera 一个完整的开源项目.贴纸标签相机(类似nice,in),拍照,裁剪,贴贴纸打标签功能。MD-BiliBili基于 Material Design 的 BiliBili 第三方 Android 客户端.MaterialUpMaterialUp客户端。ImportNewApp一个专注于 Java 技术分享的博客平台的客户端。VCameraDemo微信小视频+秒拍rox-android一个Material Design风格的基于用户和朋友喜欢的地点给游客推荐兴趣地点的App。Notes一款基于Material Design 的开源笔记本应用。SmsCo...

Android小功能实现-sim卡读取,发短信,播放音乐

1、读取sim卡信息private TelephonyManager tm; tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE); String sim = tm.getSimSerialNumber();需要TelephonyManager 加权限 <uses-permission android:name="android.permission.READ_PHONE_STATE"/>2、发短信SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage(phone, null, "msg !", null, null);发短信权限 <uses-permission android:name...

Android KK上如何让三方APK发送的SMS不显示出来

KK上sms framework架构做了修改,引入了default application的概念 假如手机上安装了多个收发信息的APK,那么必须设置一个作为default AP,只有default AP才有权限去读写数据库 如果非default AP去发送彩信,发送完后Framework会将这条短信写入数据库 KK之前的版本,如果三方Apk去发送短信,只要这个apk不将该短信内容写入数据库就不会显示。 kk之后的版本,如果三方APK去发送短信,虽然这个apk不将该短信内容写入数据库,但由于...

cocos2d-x 通过JNI实现c/c++和Android的java层函数交互【图】

1.JNI JNI是Java Native Interface的缩写,中文为JAVA本地调用。从Java1.1开始,Java Native Interface(JNI)标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI一开始是为了本地已编译语言,尤其是C和C++而设计的,但是它并不妨碍你使用其他语言,只要调用约定受支持就可以了。JNI实现流程:2.C++与java交互流程图: 注:对于跨平台的 cocos2d-x 来说,除非必要,否则可不必深究其理,比如想要...

Android 创建服务(一)【代码】

Service是Android中四大组件之一,在Android开发中起到非常重要的作用,是一个没有用户界面的在后台运行执行耗时操作的应用组件。通过startService()启动的服务处于“启动的”状态,一旦启动,service就在后台运行,即使启动它的组建被销毁,它还是处于运行状态。service可以在很多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD卡上文件的变化,再或者在后台记录你地理信...

为您的Android,iOS等应用添加声波传输功能

记得12年左右的时候,美国出现了chirp应用,该应用可以使用声波在iphone手机间传输文本,图片、甚至视频,当时觉得非常高大上。再后来,到13年的时候国内也出现了很多声波应用,比如支付宝的声波支付、茄子快传的声波传输、车载设备、还有一些智能摄像机厂家使用声波在手机和摄像机间传输wifi用户名和密码信息。想在自己的应用中使用声波传输功能,但苦于在网上找不到可以用的商业版本,后来找到了又太贵,所以决定自己开发一个,方...

android 蓝牙4.0多通道【代码】

很久没记录东西了,前段时间研究了一哈android4.0控制多个外设的情况,注意,需要使用android版本4.3以上,蓝牙4.0及以上。 我这里使用的控制蓝牙灯泡,使用android4.3的手机,手机上的蓝牙是4.0. 记得在manifest文件中加入权限: <uses-permission android:name="android.permission.BLUETOOTH"/><uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> 先拿到BluetoothManager和BluetoothAdapter的对...

网页背景H5视频自动播放---PC端、移动端兼容问题完美解决方案(IOS、安卓、微信端)【代码】【图】

最近公司官网需要使用视频当做banner背景且自动播放,并且因为是官网需要做到PC端和移动端都可以适配兼容,这些问题很是头疼;兵来将挡,水来土掩,进过查阅相关技术资料,现已完美兼容PC端和移动端。下面就为大家详细讲解:PC端:PC端相应简单些,浏览器对<video>标签的兼容还是很好的,但是想要在浏览器中当做Banner视频自动播放就必须设置这些属性来更好地实现;<video // 设置后,音频会初始化为静音,注意浏览器只有设置静音,...