Android
文章平均质量分 61
Snow_Ice_Yang
这个作者很懒,什么都没留下…
展开
-
Android 构建配置文件(config.gradle)
Android 构建配置信息原创 2023-02-14 16:53:33 · 3594 阅读 · 0 评论 -
Android Room 使用详解
Android Room 使用详解原创 2023-02-08 09:54:49 · 3816 阅读 · 0 评论 -
Android检查网络工具类
检测网络工具原创 2023-02-03 17:25:25 · 389 阅读 · 0 评论 -
Android获取系统文件常用路径(详细)
Android获取系统文件常用路径(详细)原创 2023-02-03 16:19:07 · 2924 阅读 · 1 评论 -
Andriod开发R文件爆红相关解决方法及排查方案
Andriod开发R文件爆红相关解决方法及排查方案原创 2022-11-16 14:11:53 · 4835 阅读 · 0 评论 -
webview重定向解决方案
webview重定向终极解决方案原创 2022-10-19 11:42:12 · 1351 阅读 · 0 评论 -
TabLayout使用
1. 效果图:2. layout_activity.xml <android.support.design.widget.TabLayout android:id="@+id/tablayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginHorizontal="@dime.原创 2021-08-11 19:25:02 · 309 阅读 · 0 评论 -
自定义Dialog并设置圆角和宽高
效果图:原创 2021-06-04 11:33:46 · 425 阅读 · 0 评论 -
Android中动态调整ImageView的宽高比
原理在写好布局文件后,首先拿到整个屏幕的宽度,然后减去左右两侧的padding所占的宽度,得到的结果就是ImageView应该设置的宽度 再由一定比例计算出高度 最后以ImageView.setLayoutParams()完成宽高的设定...原创 2021-06-01 16:47:08 · 2549 阅读 · 1 评论 -
RecyclerView设置分隔线
添加默认分割线:高度为2px,颜色为灰色recycleview.addItemDecoration(new DividerItemDecoration(getContext(), DividerItemDecoration.VERTICAL););添加自定义分割线:可自定义分割线drawableDividerItemDecoration dividerItemDecoration = new DividerItemDecoration(getContext(), DividerItemDec原创 2021-05-20 17:12:47 · 658 阅读 · 0 评论 -
Android 设置获取控件宽高
获取控件的宽高/** * 获取控件的高度或者宽度 * isHeight=true 则为测量该控件的高度 * isHeight=false 则为测量该控件的宽度 * @param view * @param isHeight * @return */ public static int getViewHeight(View view, boolean isHeight){ if(vi.原创 2021-05-20 16:51:48 · 455 阅读 · 0 评论 -
android studio中xml文件报错: URI is not registered的解决办法
问题一:URIisnotregistered(Settings|Languages&Frameworks|SchemasandDTDs)假如是下面框框内是报红色字体并且提示此错。解决方案:进入 File->Settings->Languages&Frameworks->Schemas and DTDs目录下:...原创 2020-03-13 11:10:45 · 1611 阅读 · 0 评论 -
APP启动页隐私弹窗实现说明
最近审核严禁,腾讯应用市场要求APP在启动页增加隐私政策和用户协议,用户从腾讯应用市场上下载APP,第一加载的时候弹窗,不然审核就不给过,样式大概如下用户若点击不同意的时候,无法进入APP内部。下面把实现的代码贴上来1、判断是否首次进入APP/** * 是否是首次进入APP */ public static boolean isFirstEnterAp...原创 2019-12-20 19:41:34 · 10867 阅读 · 5 评论 -
SharedPreferences 工具类封装
public class SharedPreferencesHelper { private SharedPreferences sharedPreferences; /* * 保存手机里面的名字 */private SharedPreferences.Editor editor; public SharedPreferencesHelper(Con...原创 2019-12-11 10:00:02 · 223 阅读 · 0 评论 -
验证码倒计时
public void onCodeClick() { final long count = 60; // 设置60秒 Observable.interval(0, 1, TimeUnit.SECONDS) .take(count + 1) .map(new Function<Long, Long>...原创 2019-11-22 15:08:26 · 176 阅读 · 0 评论 -
android获取SIM卡信息和手机号码
直接附上代码,具体实现new一个PhoneInfoUtils对象,调用其方法即可。public class PhoneInfoUtils { private static String TAG = "PhoneInfoUtils"; private TelephonyManager telephonyManager; //移动运营商编号 private S...原创 2019-10-25 09:42:44 · 6471 阅读 · 1 评论 -
ContentProvider学习笔记
一 理解1.为什么要有ContentProvider?1) 功能需求:一个应用需要访问另一个应用的数据库表数据2) 实际情况:一个应用的数据库文件是应用私有的,其它应用不能直接访问2.ContentProvider是什么?1) ContentProvider是四大应用组件之一2) 当前应用使用ContentProvider将数据库表数据操作暴露给其它应用访问原创 2017-04-18 19:17:36 · 299 阅读 · 0 评论 -
android7.0拍照、相册、剪裁
在Android7.0系统上,Android 框架强制执行了 StrictMode API 政策禁止向你的应用外公开 file:// URI。 如果一项包含文件 file:// URI类型 的 Intent 离开你的应用,应用失败,并出现 FileUriExposedException 异常,如调用系统相机拍照,或裁切照片。 应对策略:若要在应用间共享文件,可以发送 content://...原创 2018-10-26 17:21:10 · 286 阅读 · 0 评论 -
手动打开与关闭软键盘
点击某一个控件,可以手动打开与关闭软键盘://打开软键盘 public static void openKeyBord(AutoCompleteTextView editText, Context context) { InputMethodManager imm = (InputMethodManager) context.getSystemService(Cont...原创 2018-10-19 16:59:19 · 337 阅读 · 0 评论 -
android中监听软键盘的弹出与隐藏,并获取软键盘的高度
最近项目中有一个需求上弹出软键盘的时候,输入框位移至输入框上方,但是Activity中其他的VIew都不动。这个需求需要监听软软键盘的弹出与隐藏,并获取键盘的高度。上网找了一下发现,Android竟然没有提供相应的接口。网上找到的替代方法中最常用的就是自定义根试图从写onSizeChanged方法,这是链接。但是这种方法需要设置android:windowSoftInputMode="adjust...原创 2018-10-19 16:47:18 · 2910 阅读 · 1 评论 -
android7.0调用相机拍照的问题解决方案
最近在应用中开发调用系统相机拍照的时候,遇到一个问题,就是在安卓7.0及以上机型使用,按照往常写法Uri.fromFile(imgFile)回抛出异常FileUriExposedException导致程序崩溃。通过上网查看知道了安卓7.0及以上的特殊问题。因此整理了其他的人的处理方法,我也根据自身的项目需要进行了整改,特此奉上,供学习交流!1.在清单文件里添加provider如下:<...原创 2018-10-08 16:30:01 · 1253 阅读 · 0 评论 -
当点击一个View时,显示下面隐藏的一个View(折叠的动画效果)
先写一个简单的布局 , 用于点击和隐藏 , 如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/too...原创 2018-10-08 15:58:24 · 2676 阅读 · 0 评论 -
Android新技术
新技术:https://www.jianshu.com/p/54a844ed183ehttps://juejin.im/entry/587df1421b69e600584c0a22https://juejin.im/entry/58eed77c570c3500561a1060https://blog.csdn.net/qq_21874145/article/details/7909...原创 2018-10-08 14:03:37 · 711 阅读 · 0 评论 -
Android RSA加密解密
package com.sharetronic.util;import android.text.TextUtils;import android.util.Base64;import java.io.ByteArrayOutputStream;import java.security.Key;import java.security.KeyFactory;import java...原创 2018-09-21 16:53:36 · 733 阅读 · 0 评论 -
Fragment中listview不正常显示的解决办法
RecyclerView不调用onCreateViewHolder和onBindViewHolder1.getItemCount()返回值<=0 ;2.要设置LinearLayoutManager ;listView = view.findViewById(R.id.lv_communication); mLayoutManager = new LinearLa...原创 2018-09-21 16:43:42 · 2078 阅读 · 0 评论 -
Android SeekBar双滑块
实现原理:1、自定义View,在onDraw(Canvas canvas)中,画出2个Drawable滑动块,2个Drawable滑动条,2个Paint(text)2、监听onTouchEvent()事件,修改滑块和滑动条的坐标,调用invalidate()来更新界面 使用方法1、自定义View SeekBarPressure.classpackage xxxxxxxxx...原创 2018-09-21 16:36:04 · 966 阅读 · 0 评论 -
Android-PickerView实现全国地区选择
一、介绍OptionsPickerView —— 选项选择器,支持一,二,三级选项选择,并且可以设置是否联动 ,效果如下: 二、使用 1.添加 Jcenter 仓库 Gradle 依赖:compile 'com.contrarywind:Android-PickerView:4.1.6'GitHub的项目官方地址2.在项目中添加如下代码:package ...原创 2018-09-26 15:59:38 · 8455 阅读 · 7 评论 -
Android自定义AlertDialog
由于开发中经常使用弹框,然而系统自带的弹框太局限,也不太美观,经常不能满足开发需求,所以就只能自定义布局。其实自定义布局很简单,没不要写出来,但是如果不写一遍的,后面遇到的话就感觉又会忘记,所以在次记一小笔,仅记一个最简单的例子,可以举一反三。直接上代码:dialog_setting_wifi_pwd.xml <?xml version="1.0" encodin...原创 2018-08-23 16:55:14 · 1128 阅读 · 0 评论 -
(listview局部更新)在activity中获取listview的item子项view
获取item的view的方法:/** * 获取listView中item的布局 * @param pos 位置 * @param listView listView * @return */ private View getViewByPosition(int pos, ListView listView) { fin...原创 2018-11-01 17:09:30 · 7856 阅读 · 2 评论 -
Android G711A编解码
封装G711类:public class G711 { private static short aLawDecompressTable[] = new short[] { -5504, -5248, -6016, -5760, -4480, -4224, -4992, -4736, -7552, -7296, -8064, -7808...原创 2018-12-14 09:45:37 · 2298 阅读 · 0 评论 -
Android使用AudioRecorder录音,通过G711A编码并实时发送
AudioRecorder:封装了录音的方法:创建录音对象、开始、暂停、停止、取消,使用静态枚举类Status来记录录音的状态。AudioRecorder类:import android.media.AudioFormat;import android.media.AudioRecord;import android.media.MediaRecorder;import andr...原创 2018-12-14 11:38:43 · 3989 阅读 · 8 评论 -
Android java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity解决方案
Android项目在使用Glide有时会出现这样的异常:java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity at com.bumptech.glide.manager.RequestManagerRetriever.assertNotDestroyed(RequestM...原创 2019-08-02 19:31:03 · 620 阅读 · 0 评论 -
android 获取视频第一帧作为缩略图
今天,简单讲讲android里如何获取一个视频文件的第一帧作为缩略图显示在界面上。一.使用MediaMetadataRetriever获取视频的第一帧作为缩略图/** * 获取视频文件截图 * * @param path 视频文件的路径 * @return Bitmap 返回获取的Bitmap */ public static Bitmap getVideo...原创 2019-08-02 19:20:08 · 2179 阅读 · 0 评论 -
安卓视频播放器 仿今日头条视频播放控件----JiaoZiVideoPlayer
前段时间由于项目需要用到类似于今日头条的视频播放器,实现在线播放,边缓存边播放,当然也可以播放本地文件,如下图:这里写图片描述这里我推荐大家使用的是jiecaovideoplayer开源库,这个库的播放引擎是ijkplayer,它调用ffmpeg, 原项目GitHub地址:https://github.com/lipangit/JiaoZiVideoPlayer一、项目引入:1、...原创 2019-08-02 19:13:38 · 1662 阅读 · 0 评论 -
Android 计时器Timer,时间格式化以时分秒显示
在开发中我们有时会有这样的需求,即在固定的每隔一段时间执行某一个任务。比如UI上的控件需要随着时间改变,我们可以使用Java为我们提供的计时器的工具类,即Timer和TimerTask。APITimer是一个普通的类,其中有几个重要的方法;而TimerTask则是一个抽象类,其中有一个抽象方法run(),类似线程中的run()方法,我们使用Timer创建一个他的对象,然后使用这对象的sch...原创 2019-05-30 17:08:27 · 5811 阅读 · 0 评论 -
MediaScannerConnection 保存图片,并刷新媒体库
MediaScannerConnectionMediaScannerConnection 作用是为应用提供一个媒体扫描服务,当有新创建或者下载的文件时,会从该文件读取元数据并将该文件添加到媒体中去。当我们添加一个文件的时候,我们需要刷新媒体库才能立即找得到添加文件,MediaScannerConnection可以为我们解决这一问题。那么我们就来看看怎么使用MediaScannerCon...原创 2019-02-25 17:44:56 · 2775 阅读 · 3 评论 -
Android用命令生成keystore签名
生成keystore签名首先CMD命令定位到jdk的bin目录下,如果配置了jdk环境变量就不用了执行命令keytool -genkey -alias forever -keyalg RSA -validity 10000 -keystore forever.keystoreimage.png这里关键文字的代表意义:forever:keystore的别名alias100...原创 2019-02-12 11:26:20 · 629 阅读 · 0 评论 -
Could not download okhttp.jar (com.squareup.okhttp3:okhttp:3.3.1)
gradle添加 implementation 'com.squareup.okhttp3:okhttp:3.3.1' 是报错:Unable to resolve dependency for ':app@ReleasesDebug/compileClasspath': Could not download okhttp.jar (com.squareup.okhttp3:ok...原创 2019-01-23 17:50:42 · 3899 阅读 · 0 评论 -
Android有用的框架和博客分享
框架类:okhttp框架:https://github.com/square/okhttpokhttp框架封装:https://github.com/hongyangAndroid/okhttputilsOk-Go框架:https://github.com/jeasonlzy/okhttp-OkGo九宫格控件:https://github.com/jeasonlzy/NineGri...原创 2019-01-23 17:44:05 · 306 阅读 · 0 评论 -
Okhttp3封装
此处借鉴鸿洋大神分享的框架:https://github.com/hongyangAndroid/okhttputils还有鸿洋大神的博客:https://blog.csdn.net/lmj623565791/article/details/47911083 使用前导入:implementation 'com.zhy:okhttputils:2.6.2'使用方法:GET请...原创 2019-01-23 17:23:17 · 858 阅读 · 0 评论