自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(154)
  • 资源 (2)
  • 收藏
  • 关注

原创 Mob sharesdk分享网页使用 本地drawable资源文件

sharessdk分享网页用本地drawable文件1:drawable文件转存到本地绝对路径下 /** * drawable文件保存到本地绝对路径 */ public static String saveFileFromDrawable(String fileName, int drawableRes) { String path = MainApplication.instance().getFilesDir() + File.separator

2022-03-08 11:40:09 279 1

原创 保存图片和分享

private void saveAndShare() { requestNotifyShare(); Bitmap bitmap = view2Bitmap(binding.saveLayout); try { String uriPath = MediaStore.Images.Media.insertImage(getContext().getContentResolver(), bitmap, "aomi_share...

2021-12-21 11:11:51 210

原创 流式自动滚动recyclerview

1.第一种滚动方式流式滚动,没有停顿的,像手指滑动一样,并且屏蔽触摸事件,直接引用,在 onStart()方法中调用start(),在onStop()方法调用staop()import android.content.Context;import android.support.annotation.NonNull;import android.support.annotation.Nullable;import android.support.v7.widget.RecyclerView

2021-12-14 22:00:41 1991

原创 集成bugly编译慢

如果集成了编译耗时操作,例如bugly上传符号表,调试的时候可以关调,bugly { appId = 'xxxxxxx' // 注册时分配的App ID appKey = 'xxxxxx" // 注册时分配的App Key debug = false //调试模式支持上传 uploadSymbol=true//是否上传符号表}...

2021-12-06 21:54:25 163

原创 android重启app

final Intent intent = context.getPackageManager().getLaunchIntentForPackage(context.getPackageName()); if (intent != null) { intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); context.startActivity(intent); ...

2021-11-25 19:08:00 1486

原创 flutter环境配置

1.下载flutter sdk ,解压后放到C盘或者D盘下载地址:Flutter SDK 版本列表 | Flutter 中文文档 - Flutter 中文资源所有 Flutter SDK 的版本列表,包括稳定版和开发版以及主分支。https://flutter.cn/docs/development/tools/sdk/releases2.配置环境变量,以使得git可以使用flutter命令 在第一步的时候解压后sdk的路径例如:D:\Program Files\FlutterSdk\flutt..

2021-11-07 17:57:32 2690

原创 RxJava 实例(java语言)

Observable.create(new ObservableOnSubscribe<String>() { @Override public void subscribe(@io.reactivex.annotations.NonNull ObservableEmitter<String> emitter) throws Exception { String videoB..

2021-10-18 17:10:04 602

原创 单例模式的饿汉模式和懒汉模式

单例模式是最简单的设计模式之一,shu'yu创建型模式,提供了一种创建对象的最佳方式单例模式:1、单例模式只能由一个实例2、单例模式必须自己创建自己的唯一实例3、单例模式必须给其他所有对象提供这一实例饿汉式:类一旦加载就把单例初始化完成,保证getInstance的时候,单例是已经存在的了。不是lazy初始化,是多线程安全的,比较常用,但是容易产生垃圾对象,优点是没有加锁,执行效率会提高。缺点是类加载时就初始化,浪费内存。public class SingletonEH

2021-10-14 18:21:13 85

原创 android 动画

android动画有以下类型视图动画(View动画) 帧动画(Frame动画,Drawable动画) 属性动画 触摸反馈动画(Ripple Effect) 揭露动画(Reveal Effect) 转场动画&共享元素(Activity切换动画) 视图状态动画(Animate View State Changes) 矢量图动画(Vector动画) 约束布局实现的关键帧动画(ConstraintSet动画)属性动画具体使用:1、ValueAnimator类2、Object

2021-10-14 17:08:26 87

原创 tcp和udp的区别

tcp:面向连接,可靠,传输速度慢,传输效率低,多用于http,socket,邮件等udp:面向非连接(也就是连接性为无连接),不可靠,传输速度块,传输效率高,多用于即时通讯,音视频聊天等rtc可以用tcp也可以用udp。tcp和udp同属传输层,http属于应用层socket是TCP/IP的封装,ip是网络层,tcp是传输层,所以socket相当于传输层,socket是个接口而非协议,通过socket才能使用tcp/udp协议,socket的连接至少需要一对套接字,clientSock

2021-10-12 14:14:45 351

原创 线程 asynctask thread

asynctaskasynctask是一种轻量级的异步任务类,可以在线程中执行后台任务,然后把任务执行结果传递到主线程,封装了thread和handler。采用了线程池的机制线程池:asynctask就是通过线程池来执行异步任务的,线程池的好处1、重用线程池中的线程,避免了频繁创建和销毁线程2、有效控制线程最大的并发数,避免了大量的线程之间因为相互抢占系统资源导致阻塞3、简单的对线程进行管理,并提供定时执行以及指定间隔循环执行等功能简单来说线程池就是系统为我们提供的管理线程的模块

2021-10-11 15:51:28 2095

原创 内存泄漏和内存溢出,OOM和ANR

内存泄漏(leak memory),是指对象不使用了,本该被回收,但是这个对象被其他正在使用的对象所持有,造成无法被回收的结果。内存泄漏最终导致内存溢出。补充:内存泄漏是导致内存溢出的原因之一。当一个应用产生的内存泄漏较多时,就导致这个应用的内存超过系统分配的内存,造成内存溢出而导致应用crash。内存溢出(out of memory),是指内存不够,当app占用内存超过虚拟机最大内存就会抛出OOM异常。补充:内存溢出对app影响很大,可能造成程序闪退,无响应等。因此要优先解决OOM。内存抖动,指短

2021-10-10 10:06:40 919

原创 flutter listview item宽度撑满的问题

flutter中使用listView,item的宽度是撑满的,这时候如果想要某个item宽度不充满,可以用center()包裹。

2021-09-29 17:47:46 1799

原创 flutter可滑动的Text文本,部分文字有点击事件的文本

文本可滑动,用singleChildScrollView包裹一个Text即可,下面是可滑动,并且有点击事件的文本示例。scrollDirection是滑动方向SingleChildScrollView( scrollDirection: Axis.vertical, child: Text.rich( TextSpan( child

2021-09-26 18:25:00 2514

原创 flutter 退出app

两种方法1,如果flutter作为module依赖,则原生也需要处理退出app,由原生来退出整个appSystemNavigator.pop()2,直接退出app,无需关注原生项目exit(0)

2021-09-26 18:21:50 2814

原创 安卓 walle 美团 瓦力 多渠道打包

加固后,下载加固包,无需签名,用wallePy工具可自动生成带签名的渠道包。。美团多渠道打包步骤app gradle文件中不需要写flavors渠道和dimension添加依赖 //多渠道打包walle implementation 'com.meituan.android.walle:library:1.1.7'工具类添加获取渠道方法/** * 获取渠道名 V2通过 walle 多渠道打包 * @param context

2021-08-04 14:59:49 418

原创 微信分享或登录 安卓横屏 活动被销毁

安卓在横屏的activity中使用微信分享或者登录,返回app后发现activity被销毁在manifest中,对该activity添加属性android:configChanges="orientation|keyboardHidden|screenSize"

2021-07-24 11:36:07 160

原创 flutter json解析 支持泛型 T

加上下面这一行即可支持泛型,fromJson和toJson也需要小改genericArgumentFactories: trueimport 'package:json_annotation/json_annotation.dart';part 'base_bean.g.dart';///genericArgumentFactories以支持泛型@JsonSerializable(genericArgumentFactories: true)class BaseBean<T&g

2021-06-29 17:56:03 1631

原创 flutter 用json_serializable自动生成实体类

添加依赖dev_dependencies: flutter_test: sdk: flutter build_runner: ^2.0.4 json_serializable: ^4.1.3新增文件student_bean.dart ,student_bean.g.dart注意要写 part ' ';import 'package:json_annotation/json_annotation.dart';part 'student_bean.g.dar.

2021-06-23 15:39:26 789 2

原创 flutter retrofit集成

添加依赖dependencies: flutter: sdk: flutter #retrofit st--- retrofit: ^2.0.0 logger: ^1.0.0 #for logging purpose #retrofit end--- dio: ^4.0.0dev_dependencies: flutter_test: sdk: flutter #retrofit st--- retrofit_generator: ^2.0

2021-06-23 15:15:42 3864

原创 nestScrollView滑动到底部

方法1(用这个就行了): 注意要 通过handler更新//滑动到底部 Handler().post { nestedScrollView.fullScroll(NestedScrollView.FOCUS_DOWN) }方法2: public static void scrollToBottom(final View scroll, final View inner) { Handler mHandler = new Handler();

2021-05-15 15:29:31 666

原创 flutter dart 异步Stream 使用 定时任务

添加rxdart 依赖实现一个500ms后执行的任务1,没有返回事件Stream.fromFuture(Future.delayed( Duration(milliseconds: 500),)).listen( (event) { LogUtil.e("这里不会执行,因为没有监听到回调事件"); },).onDone(() { LogUtil.e("500ms后执行这里");});2、有返回事件Stream.fromFuture(Future...

2021-04-27 18:10:43 578

原创 建造者模式 Builder

data class TestBuilder(val name: String?, val sex: String?) { class Builder { private var sex: String? = null private var name: String? = null fun setName(txt: String): Builder { this.name = txt retur.

2021-03-16 11:43:05 67

原创 创建jks迁移标准 提示:JKS 密钥库使用专用格式。建议使用

JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore 解决办法在cmd中执行命令 keytool ****** ,如果提示不存在命令则cmd切换到jdk中bin目录下执行该命令 cd c: cd ProgramFiles ...等等,知道jdk目录下的bin目录然后执行提示中的命令注意,是从 keytool -importkeystore开始,到 pkcs12 结束。也就是双引号里面的内容...

2020-11-27 11:37:37 761

原创 用ActivityResultContracts代替onActivityResult

一.a跳转到b,a不传递参数给b,b返回带上参数给a1.1创建 ChooseAddressContract.ktimport android.app.Activityimport android.content.Contextimport android.content.Intentimport androidx.activity.result.contract.ActivityResultContractimport com.gh.forum.ui.activity.ChooseA.

2020-11-11 11:51:08 1610

原创 android 右滑关闭activity

https://github.com/anzewei/ParallaxBackLayout1.导入依赖compile 'com.github.anzewei:parallaxbacklayout:lastversion'2.APP 注册ParallaxHelperregisterActivityLifecycleCallbacks(ParallaxHelper.getInstance());3.在需要滑动关闭的页面增加ParallaxBack@ParallaxBack(.

2020-11-05 10:18:04 199

原创 android rxjava实现定时任务

private var mDisposable: Disposable? = null//在initVeiw中执行initLiveSocket就可以启动任务 //观看直播心跳 initialDelay:首次执行任务延迟多少 period:定时任务时间间隔 unit:时间单位 private fun initLiveSocket() { mDisposable = Observable.interval(5, 10, TimeUnit.SECONDS) ...

2020-08-21 10:46:25 1127

原创 android 正式包 从桌面启动 打开闪屏页

app打正式包每次从桌面点击图标都进入闪屏页,而不是还原到上次打开的页面。如果是idea直接编译就不会有这个问题解决方法,在启动页添加如下代码 @Override protected void onCreate(@Nullable Bundle savedInstanceState) { // if(!isTaskRoot()),判断该Activity是不是任务空间的源Activity // “非”也就是说是被系统重新实例化出来,如果你就放在launc

2020-08-04 11:21:57 214

原创 android10.0导致相册访问失败的问题 Android java.io.FileNotFoundException: open failed: EACCES (Permission denied

android10.0之后,因为使用了沙箱模式,导致图册,访问不到,图片空白最近在Android10 访问相册时一直报EACCES (Permission denied),java.io.FileNotFoundException: open failed: EACCES (Permission denied)at android.os.ParcelFileDescriptor.openInternal(ParcelFileDescriptor.java:315)...

2020-07-24 18:00:58 1273 1

原创 华为推送 的坑

1.注册华为开发者账号2.配置sha256证书密钥(必须的,否则不能获取到token),保存json文件到安卓项目3.在api管理里面打开push kit4.开通推送服务

2020-06-30 12:05:04 663

原创 android 免提状态通话状态

切换播放模式需要使用AudioManager.默认音频播放使用的是外放(扬声器)。AudioManager audioManager = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE); 切换到听筒audioManager.setMode(AudioManager.MODE_IN_CALL);audioManager.setSpeakerphoneOn(false);切换到外放免提//切换到外放前

2020-06-22 10:17:45 810 2

原创 string文件多语言,国际化

在baseActivity的oncreate()中执行以下代码private void initLanguage() { //多国语言对照表 https://blog.csdn.net/kingda008/article/details/7878331 String currentLanguage = Locale.getDefault().getLanguage(); ...

2020-05-26 16:32:49 253

原创 android和ios GoogleMap画导航线路图路径规划(Directions) 2

https://blog.csdn.net/jiankeufo/article/details/78466876?utm_source=blogxgwz1具体使用看另外一篇文章 《 google map路线规划》本文适合【AndroidiOS】下的google地图开发转自:HTTP://blog.csdn.NET/ mad1989 /条/信息/ 97346671.0 Googl...

2020-05-26 16:32:38 363

原创 解决textview文字没有铺满一行就换行

package com.openfood.rider.view;import android.content.Context;import android.graphics.Canvas;import android.graphics.Paint;import android.text.Layout;import android.text.StaticLayout;import a...

2020-05-26 16:32:10 945

原创 android集成fcm消息推送

1.在firebase创建应用,要用到sha-1,如何得到app的sha-1,看上一篇文章。2.添加依赖 2.1在app的build中最上面添加 apply plugin: 'com.google.gms.google-services' 2.2添加依赖 //fcm消息通知 implementation 'com.google.firebase:...

2020-05-26 16:32:00 299

原创 对数组去重,用hashSet将数组重复值改变

hashSet不能保存相同的值,可以用于去重。如果有个数组有多个重复的值,要将重复值变不一样可以这样做。==============================注意=================如果使用hashSet,添加进来的数据顺序是随机的。。随机的,也就是不和arrayList数组的顺序一致。。。如果想要保持顺序,将hashSet改为LinkedHashSet...

2020-05-26 16:31:51 220

原创 android 软件更新 app安装 更新

app更新有以下几点需要注意1. 安卓7.0以上需要动态申请文件读写权限2.安卓8.0以上安装第三方应用需要手动打开设置给予权限。3.manifest需要注册下载服务service4.manifest需要配置provider,否则文件读取失败---------------------------------------------------------------------...

2020-05-26 16:31:37 297

原创 图片选择器加裁剪混合使用 base64

图片选择器Album不带裁剪功能,所以使用Ucrop裁剪框架。Album库的导入和初始化看另一篇文字。下面是Ucrop的初始化。1.看是否已设置为本地库(否则解析包出错),也就是在build文件中最外层(和dependencies同级)添加代码:allprojects { repositories { jcenter() mave...

2020-05-26 16:31:28 116

原创 圆角imageivew

自定义一个圆角imageviewpackage com.openfood.rider.view;import android.content.Context;import android.graphics.Bitmap;import android.graphics.Bitmap.Config;import android.graphics.Canvas;import andro...

2020-05-26 16:31:19 85

原创 解决linechart(MPAandroid)在scrollview布局下的滑动冲突

解决这个组件在scrollview布局下的滑动冲突。如果手指在linechart,则让linechart响应滑动时间。1.重写linechart,新建TouchLineChart.javaimport android.content.Context;import android.util.AttributeSet;import android.view.MotionEve...

2020-05-26 16:31:09 422

jd-guiwin.zip

安卓反编译工具,配合dex2jar查看反编译后的代码。jd-gui是用于查看源码的ui工具

2019-10-22

dex2jar0314.zip

android反编译工具

2019-10-22

空空如也

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

TA关注的人

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