- 10-17 09:51:58.930: D/STATUSBAR-NetworkController(2441): refreshSignalCluster: data=-1 bt=false 开发中遇到了上述错误 这个错误需要在AndroidManifest.xml配置文件中修改 user-sdk 标签 给user-sdk 添加一个android:minSdkVersion="8" 属性 4. 4.程序实际占用: 以一个简单的 android 程序为例,该程序是用 eclipse adt 自动生成的最简单的一个 android 项目,只有1个 activity 和 adt 自动生成的 res = BitmapFactory.decodeResource(getResources(), R.drawable.big4); } } 其中:big1 到 big4 都是 1600*900 那为什么区区3,4张图片就会让 android 程序内存不足?
Requires -f -n <count> Sets max number of rotated logs to <count>, default 4 -v <format> /.Settings: task=TaskRecord{42392278 #448 A com.android.settings U 0} V/ActivityManager( 500): We have entry is 5120b, max payload is 4076b octopus@octopus:~$ 加载日志缓冲区 : 使用 adb logcat -b 缓冲区类型 命令; -- Android 默认的缓冲区; octopus@octopus:~$ adb logcat -b radio -t 5 D/PHONE (23599): [GeminiDataSubUtil] UAPP_C6-4 octopus:~$ 以二进制形式输出日志 : 使用 adb logcat -B 命令; octopus@octopus:~$ adb logcat -B -t 5 O��_�3ZS�4gps_mt3326nmea_reader_parse
android开发中使用AndroidManiFest.xml静态注册的BroadCastReceiver没有作用是什么原因? to discover and pair bluetooth devices) android蓝牙开发——权限 为了在应用程序中使用蓝牙功能,我们至少需要声明两方面的权限:BLUETOOTH和BLUETOOTH_ADMIN 大多数应用程序必须具有这个权限才能够发现本地蓝牙设备,这个权限保护的其他能力(除了发现本地设备)不应该被使用,除非你的应用程序是在用户请求的时候能够修改蓝牙设置的管理者。 你需要在应用程序的manifest文件中声明程序的蓝牙权限。 </manifest> 关于声明应用程序权限的信息,请看<uses-permission>参考。
soundPool.play(hashMap.get(sound), volume, volume, 1, loop, 1.0f); System.out.println(currStreamId); } } 4. SoundPool播放的音效要小于7秒 , 否则会出现加载失败的现象; 在Android平台上使用的即时文件越小越好 , 必要的时候可以降低采样频率或者将立体声改为单声道;
案例演示 XML布局文件 : <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android > <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/nine_patch 如果只设置了拉伸区域, 图片按钮拉伸不会失真, 但是内容会将整个图片按钮填充, 设置了内容显示区域, 类似于设置了一个padding, 这样按钮文字可以显示在拉伸图片中央位置, 与边缘会有一定的距离; (4) > <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width=" > <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="
注意一个错误 : 已安装具有该名称和不同签名的数据包 , 早上测试人员报告突然出现这个问题, 在开发的时候我直接将eclipse上编译的版本放到了服务器上, 最后出现了这个问题, 开发的时候明明是好的啊 又发现一个BUG : 在弹出更新对话框, 点击确定下载完毕之后会弹出系统自带的替换应用程序对话框, 在这里点取消的话就会一直卡在Splash界面. 设置一个跳转机制解决这个问题. { } //动画执行结束时回调 @Override public void onAnimationEnd(Animation animation) { } }); 4. 获取解析器解事件, 如解析到文档开始 , 结尾, 标签等 int eventType = parser.getEventType(); //4. 获取解析器解事件, 如解析到文档开始 , 结尾, 标签等 int eventType = parser.getEventType(); //4.
Android开发之《Android应用开发揭秘》UI事件汇总 /* * Android开发之《Android应用开发揭秘》UI事件汇总 * 北京Android俱乐部群:167839253 * 还好,现在沉淀下来,继续android开发的征程。 以下是Android应用开发揭秘这本书第四章的关于UI的事件处理的总结。基本上都是可以复用的代码。存着日后方便。 .isChecked()){ DisplayToast("你选择了:"+myCheckBox1.getText()); } } }); 4. Button.OnClickListener(){ @Override public void onClick(View v) { } }); 4. " android:title="中等" /> <item android:id="@+id/width" android:orderInCategory="4" android:title="粗
一、Android基于Linux平台,由操作系统、中间件、用户界面和应用软件组成。 二、特点:1、开放性 2、应用程序无界限 3、应用程序在平等的条件下创建 4、应用程序可以轻松的嵌入网络 5、应用程序可以并行运行。 三、Android系统架构分为四层: 应用层:java编写运行在虚拟机上的程序。 应用框架层:编写应用时使用的API框架。 系统运行库层:C/C++库 Linux内核层 四、Dalvik虚拟机 1、专有的dex文件格式 2、dex优化 3、基于寄存器 4、一个应用、一个虚拟机实例、一个进程 五、OMS open 4、Service 十、Android应用程序的生命周期 [img]http://images.51cto.com/files/uploadimg/20100105/145010651.jpg[/img
需要权限 android.permission.BLUETOOTH : 允许程序连接到已配对的蓝牙设备, 请求连接/接收连接/传输数据需要改权限, 主要用于对配对后进行操作; android.permission.BLUETOOTH_ADMIN : 允许程序发现和配对蓝牙设备, 该权限用来管理蓝牙设备, 有了这个权限, 应用才能使用本机的蓝牙设备, 主要用于对配对前的操作; 优先级 : BLUETOOTH权限是BLUETOOTH_ADMIN权限的前提 intBOND_BONDING, 值为11; 本地设备与远程设备正在匹配中; 未匹配 : intBOND_NONE, 值为10; 本地设备与远程设备没有连接, 本地不存在与远程设备共享的连接, 设备间的通信不能被认证和加密; (4) ", 几乎该类中的每个广播都有该附加域; 蓝牙名称 : StringEXTRA_NAME, 蓝牙名称附加域, 存放蓝牙名称, 值为"android.bluetooth.device.extra.NAME o) 作用 : 比较调用该方法的对象与 o 对象, 如果相等, 返回true, 反之返回false; 参数 : 对比的对象 返回值 : 如果两个对象相等, 返回true, 反之返回false; (4)
调用BluetoothAdapter的cancelDiscovery()方法; (3)获取输入流 public InputStream getInputStream () 作用 : 获取输入流 (4)
配置文件 配置 ActionBar 启用 和 关闭 配置文件中指定 targetSdkVersion : 在创建应用的时候, 指定的 targetSdkVersion 大于 3.0 版本, 就会默认启用 ActionBar, 现有手机大部分都是 4.0 以上, 就不使用 supportV4 兼容了, 直接使用高版本 sdk; -- 创建工程示例 : 注意 Theme 选择 None, 选择其它主题会出错 /RelativeLayout> (4) 执行结果 二. (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } (4) ; -- setHomeButtonEnable(boolean) : 设置是否将应用程序图表转换为可点击按钮; 2.
Closeable是可以关闭的数据源或者目标, 实现该接口必须重写close()方法, 调用close()方法可以释放该对象保存的资源;
UI = 控件 + 布局,上一节介绍的是简单控件,这里主要介绍一下Android应用界面开发中的布局。 五大布局 LinearLayout:线性布局。 RelativeLayout:相对布局。 android:gravity:该属性用于控制它所包含的子元素的对齐方式。 外边距 android:marginLeft:控件距布局左边界的距离。 android:marginTop:控件距布局上边界的距离。 android:marginRight:控件距布局右边界的距离。 android:marginBottom:控件距布局下边界的距离。 android:paddingRight:控件中内容距控件右边界的距离。 android:paddingBottom:控件中内容距控件下边界的距离。 AbsoluteLayout 运行Android应用的手机往往千差万别,因此屏幕大小、分辨率都有可能有很大差异,使用绝对布局很难兼顾不同屏幕大小、分辨率问题,因此AbsoluteLayout布局已经过时
铸造坚不可摧的底层护甲:Android应用深度安全防御指南原始译文参考:开发技术前线(原作者:RémiPradal/译者:kevinhong)Android的开放性既是福音也是诅咒。 当应用开始涉猎极其敏感的金融或用户隐私数据时,你面对的将是极其凶险的黑暗森林。 OWASP(开放网络安全项目)揭示了移动端的十大红线,而本文将直击Android开发者最本职的三大防线:网络截获(MITM)、本地被盗与逆向破解。 如果用户被忽悠在手机上信任了一个野鸡中间证书(比如某免费WiFi让你装的证书),他在你应用里输入的所有密码都将被抓包代理截获。 遇到极其核心的算力或是高敏密钥拼接,请毫不犹豫地转舵交给AndroidNDK开发,用C/C++写进原生的.so动态链接库。
Android功能快速上线神器! 推荐一款开源的轻应用开发框架RapidView:[https://github.com/Tencent/RapidView) 用过的都说好,神器! 简介 RapidView是一套用于开发Android客户端界面、逻辑以及功能的开发组件。 布局文件(XML)及逻辑文件(Lua)可以运行时执行,主要用以解决Android客户端界面、逻辑快速更新以及快速开发的诉求。 RapidView的XML语法规则与Android原生XML类似,而写逻辑的Lua部分除语言语法规则外,可以直接使用我们提供的Java API以及Android原生API,因此熟悉Android客户端开发的开发者上手成本会非常小 除了解决动态更新问题外,RapidView希望Android开发者能够以更快的速度开发产品功能需求,因此我们在语法和开发方式上做了一些改变,期望开发者能够实现:小功能极速开发、大功能极速上线。
开发者可以直接在WebView中使用聚合(Polymer)和Material设计。 由于该应用需要访问互联网,所以需要在AndroidManifest.xml中配置: <uses-permission android:name="android.permission.INTERNET" 在JavaScript脚本中通过刚才暴露的name对象调用Android方法。 写一个在JavaScript中调用Android方法的实例,该实例界面包含一个WebView组件,用于显示HTML页面。 方法的功能,并将Android应用中的MyObject对象暴露给JavaScript脚本,暴露成JavaScript脚本中名为myObj的对象。 -- 注意此处的myObj是Android暴露出来的对象--> <input type="button" value="打招呼" onclick="myObj.showToast('<em>Android</em>
文章目录 LruCache 应用场景 LruCache 算法原理 LruCache 实现 LruCache 参考 LruCache 应用场景 ---- 1. 缓存空间是否已满 : 如果缓存空间满了 , 需要将队尾元素删除 , 将元素放在队首 ; 4. Android 中的 LruCache : 其缓存空间就是一个 LinkHashMap 链表 , 当调用 put 方法向其中放入新元素时 , 就会判断这个 LinkHashMap 链表是已满 , 如果没有空间 并保证其插入取出顺序的一致性 ; 当调用 get 方法获取其中的元素时 , 会将该元素提取到队头中 , 这符合了 LRU 算法的要求 ; LruCache 参考 ---- LruCache 参考 : ① Android
Intelij IDEA 的 SDK 概念 (1) SDK 简介 SDK 简介 : -- SDK 需求 : 如果使用 Intelij 开发应用软件, 需要一个 SDK, 最常见的时 JDK, 用于 Java Java ME 移动设备开发; -- Android SDK : Android 开发; -- Flex AIR SDK : Adobe Flash 平台开发; -- Flexmojos SDK : Web 应用的工具, 可以使用 Java PHP JavaScript markUp 等语言; -- Android Moudle : Android 应用模块; -- Ruby Moudle : Android 可穿戴 和 电视支持 工程配置 : -- 设备类型选择 : 为了更容易跨平台开发, 工程向导提供了新的模板 为 Android 可穿戴 和 电视设备 创建你的应用; -- 版本选择 : 创建工程过程中, 项目向导弹出一个对话框展示了 API 列表, 开发者从该列表中选择 项目的 最小版本; 4.
Android应用开发平台可以基于linux系统(如ubuntu),MAC OS,windows,但习惯上还是在windows下做应用开发,linux下作系统开发。 先讲windows下应用开发,linux下系统开发后续开展 随着android于2007上市推广一下,android应用开发环境也经历变变化。 通过这个选项可以建立并运行现存的Google提供的Example Application (在Android SDK的目录中可以找到) 4. 点击 Finish. program "); setContentView(tv); } } 4.在运行一个应用程序之前要新建一个AVD,以便于现实和模拟应用程序的执行结果 5.创建一个启动项 能够在 4. 在 Android标签中,浏览要开始的工程和Activity 。 5.
中的序列化方法 : 在Java中序列化有两种方法, 一种是实现Serializable接口, 一种是实现Parcelable接口, Serializable接口是J2SE固有支持的, Parcelable是Android 支持的, 是Android中特有的, 效率比Serializable高; 序列化实现 : Serializable接口实现 : 只需要声明一下即可; Parcelable接口实现 : a. getDeviceClass () 作用 : 返回设备类, 这个设备类可以与BluetoothClass.Device中的常量进行对比, 得到这个设备是什么类型的设备; 返回值 : BluetoothClass的设备类; (4)