安卓小知识汇总

说说今天写这篇文章的目的吧。在做项目开发的时候,有一些经常要用到的代码片段,但是我比较笨,记忆力不好,每次要用到的时候,都要去搜索,觉得很浪费时间,而且有的代码放到项目中根本不生效。于是,趁今天有空,索性把这些经常用到的小知识整理一下,方便日后使用。另外这篇文章也会持续更新,在项目中经常用的都汇总到这里,如果有不对的地方,请小伙伴们指出!

1.安卓中各种尺寸的获取

  • 获取屏幕的宽高
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int widthPixels = metrics.widthPixels;
int heightPixels = metrics.heightPixels;
  • 获取状态栏高度
Rect rect= new Rect();
getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);
int statusBarHeight = rectangle.top;
  • 获取App区域的宽高
Rect rect = new Rect();
getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);
  • 获取View布局区域的宽高
Rect rect = new Rect();  
getWindow().findViewById(Window.ID_ANDROID_CONTENT).getDrawingRect(rect);  

2.解决库冲突

依赖库重复包含时就会出错,可以在项目的build.gradle文件中添加exclude标签,去除重复编译的库,语法格式如下图:

这里写图片描述

3.版本号和版本名称

当应用需要发布到应用的时候,通常需要确定APP的版本号和版本名称。这时候可以找到项目的build.gradle,在defaultConfig节点下更改即可

  defaultConfig {
        applicationId "com.poobo.linqibike"
        minSdkVersion 14
        targetSdkVersion 22
        versionCode 1
        versionName "1.31"
    }

versionCode 就是版本号,versionName就是版本名称。
APP发布到应用市场后,通过versionCode识别软件版本,而versionName是展示给用户的。所以在APP更新的时候,versionCode需要加大,以便让应用市场识别更新。
另外,细心的朋友可能会发现,以前用eclipse做开发的时候,versionCode和versionName是写在AndroidManifest.xml中的,现在问题来了,如果同时在build.gradle和AndroidManifest.xml中声明,究竟以哪个为准呢?毫无疑问,答案是以build.gradle为准,因为在android studio中,gradle负责apk的编译

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值