自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 gradle 编译

编译环境mac 系统找到gradle 脚本的位置 cd /Applications find ./ -name gradle路径如下:/Applications/Android Studio.app/Contents/gradle/gradle-2.10/bin/gradle修改 .bash_profileexport GRADLE_HOME=/Ap...

2018-03-14 22:25:47 241

原创 Mac 解压缩rar文件

安装下载RAR工具包 下载链接解压对应的压在的压缩包rarosx-5.4.0.tar.gztar -xvf rarosx-5.4.0.tar.gz解压后的更目录是rar,进入rar 目录安装相关命令rar:sudo install -c -o $USER rar /usr/local/bin/unrar:sudo install -c -o $USER unrar /us...

2018-03-14 16:18:26 420

原创 Android Studio 使用平台特性的jar包

Android Studio 使用平台特性的jar包路径out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes-full-debug.jar使用方法拷贝jar包到app/libs目录修改模块build.gradle dependencies { provi...

2018-03-12 20:44:40 389

原创 thermal zone

注册thermal zone设备 thermal_zone_device_register函数申明: #include 函数定义:thermal_core.cstruct thermal_zone_device*thermal_zone_device_register( const char *type, int trips,

2018-01-09 19:00:50 999

原创 workqueue

自定义workqueue头文件//HZ的定义,HZ=1000ms#include <linux/param.h>//work_queue相关的宏和结构体 #include <linux/workqueue.h>1.定义work_func(my_test_work_func)static void my_test_work_func(struct work_struct *work){

2017-07-17 18:28:27 295

原创 Linux驱动:module_platform_driver

该宏是用来定义驱动的入口函数使用方法:include <linux/platform_device.h>static struct platform_driver power_supply_driver ={ .driver = { .name = "power-supply", .owner = THIS_MODULE, .of_ma

2017-07-14 19:30:42 1899

原创 AndroidStudio xlint 相关警告

有关详细信息, 请使用 -Xlint:deprecation 重新编译。有关详细信息, 请使用 -Xlint:unchecked 重新编译。解决办法:allprojects { gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs << "-Xli

2017-02-23 11:03:30 729

原创 ':app:mockableAndroidJar' clean 出错

Error:Execution failed for task ‘:app:mockableAndroidJar’. java.lang.NullPointerException (no error message)出错的原因:clean app模块的mockableAndroidJar 的这个task 出错(没有参与编译) 解决办法:1.Go to File -> Settings ->

2017-02-23 10:33:31 2644

原创 Python: 类(Class)

定义一个类:class Student(object): pass##使用方法:stu1 = new Student()class:关键字 Student:类名(首字母大写) (object):父类,默认父类都是object构造函数:def __init__(self,arg1,arg2): self.name = arg1 self.age = ar

2016-12-02 16:15:18 290

原创 Python 排序

sorted 高阶函数默认用法:>>> sorted([10,8,25,37,99,3])[3, 8, 10, 25, 37, 99]默认是从小到大排序,如果需要从大到小排序需要自己定义一个函数def reversed_cmp(x, y): if x > y: return -1 if x < y: return 1 return 0>>>

2016-12-02 15:13:21 222

原创 Python 切片

使用范围:list ,tuple,字符串切片方式:[n1:n2:n3]:n1 代表切片的开始位置:n2 代表切片的结束位置(不包含n2):n3 代表切片的间隔(默认n3=1)切片序号取值正数取值(从0 开开始表示第一个元素)负数取值(从-1 开开始表示最后一个元素)

2016-12-02 13:33:23 245

原创 Python 模块调试

为了方便调试,很多时候我们都会直接运行当前模块来查看结果,这样会比较方便##test.pyif __name__ = '__main__': ##调试相关的代码 print __name__这样的话,只有直接运行该模块的时候name 的值才等于main 当别的模块import 这个模块的时候,name的值等于当前的文件名,也就是test

2016-11-24 10:22:13 549

原创 vim 多文件操作

打开多个文件文件分屏显示

2016-11-24 09:51:16 293

原创 MYSQL

参考微博mysql_config --cflags --libs该命令用于查看本地是否有安装mysql开发包-I/usr/include/mysql -DBIG_JOINS=1 -fno-strict-aliasing -g-L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lz -lm -lrt -ldl以上结果说明本机有安装开发包,编

2016-11-21 11:41:14 305

转载 Android Broadcast 和 BroadcastReceiver的权限机制

在Android应用开发中,有时会遇到以下两种情况,一些敏感的广播并不想让第三方的应用收到 ;要限制自己的Receiver接收某广播来源,避免被恶意的同样的ACTION的广播所干扰。在这些场景下就需要用到广播的权限限制:第一种场景: 谁有权收我的广播?在这种情况下,可以在自己应用发广播时添加参数声明Receiver所需的权限。首先,在Androidmanifest.xml中定义新的权限RECV

2016-11-16 19:37:30 302

转载 计算文件MD5

import java.io.File;import java.io.FileInputStream;import java.math.BigInteger;import java.security.MessageDigest;/** * Created by guoliang.wgl on 2016/10/19. */public class Md5 { public static

2016-10-19 20:16:34 508

原创 Android 获取外部存储设备列表

由于不同芯片设备的外部存储设备不太统一,比如说外部sdcard,u盘等,他们的路径在不同芯片上面的定义是不一样的,所以我们需要动态的去获取机器当前的外部设备mount 的情况Android 通过 StorageManager 类来管理存储设备的,这个类里面包含一些隐藏的方法: getVolumeList —–> 返回StorageVolume 类型的数组,包含系统所有的存储设备volume ge

2016-10-19 16:32:23 2720

原创 Android 获取系统prop

Android 系统prop java层的api 定义在类 android.os.SystemProperties 中 由于这个类是隐藏的,所以我们需要采用反射的方法去调用反射调用private String getProp(String key,String defaultValue){ String value = defaultValue; try {

2016-10-19 16:10:03 1645

原创 AndroidStudio 删除模块

AndroidStudio 删除模块1.进入工厂目录,选择相关module目录并且删除2.找到settings.gradle文件,删除相关模块3.重启AndroidStudio即可

2016-09-28 10:48:35 444

转载 Media Playback

Media PlayBack 下列类用于在Android框架中播放音视频:MediaPlayer本类是播放音视频的主要API。AudioManager本类管理音频源和设备的音频输出。 Manifest声明在开始开发MediaPlayer的应用程序之前,请确保manifest已经正确地声明了以下相关feature:·       Internet Permis

2012-07-05 15:56:40 468

翻译 Android:将用户带到另外一个应用程序

把用户带到另外一个应用程序       Android最重要的特点就是,基于用户不同的动作,它能把用户带到另外一个应用程序。例如:如果你的APP 有一个商业地址需要在地图上显示,你不用在自己的APP中新建一个活动来显示这个地图,相反,你可以通过intent来发送查看这个地址的请求。Android系统会自动启动一个能在地图上查看这个地址的APP.       我们知道,当你需要启动本应用中其

2012-06-28 19:27:46 356

翻译 Android:片段之间的通信

片段之间的通信       为了重复使用片段UI组件,你应该将每个片段设计成一个完全独立的,模块化的组件,它有自己的布局和行为。一旦你定义了这些可重复使用的片段,你就能将它跟活动联系起来,并通过应用逻辑将他们连接,以组成全局的复合UI.       很多时候,你可能希望几个片段之间来通信,例如根据用户的选择来改变内容。所有片段之间的通信都是通过跟他们想关联的活动来完成的,两个片段不能直接通

2012-06-27 19:40:22 496

翻译 Android:创建动态UI

创建动态的UI       当你需要的你的APP支持很广泛的屏幕大小时,你能够基于有限的屏幕空间,在不同的布局配置中重复使用片段来提高用户体验。       例如:在手机上面,可能一次只能显示一个片段,但是在平板上面,你可能需要并排显示几个片段。       FragmentManager类提供了在活动运行时添加,移除和替换片段的方法,这样就能够创建动态的用户体验。 在运行时添

2012-06-27 11:22:40 362

翻译 Android:创建一个片段

创建一个片段       你可以把片段想象为活动中的一个模块化的部分,它有自己的生命周期,接受自己的输入事件,并且在活动运行时,你能够添加它或者移除它(有点像子活动,你能够在不同的活动中使用它)。这篇文章讲解的就是如何使用Support Library,然后继承Fragment类,同时保证你的APP能够在低版本运行。       注意:如果由于其它原因,你决定你的APP的最低API 版本是

2012-06-26 20:36:23 386

转载 Android代码名字-版本号-API级别-NDK版本对应关系

源文:http://source.android.com/source/build-numbers.htmlAPI级别与NDK的对应关系如下:Code nameVersionAPI level(no code name)1.0API level 1(no code name)1.1API level 2Cu

2012-06-26 19:40:13 777

翻译 Android:支持不同的语言

支持不同的语言     将APP代码中的UI字符串提取到一个外部的文件中是一个很好的惯例。Android工程下的资源目录能轻易实现这个功能。       如果你使用Android SDK工具创建了你的工程,这个工具会在工程的顶层创建一个res/目录。这个目录里面是不同类型资源的子目录。有些是默认的文件,例如res/values/strings.xml .里面存放的是字符串的值。 创

2012-06-26 14:26:37 373

翻译 Android:支持不同的屏幕

支持不同的屏幕         Android 通过两个属性来分类不同的屏幕:大小和密度。你应该考虑到你的APP可能会安装到不同大小和密度的设备上。因此,针对不同的屏幕,你应该有一些资源来让你的APP的外表得到优化。       大小分四种:小,正常,大,特大       密度也分为四种:低,中,高,特高       为了给不同的屏幕设置不同的layout 和图片,你必须把这些

2012-06-26 10:19:26 397

翻译 Android:风格和主题

风格和主题(Styles and Themes)              风格就是用来指定view或者window的外貌和格式的一系列的属性的集合,包括高度,间隙,字体大小,颜色,背景颜色等。风格是通过XML资源定义,它跟知道layout的XML文件不同。        Android 风格跟网页设计一样,允许将内容跟设计分离。例如要设计下面这个TextView,XML la

2012-06-25 17:47:35 317

翻译 Android:支持不同的版本(Supporting Different Platform Versions)

Supporting Different Platform Versions(支持不同的版本)      由于Android的新版本经常会提供大量的API,所以你应该同时支持旧版本直到更多的设备更新到新的版本。这篇文章就是讲如何在支持旧版本的基础上来使用新的APIS开发你自己的APK.Google是通过Google play Store来统计设备Android 版本的使用比例和分布情况

2012-06-25 08:14:08 741

翻译 Android: 任务和返回堆栈

Task and Back Stack(任务和返回堆栈)         一个应用程序通常包含多个活动。每一个活动都要围绕一个特定的action来设计,用户能够执行这个action并且能启动其它的活动。例如一个邮件应用可能包含一个活动来显示新邮件列表,当用户选择一个一封邮件,启动一个新的活动来显示这个邮件。         一个活动甚至可以启动该设备上其它应用的活动。例如如果你的应用想要发

2012-06-21 19:30:34 2179

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除