
Android Studio
文章平均质量分 70
蹲街式等待
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Android 根据mapping文件还原混淆代码
app发布的时候都会做混淆处理,但是当发生错误的时候,只能看到一些混淆后的代码很难看清楚哪里错了,那么如何将混淆后的代码进行还原呢?Android sdk 目录下有专门的工具可以帮助我们进行还原。原创 2023-02-09 16:07:58 · 6902 阅读 · 0 评论 -
Android 将整形颜色值转换成String类型
转换方法:val hexColor = String.format("#%06X", [0xFFFFFF or intColor]);转换结果:#F2EADA原创 2020-05-16 13:32:36 · 2924 阅读 · 0 评论 -
Android Studio 查看页面布局层次结构
Android Studio有个可以查看手机上app页面布局层次结构的工具。可以协助我们对布局进行优化,去掉没有必要的节点等,通过这个工具可以清晰的看见页面整个结构;废话少说直接上图,再说过程。这就是我们想要看到的,每个节点都很清晰的展现在我们面前。接下来我们看如何进入到这个页面,包括每部分都是什么功能。下面我们就来看下如何打开:(按照图中箭头顺序依次打开)总结:根据以上步骤就完成这...原创 2020-04-27 18:22:52 · 4236 阅读 · 0 评论 -
Android WebView 使用漏洞
一、类型WebView中,主要漏洞有三类:任意代码执行漏洞;密码明文存储漏洞;域控制不严格漏洞;二、具体分析2.1、WebView任意代码执行漏洞出现该漏洞的原因有三个:WebView 中 addJavascriptInterface() 接口WebView 内置导出的 searchBoxJavaBridge_ 对象WebView 内置导出的 ac...原创 2020-04-18 12:22:35 · 885 阅读 · 0 评论 -
Android Button字母自动全部大写的问题
两种解决方案:方法一:在 xml 布局中设置属性 android:textAllCaps="false"<Button android:layout_width="wrap_content" android:layout_height="match_parent" android:text="添加动作组" android:textAllCaps="false" androi...原创 2020-04-16 10:08:28 · 404 阅读 · 0 评论 -
Android WebView 与 JS 交互
目录一、交互方式总结二、具体分析2.1 Android通过WebView调用 JS 代码方式1:通过WebView的loadUrl()方式2:通过WebView的evaluateJavascript()方法对比使用建议2.2、JS通过WebView调用 Android 代码2.2.1、方法分析方式1:通过 WebView的addJavascriptInterface()进行对象映射方式2:通过 W...原创 2020-04-15 21:18:41 · 638 阅读 · 0 评论 -
Android RecyclerView实现九宫格效果
RecyclerView更加优化的复用机制和方便实现UI效果,几乎替代Listview和GridView的使用。但是分割线的实现,需要自己继承ItemDecoration来绘制。效果图item的布局文件<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.and...原创 2020-04-08 18:14:33 · 4594 阅读 · 0 评论 -
Android 动态计算ListView的高度
一、简介在Android开发的过程中有的时候我们需要手动计算ListView的高度,比如说,ScrollView中嵌套ListView的时候,我们就需要手动精确计算ListView的高度了。如果ListView的Item高度是固定的话还好计算一些,我们可以直接使用Item的条数 * Item的固定高度来计算,但是如果Item的高度随着内容的变化而变化,那么该如何计算呢?下面我们就开始说说如何...原创 2020-04-07 18:14:51 · 1717 阅读 · 0 评论 -
Android onActivityResult中requestCode与resultCode区别
想要了解requestCode与resultCode的区别,我们需要先了解以下三个方法的用法:startActivityForResult(Intent intent, Int requestCode)setResut(int resultCode, Intent intent)onActivityResult(int requestCode, int resultCode, I...原创 2020-04-05 02:46:43 · 2901 阅读 · 1 评论 -
Android 拦截或屏蔽返回键
在Android开发中我们常常会遇到需要拦截或屏蔽返回键的需求,对拦截后的返回键进行特殊操作。监听返回键有两种方式1、重写OnBackPressed方法@Override public void onBackPressed() { // 完全由自己控制返回键逻辑,系统不再控制,但是有个前提是: // 不要在Activity的onKeyDown或者OnK...原创 2020-04-05 02:16:21 · 9334 阅读 · 0 评论 -
Android Activity之间传递类对象
一、简介开发过程中,Activity之间传递数据是必不可少的,Android中使用Intent和Bundle作为数据载体,在Activity之间传递,对于基础数据类型,Bundle已经提供了相关的put、set方法,而作为自定义的类型则需要有特别的要求。自定义类型,想要使用Bundle传递时,需要满足特定的条件,即该类型需要实现Serializable接口或Parcelable接口。注:如果...原创 2020-04-03 20:46:46 · 3042 阅读 · 0 评论 -
Android Canvas绘制带箭头的直线
先看下效果图:下面我们直接看代码我自定义了一个View,代码如下:package com.davis.drawtrangle;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;impor...原创 2020-04-03 17:46:19 · 2622 阅读 · 0 评论 -
Android Studio 突然出现很多红色波浪线或红色感叹号解决方案
最近在开发过程中,某次打开Android工程之后,代码了出现大量的红色波浪线报错提示,但是工程确可以正常编译、正常打包,尝试了很多方法都无法去掉,最后找到了最有效的解决方案,步骤如下:1、删掉工程根目录下的.idea目录;2、重启Android Studio;3、Sync一下工程;4、重新Rebuild工程;经过这四步基本就解决问题啦。...原创 2020-04-02 16:20:33 · 11580 阅读 · 3 评论 -
Android 在onCreate()方法中获取控件宽高值为0解决方案
大家很多时候需要在Activity或者Fragment的onCreate()方法中获取声明的空间的高度或者宽度,进行位置移动或者其他操作,但是当调用 view.getHeight() 或者 view.getWidth() 获取的竟然为0。。。其实很容易理解,在onCreate()的时候,实际上控件只是声明了,并没有绘制完成,没有attach到window上,所以导致获取的高度和宽度为0,那么该怎...原创 2020-03-30 13:56:17 · 1882 阅读 · 1 评论 -
Android 获取屏幕宽度和高度的几种方法
方法一:public static void getScreenSize1(Context context){ WindowManager windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); Display defaultDisplay = window...原创 2020-03-30 12:10:58 · 3331 阅读 · 1 评论 -
Android Studio发布项目到jcenter
目录一、创建Bintray账户及Maven仓库二、上传项目到jcenter1、配置Android项目Gradle命令上传3、在项目中引用3、Add to JCenter一、创建Bintray账户及Maven仓库1、打开Bintray首页,点击 For an Open Source Account ,快速注册或者用第三方的账户登陆即可。2、个人页面点击 Add New Repository...原创 2020-03-25 02:32:31 · 769 阅读 · 0 评论 -
通过Github创建Android库供其他项目依赖引用
目录一、简介二、实现第一步:将自己的项目托管到Github上。第二步:点击releases。第三步:创建release。一、简介我们通常会在Android开发过程中依赖很多第三方库,在开发过程中我们也积累了一些公共库也想给别人使用,那么如何创建Android库,给别人依赖引用呢?二、实现第一步:将自己的项目托管到Github上。第二步:点击releases。第三步:创建release...原创 2020-03-23 23:45:50 · 724 阅读 · 0 评论 -
Android Studio 快捷键大全(Mac系统)
目录一、Mac上的按键符号二、快捷键查找/查看相关控制操作相关代码重构相关一、Mac上的按键符号符号说明⌥option / alt⇧shift⌃control⌘command⎋esc二、快捷键查找/查看相关快捷键说明双击 shift搜索任意内容command + F / command + R当前文件...原创 2020-03-16 16:21:59 · 439 阅读 · 0 评论 -
Android Studio 代理设置以及代理完全清除
一、代理设置首先我们来看下怎样设置代理,Mac下打开【Preferences…】,然后搜索"HTTP",选择【HTTP Proxy】,按图中设置配置好后,点击【Apply】,然后在点击【OK】即可。设置完后,重启Android Studio,在重启后会弹出如下界面,点击【OK】即可。此时代理设置成功,这样就可以使用代理翻墙了。二、代理完全清除首先进入设置代理界面,选择【No pr...原创 2020-03-16 15:03:31 · 40197 阅读 · 4 评论 -
Android Gradle 批量修改生成的apk文件名
一、简介平时开发都知道,我们要上线的时候需要在Android studio打包apk文件,可是默认的打包名是app-release.apk或者app-debug.apk这样的名字,太没有辨识度了。下面我们就来看看Android Studio是怎样来批量修改生成的apk文件名的。二、代码实现1、 Gradle 3.0以下版本在app的build.gradle文件添加如下代码:androi...原创 2020-03-13 19:06:39 · 976 阅读 · 0 评论 -
Android Gradle 多渠道打包、动态配置AppName
一、简介因为国内Android应用分发市场的现状,我们在发布APP时,一般需要生成多个渠道包,上传到不同的应用市场。这些渠道包需要包含不同的渠道信息,在APP和后台交互或者数据上报时,会带上各自的渠道信息。这样,我们就能统计到每个分发市场的下载数、用户数等关键数据。二、Gradle多渠道打包1、普通做法通常情况下的做法是在 AndroidManifest 中增加渠道号:<meta-...原创 2020-03-13 18:11:24 · 2352 阅读 · 0 评论 -
Android Studio 安装ASM插件
1、Android Studio -> Preferences…2、Plugins -> Browse repositories…3、搜索ASM -> 选中要安装的插件 -> 右侧点击Install4、安装完后点击Restart Android Studio...原创 2019-07-17 09:50:10 · 12962 阅读 · 6 评论 -
Android Studio Gradle两种更新方式
第一种、Android Studio自动更新第一步:修改gradle版本修改项目根目录/gradle/wrapper/gradle-wrapper.properties最后一行的地址:distributionUrl=https://services.gradle.org/distributions/gradle-3.3-all.zip新gradle地址从官方下载的地方有。比如目前最新...原创 2019-07-05 16:05:04 · 9396 阅读 · 0 评论 -
Android Studio 自定义Gradle Plugin
一、简介之前公司的一个项目需要用到Gradle插件来修改编译后的class文件,今天有时间就拿出来整理一下,学习一下Gradle插件的编写还是一件十分有意义的事。二、Gradle插件类型一种是直接在项目中的gradle文件里编写,这种方式的缺点是无法复用插件代码,在其他项目中还得复制一遍代码(或者说说复制一遍文件)另一种是在独立的项目里编写插件,然后发布到中央仓库,之后直接引用就可...原创 2019-03-10 18:38:05 · 7212 阅读 · 5 评论