通过adb命令连接特定的设备 当电脑上运行着多个模拟器,或者连接着多台设备时,我们使用adb命令安装或者卸载应用时,就会提示:error: more than one device/emulator- waiting for device -那这个情况下如何连接到特定的设备呢?可以通过如下操作:1. 使用命令 adb devices,列出所有已连接设备,如下:List of devices
Android dpi,dp,dip,px的关系 由于Android设备多种多样,而在Android开发中,我们不可能为每个设备适配一套布局,为了解决这个问题android用dpi来粗略的区分不同的设备。目前支持,ldpi, mdpi, hdpi,xhdpi,xxhdpi,现在好像已经有xxxhdpi了。dpi表示屏幕像素密度,计算公式是:dpi=(√(横向分辨率^2+纵向分辨率^2))/屏幕尺寸);例如计算一下小米手机屏幕的DPI,4.0英
Android MVP架构 MVP架构简介MVP模式是由著名的MVC模式演变过来的,Android应用开发本身就是MVC模式,其中xml的布局是View层,Activity就相当于Controller。然而实际开发过程中,Activity经常不能纯粹的充当Controller,因为既要负责渲染view,又要处理业务逻辑,所以经常看到一个Activity有上千行代码,代码臃肿难懂,维护起来也非常吃力。这时候就需要简化Act
Android动画基础-Tween和Frame动画 前言Android动画是android开发中非常重要的一部分,现在越来越多的产品都加入了各种酷炫的动画,作为一名Android小码农,学习Android的动画是必不可少的。Android给我们提供了几种类型的动画:Tween动画,Frame动画,Property动画,这篇文章先介绍前两种比较简单的。一. Tween动画Tween动画可以对对象进行缩小,放大,旋转,渐变,位移等操作,
eclipse到Android Studio的项目迁移 一直以来,公司开发都是用eclipse,但是随着我们应用不断成长,项目结构越来越庞大,项目间依赖关系变得很复杂,用eclipse管理显得非常吃力,经常一个同事更改依赖项目之后,别人在更新的时候,都会出现问题,经常因为这些事情浪费时间。最终决定迁移到Android Studio。但是迁移的过程中还是遇到了很多问题,通过这篇博客,把迁移过程中遇到的问题,以及每个问题的解决方案,记录一下,也希望能帮助到
android ant 打包error 用ant打包时,出现如下错误错误信息:D:\android-sdk\android-sdk\tools\ant\build.xml:649: The following error occurred while executing this line:D:\android-sdk\android-sdk\tools\ant\build.xml:694: Execute failed: java
android Service的stopself方法 今天被stopself坑了,mark一下。。。一直知道stopself是停掉Service的方法,但是却不知道什么时候停止。以为调用了stopself就会马上停止,实际上我错了。在onStartCommond方法里面调用stopself方法时,不会马上停止,而是onStartCommond方法执行结束才会停止。还有一点,调用stopself方法之后,service会执行onDestor
anddroid ProGuard 混淆代码 混淆器通过删除从未用过的代码和使用晦涩名字重命名类、字段和方法,对代码进行压缩,优化和混淆。结果是一个比较小的.apk文件,该文件比较难进行逆向工程。因此,当你的应用程序对安全敏感(要求高),例如当你授权应用程序的时候,混淆器是一种重要的保护手段。关于Proguard的官方描述:http://developer.android.com/tools/help/proguard.html这篇文
Android OnTouchEvent, onClick, onLongClick调用机制 在Android开发中,我们经常会对一个View设置onClick,onLongClick,onTouch事件,有时还会同时设置这三个事件,那么在同时设置这三个时候,执行顺序是什么样呢?首先,官方文档上面对onLongClick()和onTouch()的描述如下:onLongClick() - This returns a boolean to indicate whether you hav
从svn导出android项目,却不能被ecllipse识别 今天从svn上导出一个android项目,到eclipse中。导出之后目录结构显示不正常,没有Android Private Libraries,也没有Android版本,比如 Android 5.0.1,然后右键->属性,里面没有Android选项。最后发现这个里面没有.project文件,.project是项目文件,项目的结构都定义在里面,比如libs的位置,src的位置。这时从别的and
android开发-app widget 本博文主要讲述的android开发中的桌面程序的开发--APP widget,主要用的是PendingIntent和RemoteViews。 PendingIntent主要用来设置桌面程序的相应方式。此对象可以有三种Intent方式,第一个是开始一个新的Activity,第二个是发送一个广播,第三个是开始一个service。 RemoteViews的作用:因为桌面程序和app程序不是属于一个进
Android Read Only File System IOException 最近写了一个截图的功能,activity启动之后,截屏。方法如下:public class ScreenDebug { public static void screenshot(final View v, final Activity activity) { new Thread(new Runnable() { @Override
python基础总结 最近在用python和php开发开发一个android,apk自动打包项目,由于对python和php的基础知识掌握不是很熟悉,开发过程中被耽误了不少时间。现在回头想想印象最深刻的就是python和php的字符串,列表的使用。这篇blog总结一下python的基础知识,也让自己加深印象。1.python的中文编码如果脚本文件中含有中文,需要在文件的开始加上# -*- coding: UTF
Linux 命令行更新android sdk 命令:android update sdk --no-ui查看哪些包可以更新命令是:android list sdk也可以只更新需要的包,只需要加上--filter,android update sdk --filter --no-ui例如:android update sdk -u --filter platform-tools,android-16,extra-android-suppo
设计模式-模版方法模式 模版方法是一个非常简单,使用频率比较高的设计模式。意图:定义一个操作中算法的骨架,而将将一些方法的实现延迟到子类中,TemplateMethod使得子类可以不改变算法的结构即可重定义算法的特定方法。参与者:AbstractClass,抽象类。定义抽象的操作,具体的子类将重新定义各自的实现算法。ConcreteClass,具体的实现类。回想一下,在之前的开发中用到过这种模式,
Linux启动gearman服务 好久没用Gearman了,服务器上的Gearman server不知道什么时候被停掉了,所以当执行程序时,报错: File "python/response.py", line 41, in File "python/response.py", line 38, in main gm_worker.set_client_id('your_worker_client_id_name'
windows7下nginx+php+mysql开发环境搭建 转载:http://blog.csdn.net/shoyer/article/details/8182050,我就是按照这篇文章一步步操作的,非常感谢!导言:近来,nginx以其高性能吸引大批web开发者,各大门户网站大多都采用nginx作为web服务器,关于nginx的介绍,网上已有大量文章,笔者就不在此赘述,关于linux上nginx的搭建网上也有大量文章,但在windows上却为
android studio plugin开发和使用 最近由于项目需要要开发一个android studio的插件(自动化管理Android项目的配置),这里就描述一下整个过程,从开发到应用。首先,我不知道如何在Android studio上直接开发插件,然而Android studio是基于Intellij IDEA,所以我想在Intellij 上开发,然后到处jar包,在studio上应用。因为我发现https://plugins.jetbrains.com/好多插件在Android studio和Intellij 上都是可以用的,最后验证也是可行的。
设计模式-备忘录模式 意图:在不破坏对象封装性的前提下,在对象的外部得到并保存对象内部的状态,这样对象以后还能恢复到原来的状态。像是备份对象的内部信息。参与者:memento(备忘录),存储原发器的内部状态。Originator(原发器),创建备忘录,纪录自己当前的状态,以及使用备忘录恢复对象的状态。CareTaker(负责人),负责保存好备忘录,并且保护备忘录不能被改变。
android Accessibility service 偶然间看到了这篇文章,http://www.pingwest.com/kill-process-in-a-smart-way/,虽然对百度的产品没有太大的兴趣,但是它的超强加速还是挺吸引人的,想研究一下。文章里面介绍主要是利用辅助功能服务实现的。所以先要了解下辅助功能服务,Accessibility service. 网上关于AccessibilityService的阐述和用法已经很多很详细了,能