小内存机器使用“微信”时,看视频经常崩溃(out of memory) ,小内存机器有时候明明内存还很多,却还是抛出“内存不够”,应该就是每个APP能用“堆大小”的限制. 如上图,Android项目的Application节点里面有个属性叫做 android:largeHeap="true" .此属性的意思是为你的安卓项目申请更大的内存.我在之前的开发中,总是刻意把此属性设置为false,因为我自以为是的认为,我要为我的应用设置严格的内存,不额外获取更大内存. 后来慢慢的看的资料多了,…
本文转载于:http://blog.csdn.net/lincyang/article/details/40950153 在java编译那些事儿中提到了用ant去编译Java项目,今天扩展到用它来构建Android项目,其实道理是相通的,变化的只是使用的形式.ant构建相比IDE的好处是多个子项目使用自定义jar包时,ant可以更好的完成自动化构建,一个命令就搞定整个项目的编译而不用手工的导出jar包然后再将其放到指定目录.这就是高效的构建工具所标榜的. 先来说说ant在Linux下的安装(那篇…
1.3 创建你的第一个 Android 项目 环境搭建完成后,我们就可以写下我们的第一个项目了. 1.3.1 创建 HelloWorld 项目 在 Android Studio 的欢迎页面点击 Start a new Android Studio project 就会自动为我们创建一个项目.(首次开启项目,可能构建时间很长,需要下载很多东西,和你的网速有关系) 1.3.2 启动模拟器 我们还可以通过 Android Studio 来创建一个模拟器,供我们运行程序.不过建议使用真机测试. 1.3.…
在使用OpenCV之前,Android必须先下载ndk,因为OpenCV使用了native代码,这里建议Android Studio创建C++项目来写OpenCV的内容 1.首先在官网下载OpenCV第三方包 下载链接:https://opencv.org/releases/ 2.查看下载后的文件目录 samples文件夹里面是一些样例,sdk文件夹是我们需要的第三方包 此时将整个sdk文件夹导入到项目中也是可以的,但是900M的文件夹会让项目很庞大,所以我们要导入项目的是sdk包下的一个jav…
转载:http://www.cnblogs.com/tianguook/archive/2012/09/27/2705724.html 生成apk最懒惰的方法是:只要你运行过android项目,到工作目录的bin文件夹下就能找到与项目同名的apk文件,这种apk默认是已经使用debug用户签名的. 如果想要自己给apk签名: 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一…
前言: 单挑Android项目,最近即时通讯用到环信,集成sdk的时候 官方有一句 在 ProGuard 文件中加入以下 keep. -keep class com.hyphenate.** {*;} -dontwarn com.hyphenate.** 即:混淆规则. 自己没写过关于混淆打包的文章,在此补上. 下面了解Android studio环境下 项目混淆打包的操作. ------------------------------------------------------------…
前言 好久没写博客了,罪过啊-记事本里累积了不少东西,整理整理放上来. 关于依赖注入 Dependency Injection( 依赖注入)可以很好的帮助我们分离模块,降低耦合.提高可测试性.(PS:Roboguice 只是一个工具,依赖注入更多的是一种思想)   通常博主开发项目时喜欢以Activity .Service 等组件作为顶级层入口,辅以各类接口作为业务服务.Activity 主要负责维护界面相关的东西,及提供功能所需要的上下文环境,引入功能实现需要的接口. 这些接口的实例通过Rob…
React Natvie的官方文档的 Integrating with Existing Apps 已经很详细地教我们如何将React Natvie集成到现在的Android项目.我根据官方文档的步骤,在Windows上将React Native集成到现有的Android的过程记录下来. 集成到Android项目的要求: 一个现有的Android项目 搭建好环境(参考上一篇文章:http://my.oschina.net/common1140/blog/550501) 首先,创建一个Androi…
自己一个android项目,一直以来进展还算顺利,没有遇到什么严重性的问题,今天准备给同事手机上安装一下玩玩,谁知丢人丢大,无法build apk!报错!my god,我开发没问题啊,我手机连上usb,然后android studio里面运行,很顺利,能够正确安装. 但是换同事的手机却不行,编译报错,不行,再试下我的手机,依然正常,换同事手机就不行!! 我的第一反应是手机版本问题!果然,我手机6.0,同时手机依然是:4.4.4,好吧,去看看我的项目配置: 好吧,貌似是支持4.4.4的啊,为毛呢?…
Android项目目录结构分析 1.HelloWorld项目的目录结构1.1.src文件夹1.2.gen文件夹1.3.Android 2.1文件夹1.4.assets 1.5.res文件夹1.6.AndroidManifest.xml1.7.default.properties1.HelloWorld项目的目录结构(这个HelloWorld项目是基于Android 2.1的)在Eclipse的左侧展开HelloWorld项目,可以看到如下图的目录结构: 图1.HelloWorld项目目录结构 下…
ubuntu的64位下的android环境,说实话,还真得费点精力了,解决一个问题,又出来一个新问题. 小编昨天刚好不容易将android的环境搭建好了,这不,刚建了个项目,直接就报错,下面是罗列出的几条: 1. libstdc++.so.6:cannot open shared object file:no such file or directory 2. Description Resource Path Location Type Error executing aapt: Cannot…
前面几篇博文介绍了从项目搭建到获取网络字符串,对一个项目的前期整体工作进行了详细的介绍,本篇接着上篇介绍一下怎么样优雅将网络返回的json字符串轻松转换成listview列表. 先上图,看一下效果.                包括下拉刷新和上拉加载更多两个功能,怎样还算可以吧~,比起前几篇博文中的那一大片一大片的“乱码”看起来是不是舒服多了. 一.对界面面布局 1.Android默认的标题栏不太好看,咱们需要换成自己的.在AndroidManifest.xml文件中将APP主题设为NoTit…
本篇博文接上篇的<Android项目开发全程(一)--创建工程>,主要介绍一下在本项目中用到的一个很重要的框架-Afinal,由于本系列博文重点是项目开发全程,所以在这里就先介绍一下本项目中用到的几个功能: Afinal简介 Afinal 是一个android的sqlite orm 和 ioc 框架.同时封装了android中的http框架,使其更加简单易用: 使用finalBitmap,无需考虑bitmap在android中加载的时候oom的问题和快速滑动的时候图片加载位置错位等问题. Af…
使用eclipse,进行安卓开发,在建立项目的时候,有些步骤必须注意的, 本文就是对使用eclipse进行android开发的简单说明: 一.模拟器配置设定 使用eclipse开发安卓,需要用到android sdk的avd模拟器,在eclipse中能打开这个模拟器,但是由于与eclipse绑定的, 打开以后,难免会影响到eclipse的使用,其实,模拟器是可以单独打开的,并且eclipse调试运行的时候,也能连接到模拟器. 博主推荐的做法是使用命令指令打开avd, 首先,需要配置环境变量, (…
最近在忙团队并行开发的事情,主要是将各个团队的代码分库,一方面可以降低耦合,为后面模块插件化做铺垫,另一方面采用二进制编译,可以加快编译速度.分库遇到了一些问题,很多都要通过Gradle脚本解决,所以稍微花时间研究了一下. Gradle虽为构建神器,但感觉学习曲线比较陡峭.Gradle User Guide内容很多,但有点太多了,多的你看不完,Gradle Plugin User Guide一篇文章主要讲了Android相关的配置,看完可能感觉马马虎虎会用,但到了修改一些构建流程的时候还是不知所…
Git应用于Android项目的基本知识.     常常将git,repo和gerrit三种工具配合起来使用,使Android开发中的部分工作自动化.并适应敏捷项目管理的需要.     repo是Google在git上开发的版本库管理工具,是用Python编写的脚本库,用来统一管理多个git仓库.     gerrit是适用于git项目的基于WEB的代码review及权限控制系统.它让有权限的用户可以提交代码,提交的代码review和verify后会自动合并.     Git本地库分成工作目录,…
写在项目开始之前: 最近关于android的视频教程,入门的书籍也已经有很多了,例如我的入门就是看了mars的视频教程.但是这么一圈学习下来,觉得真正快速提高的,不是在看视频,而是在实际工作中动手做项目的时候.所以我就思量如何快速的提高学习效率,并且加深记忆呢?其实就是来做项目.因为有一定的基础知识只有,如果不靠实际的项目来加深印象或者加深那种所见即所得的感受,是很难激发出初学者的兴趣的.由于最近在教我的弟弟学习android,他只是一个大一的计算机新生,所以把这个教学过程以及教学经验还有就是实…
在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立Android开发环境投入Android浪潮的朋友们,为了确保大家能顺利完成开发环境的搭建,文章写的尽量详细,希望对准备进入Android开发的朋友有帮助.   本教程将分为五个步骤来完成Android开发环境的部署. 第一步:安装JDK. 第二步:配置Windows上JDK的变量环境 . 第三步: 下载安装Eclipse . 第四步:下载安装Android SDK . 第五步:为Ecli…
上篇介绍了怎么使用ant自动编译打包现有的android项目,这篇将继续介绍如果如何在ant打包应用的时候加入签名信息以及自动打包渠道包. 1. 加入签名信息: 在项目的根目录下建一个ant.properties文件,输入如下内容,其中keystore密码和alias密码可以不指定(防泄漏),那么在命令执行的过程中会要求你输入. #keystore的路径,必须使用正斜杠 key.store=E:/wp_android_sample/me.key #keystore的密码 #key.store.p…
android项目中在sqlite数据库插入/更新/删除数据后: 1. 刷新当前activity界面数据(手动刷新): 在activity类下新增一个refresh()方法: /** * 刷新, 这样的刷新方法,仅仅有一个Activity实例. */ public void refresh() { onCreate(null); } 2. 刷新还有一个activity界面数据(自己主动刷新): 在涉及到sqlite3数据库操作的activity类下重写onResume()方法:(此处建议复习下a…
JDK JDK是java语言的软件开发工具包,它包含了java的运行环境,工具集合,基础类库等内容   Android SDK 是谷歌提供的 Android 开发包,在开发Android 项目的时候 我们需要引入Android SDK 来使用Android 的相关API   Android Studio 在很早之前,Android项目都是用Eclipse来开发的,相信所有Java开发者都一定会对这个工具非常熟悉,它是Java开发神器,安装ADT插件后就可以用来开发Android程序了.而在201…
Findbugs简介 关于findbugs的介绍,可以自行百度下,这里贴下百度百科的介绍.findbugs是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题.这组缺陷模式是可配置的,通过配置,可以过滤掉一些我们不想或不需要检测的问题. findbugs在gradle中的配置 理论的部分就不多阐述了,我们直接来看看项目中怎么使用findbugs吧. 首先,在build.gradle引入findbugs插件 <code class="hljs bas…
Github版 CSDN版 知识背景 Fragment在当前的Android开发中,有两种引用方式,一个是 Android 3.0 时加入的,一个是supportV4包中的.这里简称为Fragment3.0和FragmentV4. Fragment中的返回 在Fragment中经常用到自定义标题栏,而返回按钮的点击事件一般设置为:getActivity().onBackPressed();,这样可以使得点击返回按钮和点击手机上的返回键的效果一致,即调用所在Activity的onBackPress…
背景 现在Android开发多使用一个Activity管理多个Fragment进行开发,不免需要两者相互传递数据,一般是给Fragment添加回调接口,让Activity继承并实现. 回调接口一般都写在Fragment的onAttach()方法中,Fragment 3.0 的onAttach()方法有2个重载,其中一个被废弃,所以通常是: XX_Fragment extends Fragment(Fragment 3.0) @Override public void onAttach(Conte…
故事的最初 我负责的项目A要求有播放在线视频的功能,当时从别人的聊天记录的一瞥中发现百度有相关的SDK,当时找到的是Baidu-T5Player-SDK-Android-1.4s,项目中Demo的so库只有armeabi-v7a 版的,由于需要使用的时候拷贝一些界面和图片资源到现有的项目中,所以我就索性直接打包成了aar,经过一番修改就上线了. Bug出现的那晚 播放在线视频的功能应要求被保留到新的一个项目B中,由于从开始一直都没有相关的需求出来,也就没有测试,毕竟项目A一直也在迭代更新,视频播…
Kotlin俗称Android中的Swift,它是Jetbrains公司开发的基于JVM的一门语言,JetBrains公司可能大家并不熟悉,不过相信IntelliJ IDE大家一定知道,Android Studio正是基于它开发的,Kotlin本身也是面向对象语言. 为什么要使用Kotlin? 它具有如下优点: 1.轻量级 2.和Java具有高度的交互性,可以和Java代码一起运行 3.和Android Studio和Gradle完美整合 4.代码简洁 5.效率上至少和Java一样 当然,目前K…
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 开发Android项目的时候,一般都是一边开发一边根据需求创建目录(包.module),那么我呢就根据以往的项目经验,整理出一个比较简单的目录结构,供以后项目开发参考. 注意:这里只是项目的目录结构图,不涉及里面的代码.其中部分必须的代码参考<Android多Module下的Application引用方式>.<Activity.fragment.dialog基类简单整理> 项目组织结构图 简单说明 app asse…
Android 项目包括构成你的 Android 应用的源代码的所有文件. 利用 Android SDK 工具可以简单的创建 默认项目目录和文件来开始一个新的 Android 项目. 本节课展示了如何使用 Eclipse (包含 ADT 插件)或在命令行通过 SDK 工具来创建一个新项目. 注意: 你应该已经安装了 Android SDK:如果你是用 Eclipse,应该也 安装了(21.0.0 或更高版本的)ADT 插件. 如果还没有,再开始本节课程之前,请根据向导安装 Android SDK…
关于 Android 项目 项目是保存源代码和资源文件的容器. 谷歌提供的 Android SDK 工具只能对具有固定目录结构的项目进行编译和打包.因此强烈建议使用 Eclipse + ADT 或者 android 命令创建 Android 项目. 你可以使用 Eclipse + ADT 创建三种项目,它们主要结构相同但功用不同,分别是 Android Projects.Test Projects 和 Library Projects.本文我们主要关注 Android Projects. 一个…
原文:http://android.eoe.cn/topic/summary 本文中你将了解到: 1. 使用Eclipse创建项目 2. 使用命令行创建项目 你还应该阅读: 1. 安装SDK(官网页面,站内页面) 2. 管理项目(官网页面,站内页面) 创建第一个Android项目 一个Android工程包含了组成android应用的所有源代码的文件.Android软件开发工具包(Software Development Kit,即SDK)可以让你轻松地创建一个包含了默认项目目录和文件的工程. 这…