Android
文章平均质量分 59
我是giggleman
这个作者很懒,什么都没留下…
展开
-
Android 打印ANR日志
2、命令成功后可以看到进度条,加载完即可解压该zip包。zip包保存路径默认在项目的一级目录下anrlog.zip。4、搜索 VM TRACES AT LAST ANR ,查询最近一次anr或者时间最长的操作。1、adb命令:adb bugreport anrlog.zip。3、解压,并打开以bugreport开头的txt即可。原创 2023-02-24 14:20:41 · 417 阅读 · 1 评论 -
Android Studio-macOS如何独立运行Profile性能调试工具
独立运行Profile性能调试工具原创 2023-02-01 16:42:32 · 484 阅读 · 0 评论 -
Android-判断导航栏是否存在显示
遇到了计算导航栏的一些奇奇怪怪的bug,安卓机型太多了!原创 2023-01-28 16:56:17 · 1303 阅读 · 0 评论 -
Android-腾讯bugly符号表管理,上传so符号表、mapping符号表
腾讯Bugly符号表管理上传,so表,mapping表原创 2022-10-03 13:46:09 · 1835 阅读 · 0 评论 -
Android-如何修改打包app或模块名字?打包aar或apk修改名字并添加时间
android打包原创 2022-08-30 13:48:27 · 974 阅读 · 0 评论 -
Android安卓:适配mac电脑M1芯片arm架构android studio
Android官网下载 选择arm版本下载即可原创 2021-07-29 22:49:57 · 1501 阅读 · 1 评论 -
Android在mac端如何修改IDE中的快捷键?
android安卓mac端如何修改快捷键详细步骤Android技术生活交流更多其他页面-自定义View-实用功能合集:点击查看详细步骤点击左上角的 Android Studio打开 Preference找到 KeyMap选择 macOS点击Editor Action6.在右边的搜索栏里搜索你想要的键,找到后,右键点击,选择 Add Keyboard ShortcutAndroid技术生活交流微信 ----- qq群 ...原创 2021-06-01 13:59:03 · 103 阅读 · 0 评论 -
Android数据结构稀疏数组SparseArray详解
android安卓SparseArray详解用法SparseArray中文翻译介绍具有的属性介绍添加 put( )Android技术生活交流更多其他页面-自定义View-实用功能合集:点击查看SparseArray中文翻译介绍SparseArray将整数映射到Objects,与普通的Objects数组不同,其索引可以包含gaps。SparseArray有着比HashMap更高的内存效率,因为它避免了自动装箱键,并且其数据结构不依赖于每个映射的额外入口对象。注意:SparseArray会将其原创 2021-05-28 17:42:52 · 556 阅读 · 0 评论 -
Anderoid集成LiquidCore,独立运行服务监听并运行H5的JS方法
android安卓集成LiquidCore,独立运行监听javascript方法event功能简介如何使用LiquidCore SDKjava代码Android技术生活-QQ交流群:723592501更多其他页面-自定义View-实用功能合集:点击查看功能简介与h5交互的情况下,单独开个服务去监听js的事件,可以避免创建webview对象来与h5交互。比JsCore要好一点如何使用LiquidCore SDK官网阅读点击跳转我们不需要装npm 那个是node.js在原创 2021-05-28 09:25:33 · 482 阅读 · 0 评论 -
Android安卓获取实时屏幕亮度
调节屏幕亮度-获取屏幕亮度-监听亮度改变工具类功能简介java代码Android技术生活-QQ交流群:723592501更多其他页面-自定义View-实用功能合集:点击查看功能简介获取系统屏幕亮度,app屏幕亮度,手动调节亮度,监听亮度java代码import android.app.Activity;import android.content.Context;import android.database.ContentObserver;import android.原创 2021-05-25 10:12:34 · 2223 阅读 · 0 评论 -
android异步任务AsyncTask用法
原帖一、为什么需要异步任务? 开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的,并且这些操作必须在UI线程中执行。 单线程模型中始终要记住两条法则: 1). 不要阻塞UI线程 ; 2). 确保只在UI线程中访问Android UI控件。 当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把转载 2021-05-13 14:22:33 · 303 阅读 · 0 评论 -
华为查看不了log日志,如何打开查看logcat日志?pad输入()()2846579()()=怎么没用?华为怎么打开工程菜单?
手机->打开拨号界面->输入*#*#2846579#*#*平板pad分两种->有手机拨号的>打开拨号界面->输入*#*#2846579#*#*平板pad分两种->无手机拨号的>打开原生自带计算器(切换至横屏模式)->输入()()2846579()()=输入正确后,都会跳到工程菜单1.后台设置2.Log设置3.将AP日志勾选4.点击关闭 即完成...原创 2021-05-12 15:42:04 · 1620 阅读 · 0 评论 -
android安卓-canvas绘制双缓冲
原帖 Android 绘图时实现双缓冲 一、双缓冲技术原理: 在内存中创建一片内存区域,把将要绘制的图片预先绘制到内存中,在绘制显示的时候直接获取缓冲区的图片进行绘制。更具体一点来说:先通过setBitmap方法将要绘制的所有的图形绘制到一个Bitmap上也就是先在内存空间完成,然后再来调用drawBitmap方法绘制出这个Bitmap,显示在屏幕上。二、双缓冲技术出现的缘由 当一个动画争先显示时,程序又在改变它,前面的画面还没显示完,程序又要求重新绘制,这样屏幕就会不停转载 2021-05-10 11:47:51 · 825 阅读 · 0 评论 -
Circular dependency between the following tasks.
问题描述:Circular dependency between the following tasks::app:bundleDebugClasses— :app:compileDebugJavaWithJavac— :CustomModule:bundleLibCompileToJarDebug— :CustomModule:compileDebugJavaWithJavac— :app:bundleDebugClasses (*)(*) - details omitted (list原创 2021-05-07 10:49:23 · 9714 阅读 · 3 评论 -
android安卓-Volatile与Synchronized区别
原帖前言对Android开发者来说,相信对并发编程知识的掌握是非常薄弱的,一直是个人进阶的软肋之一。对于并发实践经验缺乏的开发者来说,文绉绉的技术书籍和博客,会比较羞涩难懂。从本文开始,尝试着逐个攻破并发编程的基础知识点。由于无知与惰性,让我们感觉摸到了技术的天花板!面试10问本文结合个人实际面试经验和最近学习归纳总结而出,欢迎各位大佬点赞支持。通过面试10问,让大家掌握单例模式的双重检查模式和静态内部类单例模式,并了解其中原理。从原理进而引出本文的重点:volatile和synchronize转载 2021-05-06 09:24:07 · 349 阅读 · 0 评论 -
android No such instance field
查看app下的build.gradle,是否设置了minifyEnabled true将其改为 false 即可。原创 2021-04-29 09:45:22 · 768 阅读 · 0 评论 -
android安卓JVM是如何保证内部静态类的线程安全?
原帖//基于类初始化的线程安全的单例class SingleTon4{ private SingleTon4(){} private static class InnerClass{ private static SingleTon4 instance= new SingleTon4(); } public static SingleTon4 getInstance(){//如果没有到这里,那么不会加载上面的内部类 return InnerClass.instance; /转载 2021-04-28 17:55:20 · 238 阅读 · 0 评论 -
Android单例模式-饿汉模式-DCL模式-内部静态类-双重检查锁定模式-懒汉模式
安卓单例模式懒汉模式饿汉模式DCL模式DCL + Volatile内部静态类懒汉模式/** * 懒汉模式 * 缺点:由于未加锁,线程不安全。在多线程并发请求的情况下,可能会同时创建多个对象实例 */public class SluggardSingleton { private static SluggardSingleton mInstance= new SluggardSingleton(); private SluggardSingleton(){ Lo原创 2021-04-28 17:37:23 · 192 阅读 · 0 评论 -
android安卓SurfaceView与view的区别是什么?
原贴: link原贴: linksurfaceView和View最本质的区别在于:surfaceView是在一个新起的单独线程中可以重新绘制画面,而View必须在UI的主线程中更新画面。那么在UI的主线程中更新画面 可能会引发问题,比如你更新画面的时间过长,那么你的主UI线程会被你正在画的函数阻塞。那么将无法响应按键,触屏等消息。当使用surfaceView 由于是在新的线程中更新画面所以不会阻塞你的UI主线程。但这也带来了另外一个问题,就是事件同步。比如你触屏了一下,你需要surfaceView中转载 2021-04-28 14:21:01 · 1350 阅读 · 0 评论 -
login登录注册页面-页面布局系列
简单的实现登录注册页面功能简介实现步骤java代码完整代码ZIP:下载更多其他页面-自定义View-实用功能合集:点击查看功能简介简单的实现登录注册页面实现步骤1.创建登录页面,注册页面,登陆成功后的页面。2.没有账号进行注册,将注册的账号储存起来key-账号,value-密码。3.登陆时,判断输入的账号密码是否与储存的一致java代码public class DeviceSpeakerChangeUtil { /** * 简介:设备语音切换-蓝牙-外原创 2021-04-27 11:33:56 · 1219 阅读 · 3 评论 -
android安卓集成接入微信sdk登陆,wechat集成详细步骤-实用功能系列
接入微信登录wechat功能简介实现步骤java代码完整代码ZIP:下载更多其他页面-自定义View-实用功能合集:点击查看相关文章信息:微信开放文档官网: 打开官网微信开放平台注册账号并注册应用: 打开官网需导入的SDK:implementation 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+'功能简介使得APP可以使用微信进行登录,国内市场上常见的app几乎都接入了腾讯微信第三方登录功能实现步骤1.原创 2021-04-26 15:41:43 · 4669 阅读 · 0 评论 -
android安卓获取应用签名apk-实用功能系列
获取apk签名工具: 点击下载更多其他页面-自定义View-实用功能合集:点击查看原创 2021-04-26 11:03:38 · 164 阅读 · 0 评论 -
android安卓切换音频声道-耳机-外放-蓝牙-实用功能系列
切换音频声道听筒-蓝牙耳机-外放功能简介Gif演示实现步骤java代码完整代码ZIP:下载更多其他页面-自定义View-实用功能合集:点击查看功能简介实现切换音频通道,蓝牙,外放,耳机Gif演示实现步骤1.在AndroidManifest.xml里添加想要获取的权限2.调用ActivityCompat.checkSelfPermission检查是否app已经获取到权限,已经获取到的话返回0,就不用在获取了,否则前去获取3.调用ActivityCompat.requestPe原创 2021-04-23 17:51:53 · 3495 阅读 · 1 评论 -
动态获取麦克风照相机权限-实用功能系列
动态获取麦克风照相机权限功能简介Gif演示实现步骤java代码android安卓开发集合-自定义View-页面布局-实用功能:点击查看功能简介获取单个权限,或同时获取多个权限这里展示 获取单个权限-储存,同时获取多个权限-麦克风和照相机Gif演示实现步骤1.在AndroidManifest.xml里添加想要获取的权限2.调用ActivityCompat.checkSelfPermission检查是否app已经获取到权限,已经获取到的话返回0,就不用在获取了,否则前去获取3.原创 2021-04-23 13:30:00 · 953 阅读 · 0 评论 -
java.lang.RuntimeException: A TaskDescription‘s primary color should be opaque
报错描述:原因分析:解决方案:报错描述:java.lang.RuntimeException: A TaskDescription's primary color should be opaque原因分析:这错误是由于styles.xml文件的主题颜色代码里设置了alpha透明值导致的。/** * Creates the TaskDescription to the specified values. * * @param label A label and descri.原创 2021-04-22 14:07:20 · 411 阅读 · 0 评论 -
android安卓-子线程计时器TimeCountThread-时分秒-实用功能系列
子线程计时器TimeCountThread-时分秒功能简介实现步骤java代码android安卓开发集合-自定义View-页面布局:点击查看功能简介开启子线程进行计时,可通过监听接口,获取总时间 和 时:分:秒相关文章讲解:String.format的使用方法?点击跳转实现步骤1.创建TimeCountThread.java并继承一个Thread2.通过循环线程,每次循环时睡眠当前子线程1秒,并将变量totalTime++,从而达到实现每秒计时的效果3.定义接口 TimeCou原创 2021-04-22 10:40:10 · 729 阅读 · 0 评论 -
android安卓-String.format()的详细用法
原帖: link问题在开发的时候一段字符串的中间某一部分是需要可变的 比如一个Textview需要显示”XXX用户来自 上海 年龄 21 性别 男”其中的 XXX 是用户名 每个用户也是不一样的地区 上海 为可变的string数据年龄 21 为可变的int数据性别 男 为可变的string数据遇到这种情况你们是怎么样解决的呢?把这段字符串保存在常量类里吗?不!我们应该遵循Google的开发模式<string name="user_info'> %1$s</span>转载 2021-04-22 10:39:13 · 1039 阅读 · 0 评论 -
android安卓-系列集合-自定义View-页面布局-实用功能
android安卓开发-系列集合自定义View组件系列页面布局系列自定义View组件系列自定义View组件介绍URL连接自由移动组件SimpleMovingView简单的自由移动view,可反馈点击事件,限制是否在屏幕内移动点击查看密码输入框PasswordView密码输入框,可自定义样式,数量,大小,高亮,光标,隐藏内容,自动键盘,输入内容类型,等等,功能强大点击查看页面布局系列自定义View组件介绍URL连接自由移动组件Simpl原创 2021-04-22 09:47:26 · 899 阅读 · 0 评论 -
android安卓-view.layout()过程详解,为什么view.layout()刷新控件位置
原帖: link相比较onMeasure,layout过程要简单多了,正如layout的中文意思“布局”中表达的一样,layout的过程就是确定View在屏幕上显示的具体位置,在代码中就是设置其成员变量mLeft,mTop,mRight,mBottom的值,这几个值构成的矩形区域就是该View显示的位置,不过这里的具体位置都是相对与父视图的位置。与onMeasure过程类似,ViewGroup在onLayout函数中通过调用其children的layout函数来设置子视图相对与父视图中的位置,具转载 2021-04-21 22:21:09 · 1525 阅读 · 0 评论 -
android安卓View的onMeasure()方法见解
原帖:链接: link 在android开发中,很多人对自定义View是望而生畏,我也一样,但这又是向高级进阶的必经之路,主要是对View里面的很多方法不知道怎么理解,其中一个就是onMeasure()方法,网上有很多这样解释说明,可能是由于我的领悟力有限,一直没能搞明白,今天有点空,好好研究一下,并记录下来,也希望对大家有所帮助。转载 2021-04-21 11:02:08 · 386 阅读 · 0 评论 -
欢迎页导航页SplashActivity-仿ClassIn-页面布局系列
Splash Activity 欢迎页-仿ClassIn完整代码:Github项目可自行下载点击跳转SplashTwoActivity.javaDotPointerView.java带圆点指示器可以浏览这篇文章点击跳转带条形指示器可以浏览这篇文章点击跳转实现步骤:1.使用ViewPager实现左右翻页layout2.自定义绘制组件DotPointerView,通过监听ViewPager.OnPageChangeListener刷新绘制圆点指示器3.滑动至第三页时,显示按钮,并为按钮添加原创 2021-04-14 14:06:28 · 285 阅读 · 0 评论 -
欢迎页导航页SplashActivity-条形进度条指示器-页面布局系列
Splash Activity 欢迎页,带条形进度条指示器完整代码:Github项目可自行下载点击跳转SplashZeroActivity.javaRectanglePointerView.java带圆点指示器可以浏览这篇文章点击跳转实现步骤:1.使用ViewPager实现左右翻页layout2.自定义绘制组件RectanglePointerView,通过监听ViewPager.OnPageChangeListener刷新绘制条形指示器1.ViewPager.OnPageChan原创 2021-04-14 13:48:43 · 227 阅读 · 0 评论 -
Android安卓开发-欢迎页导航页SplashActivity-带圆点指示器-页面布局系列
Splash Activity 欢迎页,带圆点指示器原创 2021-04-14 13:37:56 · 281 阅读 · 0 评论 -
android安卓mvp设计
原贴: link转载 2021-03-31 14:10:04 · 79 阅读 · 0 评论 -
Flutter.createView找不到方法?
原帖: link上文在介绍Android原生页面跳转Flutter页面时提到了两种方案:FlutterView和FlutterFragment,我们来分别看一下现在应该如何实现。首先是通过FlutterView引入Flutter页面,以前我们是通过io.flutter.facade包中Flutter类的createView()方法创建出一个FlutterView,然后添加到Activity的布局中,但是由于io.flutter.facade包的废弃,该方法已经无法使用。官方的文档有说明目前不提供在Vie原创 2021-03-30 10:11:31 · 1548 阅读 · 4 评论 -
如何将flutter集成到andriod安卓?
原帖: link本文主要解决3个问题:集成Flutter到Android项目,可以打开Flutter的默认页面可以跳转到Flutter的指定页面可以将Flutter的指定组件嵌入到原生页面,并传递参数1.集成Flutter到Android这里,我们以Flutter Module创建一个Flutter工程(flutter),然后run起来,就可以在.android/Flutter/build/outouts/aar文件夹下面得到这个aar这里之所以以Flutter Modu转载 2021-03-30 09:46:25 · 494 阅读 · 0 评论 -
如何将flutter页面嵌入android安卓?
原文: link提示:考虑使用abiFilters Android Gradle插件API来限制APK中支持的架构。这样做可以避免丢失libflutter.so运行时崩溃android { //... defaultConfig { ndk { // Filter for architectures supported by Flutter. abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86_64' }转载 2021-03-29 11:56:16 · 755 阅读 · 0 评论 -
Android Fragment如何使用?Fragment详解
原帖 链接: link 转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37970961自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,如何静态和动态的使用Fragment,Fragment回退转载 2021-03-29 09:54:36 · 254 阅读 · 0 评论 -
android安卓添加flutterFragment如何与flutter进行通信?
添加flutterFragment可以看官方文章,按照官网的的代码复制就可以用了。链接: https://flutter.cn/docs/development/add-to-app/android/add-flutter-fragment?tab=forward-activity-calls-java-tab当我们有了flutterFragment实例后,创建个class继承FlutterEngine并实现FlutterEngineConfigurator即可。 flutterFrag原创 2021-03-26 14:39:26 · 474 阅读 · 0 评论 -
android安卓如何import flutter module?如何在现有安卓项目中导入flutter项目
记录一下这个大坑。现有安卓项目需要导入其他人写好的一个flutter项目。刚开始我是按照这个顺序-> file-> new -> “import module”始终不成功。查询资料也没什么有用的结果。应该这样操作! -> file-> new -> “new module” -> “import Flutter Module”...原创 2021-03-26 14:34:01 · 373 阅读 · 1 评论