- 博客(51)
- 收藏
- 关注
转载 Android面试
一、activity1、activity作用2、activity生命周期3、activity四种启动模式4、activity启动流程5、如何加速启动actviity二、fragment1、fragment作用2、fragment生命周期三、service1、service作用2、service的两种启动方式和生命周期3、service与activity的两种通信方式四、C...
2019-09-19 22:15:17 194
转载 Android开发应用框架汇总
先来说一下常见的Android框架模式:MVC、MVP、MVVM这三种框架中,我们耳熟能详的就是MVC和MVP了吧,接下来我们简单介绍一下:MVCView:XML布局文件。Model:实体模型(数据的获取、存储、数据状态变化)。Controllor:对应于Activity,处理数据、业务和UI。从上面这个结构来看,Android本身的设计还是符合MVC架构的,但是Andr...
2019-03-27 22:30:38 1148
转载 20条最最常用的Linux命令讲解
玩过Linux的人都会知道,Linux中的命令的确是非常多,但是玩过Linux的人也从来不会因为Linux的命令如此之多而烦恼,因为我们只需要掌握我们最常用的命令就可以了。当然你也可以在使用时去找一下man,他会帮你解决不少的问题。然而每个人玩Linux的目的都不同,所以他们常用的命令也就差异非常大,而我主要是用Linux进行C/C++和shell程序编写的,所以常用到的命令可
2017-12-24 07:30:20 621
转载 android屏幕适配
前言Android的屏幕适配一直以来都在折磨着我们Android开发者,本文将结合:Google的官方权威适配文档郭霖: Android官方提供的支持不同屏幕大小的全部方法Stormzhang:Android 屏幕适配鸿洋:Android 屏幕适配方案凯子: Android屏幕适配全攻略(最权威的官方适配指导)自身的思考&实践 给你带来一种全新、全面
2017-12-22 11:05:51 307
原创 dp和px换算公式
dp是虚拟像素,在不同的像素密度的设备上会自动适配,比如:在320x480分辨率,像素密度为160,1dp=1px在480x800分辨率,像素密度为240,1dp=1.5px计算公式:1dp*像素密度/160 = 实际像素数
2017-12-22 11:02:14 3747
转载 python入门 零基础入门 学习资料整理
Python 是一种面向对象的解释型计算机程序设计语言,创始人为荷兰人吉多·范罗苏姆(Guido van Rossum),是一门对初学者比较友好的编程语言,入门相对简单,并且网上有大量的学习资料。我在这里整理了学习python过程中的一些链接和学习资料,希望对大家有所帮助。知乎有大量关于自学python的话题,很多大神的回答条例清晰、资料翔实:你是如何自学 Python 的?如
2017-12-20 14:32:07 2402 2
原创 Java注解Annotation基础
从JDK5开始,Java增加了Annotation(注解),Annotation是代码里的特殊标记,这些标记可以在编译、类加载、运行时被读取,并执行相应的处理。通过使用Annotation,开发人员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充的信息。代码分析工具、开发工具和部署工具可以通过这些补充信息进行验证、处理或者进行部署。Annotation提供了一种为程序元素(包、类、构造
2017-12-18 09:45:59 206
转载 Android开发之生成自己的签名文件及App签名打
首先,要想生成Android App的签名文件必须先配好Android开发环境,因为签名文件的生成需要进入jdk中的bin目录,如果还未配好开发环境,请自行百度。下面,我们开始生成自己的签名文件,第一步,打开cmd,进入到jdk的bin目录,这样的话,android.keystore文件就会生成在这个目录下;第二步,在bin目录下输入命令 keytool,回车;
2017-12-15 16:28:23 604
原创 高德地图——申请Key
1、进入控制台,创建一个新应用。如果之前已经创建过应用,可直接跳过这个步骤这里写图片描述2、 在创建的应用上点击”添加新Key”按钮,在弹出的对话框中,依次:输入应用名名称,选择绑定的服务为“Android平台SDK”,输入发布版安全码 SHA1、调试版安全码 SHA1、以及 Package,如下图所示:这里写图片描述在阅读完高德地图AP
2017-12-15 10:15:28 1976
原创 builer设计模式
当我第一次使用Picasso的时候,看见下面的官网示例时,我和我的小伙伴都惊呆了!Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);如此简洁明了的使用方式,如此灵活多变的链式调用,让我深深地迷住了,然后我一直苦苦追求它,奈何天资愚笨,不知如何掀起它的神秘面纱,直到我在网上找到了这篇教程...
2017-12-15 09:32:29 173
原创 adb命令安装apk,和安装问题daemon not running. starting it now on port 5037解决
通过手机测试手机上的客户端应用,一般需要先安装被测应用apk到手机中,安装步骤如下: 【预置条件】1、通过PC的“开始”,在运行框中输入cmd,回车,打开cmd编辑界面;2、手机已连接PC,PC可以识别出手机,可在cmd编辑界面输入adb devices,回车,查看当前手机是否连接,若显示设备信息这标识已经连接,如下:C:\Users\posuo>adb d
2017-12-15 09:20:05 4422
转载 浅析Java中的final关键字
谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字。另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法。下面是本文的目录大纲: 一.final关键字的基本用法 二.深入理解final关键字 若有不正之处,请多多谅解并欢迎指正。 请尊重作者劳动成果,转载请标明原文链接
2017-12-13 10:46:24 157
转载 Android Studio手动下载配置Gradle的方法
问题(1) Android sutdio第一次打开一个工程巨慢怎么办? (2) 手动配置Gradle Home为什么总是无效? (3) 明明已经下载了Gradle,配置了gradle home,为什么打开工程还是去自动下载Gradle?需要解决上面问题,需要了解一下知识。Android Studio怎么知道该用哪个Gradle呢?AS一个项目所用的Gradl
2017-12-13 10:44:48 492
转载 Android Studio3.0升级gradle遇到的坑
升级了android studio3.0后,对于文件的搜索和方法中参数的使用,是一个重大的改变,但升级gradle后,缺出现很多的问题。个人整理一下,希望对大家有所帮助。说明:我原来的环境是as2.3+gralde2.14.1+plugin2.2.3升级后的环境是:as3.0+gradle4.2.1+plugin3.0.01、Error:(82, 0) Ca
2017-12-13 10:27:12 3830
转载 Java中abstract class 和 interface 的解释和他们的异同点(转)
(一)概述 在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进 行抽象类定义时对于abstract class和interfac
2017-12-12 14:54:39 229
原创 Android桌面快捷方式的实现
1)创建 /** * 为程序创建桌面快捷方式 */ private void addShortcut(){ Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); //快捷方式的名称 shortcut.putExtra(Intent
2017-12-12 14:43:51 2562 1
转载 AchartEngineActivity引擎绘制柱状图、曲线图
1.简介 AChartEngine(简称ACE)是Google的一个开源图表库(for Android)。它功能强大,支持散点图、折线图、饼图、气泡图、柱状图、短棒图、仪表图等多种图表。该项目地址位于: http://code.google.com/p/achartengine/。关于里面类的具体使用,请下载响应的文档说明(主页上有)。2.开发步骤1)在工程中新建
2017-12-12 14:39:36 285
原创 andorid消息推送
1.引言 所谓的消息推送就是从服务器端向移动终端发送连接,传输一定的信息。比如一些新闻客户端,每隔一段时间收到一条或者多条通知,这就是从服务器端传来的推送消息;还比如常用的一些IM软件如微信、GTalk等,都具有服务器推送功能。 推送方法如下: 1)通过SMS进行服务器端和客户端的交流通信。 在Android平台上,你可以通过拦截SMS消息并且解析消息内容来
2017-12-12 13:49:49 380
原创 Java的三大特性
Java语言的三大特性即是:封装、继承、多态封装:首先,属性可用来描述同一类事物的特征,方法可描述一类事物可做的操作。封装就是把属于同一类事物的共性(包括属性与方法)归到一个类中,以方便使用。1.概念:封装也称为信息隐藏,是指利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体,数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外接口使
2017-12-12 11:54:52 236
原创 Android Gradle 使用教程
1.介绍如果你正在查阅build.gradle文件的所有可选项,请点击这里进行查阅:DSL参考1.1新构建系统的特性gradle构建系统具有如下的特点:易于代码和资源复用易于创建应用的版本,例如发布多apk以及应用的不同渠道版本构建过程易于配置,扩展和优化良好的IDE整合1.2为什么使用Gradle?Gradle既是一个先进的构建系统
2017-12-12 11:40:54 3453
原创 重载与重写的区别
首先我们来讲讲:重载(Overloading) (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。重载Overloading是一个类中多态性的一种表现。 (2) Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不
2017-12-12 11:32:29 12284
原创 android AsyncTask介绍
AsyncTask和Handler对比1 ) AsyncTask实现的原理,和适用的优缺点AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.使用的优点:l 简单,快捷l 过程可控 使用的缺点:l
2017-12-12 11:14:49 123
原创 Android常用知识点总汇
Android常用知识点总汇一、系统上安装了多种浏览器,能否指定某浏览器访问指定页面?请说明原由。 如果在你的android系统上安装了多种浏览器,能否指定某浏览器访问指定页面?答案当然是:肯定的。 具体方法如下:Intent intent = new Intent(); intent.setAction("android.intent.action.
2017-12-12 11:12:33 153
原创 静态内部类与非静态内部类的区别
package com.devin;public class MyMain{ private static String name = "woobo"; private String num = "X001"; // 静态内部类可以用public,protected,private修饰 static class Person { // 静态内部类中可以定义静
2017-12-12 10:49:08 264
原创 android Studiod的快捷键
Alt+回车 导入包,自动修正Ctrl+N 查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L 格式化代码Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等)Ctrl+E或者Alt+Shift+C 最近更改的代码Ctrl+R 替换文本Ctrl+F 查找文本C
2017-12-11 15:48:58 478
原创 配置android开发环境
配置好android环境变量后在dos窗口下输入android命令显示出正确的结果,但输入adb命令后却出现adb不是内部或外部的命令,也不是可运行的程序或批处理文件,百思不得其解,google问题答案,方案大概有两种。现呈列如下,方便日后学习.方案一:找到自己安装androidSDK的路径,比如我的就是C:\Program Files\Android\android-sdk,进去plat
2017-12-07 16:14:45 126
原创 android复制粘切的实现
main.xml如下: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
2017-11-01 11:04:25 272
原创 Android内存中创建原图的副本
// 1.得到原图;// 根据图片的资源ID得到图片对象Bitmap srcPic = BitmapFactory.decodeResource(getResources(),R.drawable.meinv);// 2.参考原图创建一个空白纸张;// 根据指定的宽,高,配置信息创建图片对象Bitmap copyPic = Bitmap.createBitmap(srcPi
2017-07-29 15:32:48 289
原创 Android中的mvc概念
activity是安卓中的界面也是用户的友好交互界面,而activity中的的数据展示也是在activity中,器数据来自adapter,业务处理的数据放在adapter力变,然后adapter再将数据传递给activity.其中业务处理的数据来自db或者.db.dao。这个流程就称作Android中的mvc模式。简单来说,activity中的控件(如listview)作为view,adapt
2017-07-29 15:09:00 378
原创 android的工程目录及相关知识
1.SDK的目录结构* add-ons>附加组件,放在一个额外的工具。google api,提供google地图的jar包* build-tools>编译工具,谷歌sdk升级后采用的目录* docs>文档目录。开发文档。* extras >附加工具 support 文件夹,提供向下兼容的jar包。>和额外的驱动,摄像头驱动,手机驱动* platform
2017-07-29 15:07:53 268
原创 getApplicationContext,context,this的区别
getApplicationContext 返回的是context.this代表当前的activity继承的事context,(父类中有的方法子类中一定有,子类中有的方法父类中不一定有)。在使用getApplicationContext中一定可以使用activity.this,但在使用activity.this时是不一定可以使用getApplicationContext。
2017-07-29 15:07:00 310
原创 padding与margin的区别
margin在边界手册上叫外补丁,padding是填充内补丁,在他们之间有一个边界border。padding包围的就是content,那么这个盒子是不是就是最外层的div,按照从外到内,margin,border,padding,content?这个margin是不是和border的距离?二,比如说最外层height:800px;width:800px;margin:1px 1px 1px
2017-07-29 15:05:56 302
原创 MD5加密
public static String digestPassword(String password){StringBuilder sb = new StringBuilder();try {//1.获取数据摘要器//参数:加密的方式MessageDigest messageDigest = MessageDigest.getInstance("MD5");//2.将一个byte数组
2017-07-29 15:03:12 324
原创 gravity与layout_gravity
grayvity与layout_gravity都是android的属性都用来调整控件或者字体内容的位置,其中:1.android:gravity 属性是对该view 内容的限定.比如一个button 上面的text. 你可以设置该text 在view的靠左,靠右等位置.该属性就干了这个. 2.android:layout_gravity是用来设置该view相对与起父view 的位置.比如一
2017-07-29 14:57:41 311
原创 内存溢出问题
java.lang.OutOfMemoryError OOM: 内存溢出,内存泄露Out of memory on a 27144012-byte allocation.堆内存主要是类实例和数组分配空间的.原因:设备中堆内存是16m,程序加载图片需要的内存是26m,当需要的内存空间大于堆内存空间就会抛出OOM的异常; 解决办法:缩放图片加载到内存中 步
2017-07-28 16:49:14 204
原创 ContentProvider
为让其他软件能操作自己工程中的数据数据库表,给其他软件提供了访问数据库的同一方式;这种方式就是contentprovider作用:把应用本身的私有数据提供给其他应用使用。 产生原因:一般应用的私有数据(数据库等)不能被其应用访问,但是如联系人、短信等数据要用第三方APP备份或者读取使用时就有冲突,所以就产生了内容提供者ContentProvider,它向其他的应用提供了访问自己私有数据的方
2017-07-27 14:20:25 200
原创 bind开启服务的生命周期
特点:1.第一次绑定服务时,先创建服务对象,再绑定,调用的方法onCreate,onBind;2.解除绑定的服务时先解除绑定的服务,然后销毁服务对象;3.服务只能被绑定一次;4.服务只能被解除一次,多次解除会抛出异常;5.当前界面关闭时会解除绑定的服务,销毁服务对象; 推荐的混合方式:(既能让服务长期运行在后台又能够调用服务中的业务方法)1.startSer
2017-07-27 14:14:36 790
原创 start开启服务的生命周期
生命周期方法: 1.onCreate:在服务对象创建后调用这个方法,初始化服务对象; 2.onStartCommand:开启服务后调用这个方法; 3.onDestroy:在服务对象被销毁之前调用这个方法,通常在这个方法中做一些扫尾工作,比如保存数据; 特点: 1.第一次开启服务时,先创建服务对象,然后再开启:调用的方法onCreate,onS
2017-07-27 14:13:12 662
原创 android中的AIDL
aidl:Android Interface Defination Language 安卓的接口定义语言;aidl格式的文件是一个对外开放的可以共享的文件,可以把它拷贝其他工程中使用; IPC Inter process communication 进程间的通讯;Stub 远程服务的代理对象:远程服务:同一个设备上的另一个软件中的服务组件;本地应用:自己当前的应用程
2017-07-27 14:04:17 168
原创 URI的组成与介绍
http://192.168.1.100:8080/image/1.jpg 组成结构: 1.schema:简单的理解为是协议名称,如http; 2.host:主机名,如192.168.1.100或者ip; 3.port:端口号,如8080; 4.path:路径,如image文件夹 3.数据:数据资源,如1.jpg;
2017-07-26 15:20:42 2714
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人