- 博客(20)
- 资源 (14)
- 收藏
- 关注
原创 某些高配手机拍照显示同一张照片
1使用HONOR以及OPPO高配手机,拍身份证正反面,拍完第二张时,第一张的图片显示也变了原因:在调用拍照时,传的图片保存路径一样,结果导致拍第二张,本地的图片被替换,进而影响到了第一张图片显示,所以,每次拍照都得保存不一样的路径...
2020-08-29 05:45:26 306
原创 微信打开网页字体抖动
//初始化微信字体大小 initFontsize() { (function () { if ( typeof WeixinJSBridge == "object" && typeof WeixinJSBridge.invoke == "function" ) { handleFontSize(); ...
2020-07-23 14:52:59 852
原创 okhttp证书过期自动修改证书方式并再次请求
问题:由于项目中有直播模块,导致IOS审核一直被卡,都卡了一个多月,所以导致了一个问题,如果HTTPS证书过期了,Ios又升级不了,APP就直接奔溃解决:检测证书过期,自动降级处理Android描述:项目由OkHttp3+Retrofit构造,下面代码展示如何检测到证书过期,如何重试该接口,以及如果修改证书1、使用拦截器检测证书过期,主要是抓SSLHandshakeException重试接口代码是返回的那句话:return chain.proceed(newRequest);注意r.
2020-07-22 17:44:39 1452
原创 小米手机画面闪烁
描述:Activity中启动透明背景的DialogFragment,再在DialogFragment中commit其他Fragment。现象:小米手机在打开DialogFragment时,本该透明的区域出现重复,且应该是Activity中的UI画面,并且不停闪烁解决:设置DialogFragment的style时,取消Style的windowBackGroud属性...
2020-07-17 10:24:44 235
原创 监听ScrollView是否在滚动
原理:在onScrollChanged方法滚动时,延时发送滚动结束事件,若在100ms内继续有滚动事件,那么取消上次发送的结束事件public class ObservableScrollView extends ScrollView{ private final long mDragDelayTime = 100;/** * 100毫秒后发送滚动结束的指令,若继续有滚动事件,则取消发送 */ private Thread mDragThread = new Threa.
2020-06-15 15:02:41 751
原创 直播侧滑清屏
import android.animation.Animator;import android.animation.AnimatorListenerAdapter;import android.animation.ValueAnimator;import android.content.Context;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.VelocityTr..
2020-05-27 16:00:27 943 1
原创 appbarLayout 若干问题解决
import android.content.Context;import com.google.android.material.appbar.AppBarLayout;import androidx.coordinatorlayout.widget.CoordinatorLayout;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.View;import androi..
2020-05-25 17:24:19 1057 1
原创 观察者模式
问题:事件分发思考:1、由于28之后,google限制反射使用,使用EventBus,怕哪一天就嗝屁了,所以事件分发不使用EventBus等来处理 2、使用广播,想都不想,代码太复杂,看起来不舒服,哈哈哈 3、循环存储Activity的栈内的ActivityList,将事件分发到每一个Activity,可行,但是每个Activity都得重写N多方法解决:使用观察者模式解决问题管理类:使用Map保存对象,事件复杂度为1/** * 观察者管理类 ...
2020-05-22 14:26:13 187
原创 代码构建颜色选择器
import android.content.Context;import android.content.res.ColorStateList;import android.graphics.Color;import android.graphics.ColorFilter;import android.graphics.ColorMatrixColorFilter;import android.graphics.drawable.ColorDrawable;import android.g.
2020-05-18 16:45:42 186
原创 CountdownView倒计时问题记录
1、 用背景时,天不能转换成小时DynamicConfig dynamicConfig = new DynamicConfig.Builder().setConvertDaysToHours(true).build();mCountdownView.dynamicShow(dynamicConfig);2、解决完问题1后,时间显示不全,用左右padding可以解决android:paddingRight="@dimen/dp_10"3、将CountdownView..
2020-05-13 14:15:54 527
原创 直播专业名词解释
GOP设置GOP:(Group of Pictures)画面组,一个GOP就是一组连续的画面,每个画面都是一帧,一个GOP就是大量帧的集合。直播的视频数据流,其实是一系列的视频帧率组件,包括I帧、P帧等。一个GOP就是以一个I帧,多个P帧开始。当用户第一次观看的时候,播放器需要找到I帧才能开始播放,而播放器会到服务器寻找到最近的I帧反馈给用户。因此,减少GOP帧的数量,能减少播放器加载GOP帧所用的时间。在直播推流端GOP一般建议设置为1~2s。播流协议选择华为云视频直播服务支持RTMP、HTT
2020-05-12 14:18:44 2329
原创 Android10 适配
在Android 10 版本中,官方的改动较大,相应的开发者适配成本还是很高的。基于前期调研,我们主要基于以下几方面进行Android 10的适配: Android X 分区存储 设备ID 明文HTTP限制 一、AndroidXAndroidX 对原始 Android Support库进行了重大改进,后者现在已不再维护。AndroidX 软件包完全取代了支持库,不仅提供同等的功能,而且提供了新的库。1.1 什么是AndroidX...
2020-05-12 14:05:21 955
原创 RecycleView问题记录
1、直播互动区,需要从底部向上添加消息。解决:设置LayoutManager第三个参数为false,表示倒序@SuppressLint("WrongConstant")LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this, LinearLayout.VERTICAL, true);2、直播互动,消息过于频繁时,由于渲染太快,导致Item之间重叠解决:由于RecycleView自带动
2020-05-11 15:22:27 420
原创 IjkPlayer+AndroidVideoCache 实现音乐播放
IjkPlayer实现音乐播放(进度条、缓存、是否正在缓冲等)枚举:public enum AudioPlayEnum { /**播放空闲*/ PLAYER_FREE, /**预缓冲,准备播放中*/ PLAYER_PREPARING, /**播放中*/ PLAYER_PLAYING, /**播放完毕*/ PLAYER...
2020-04-30 10:52:42 1626 2
原创 网络改变检测+弱网检测
//声明接口public interface INetwork { void onChange(int netType); void onWeakNet(long delay);}//网络改变检测import android.content.BroadcastReceiver;import android.content.Context;import a...
2020-04-24 16:17:45 442
原创 软键盘监听以及对导航栏的处理
问题:直播评论时,需要部分布局随软键盘移动,直播画面等不动解决方案:监听软键盘显示隐藏,代码设置控件移动使用第三方框架进行软件盘监听:com.github.yoyoyaobin:PreventKeyboardBlockUtil但是这个框架不对导航栏进行处理,需要在上层重新封装。import android.app.Activity;import android.content....
2020-04-21 16:45:26 505
原创 Android常用第三方框架记录
先记录,万一用到呢1、腾讯TBS浏览器WebView,避免系统WebView的多坑。2、智能布局加载更多:SmartRefreshLayout3、沉浸式布局:ImmersionBar4、注解:ButterKnife5、键盘监听:KeyboardHeightProvider6、滑动TabLayout:SlidingTabLayout6、音视频播放器:IjkPlayer...
2020-04-20 16:32:21 1039
原创 实现可拖动控件
public class DragLayout extends RelativeLayout { private ViewDragHelper mDragger; private ViewDragHelper.Callback callback; private ImageView imageView; private String mTitle; ...
2020-04-20 14:05:22 196
原创 BGABanner记录
一、BGABanner简单用法 1、XML:<cn.bingoogolapple.bgabanner.BGABanner android:id="@+id/banner_guide_content" android:layout_width="match_parent" android:layout_height="wr...
2020-04-20 11:34:45 1186
原创 Android Wifi连接 (PEAP)
Wifi PEAP方式的连接与Android的版本有很大关系,三个大的差别对应的版本分别是4.3以下,4.3到6.0之间,以及6.0以上,现在就基于版本分析。如果要连接wifi,那么得创建WifiConfiguration版本4.3以下,需要采用反射机制才能得到WifiConfiguration,而4.3及以上版本,android提供了WifiEnterpriseConfig类,可以直接创
2016-10-27 17:37:56 7489
android动画源码集
2016-01-06
NFC读写Wifi连接
2014-12-09
讯飞时时语音
2014-11-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人