安卓初学
Mr_Leixiansheng
冰冻三尺非一日之寒。
展开
-
Android 12 intent-filter添加android:exported后任然报错解决方法
3.打开AndroidManifest.xml,从中找到 涉及intent-filter过滤器且没有设置 android:exported 属性的 Activity/Service/Receiver,把它们复制到自己项目的AndroidManifest.xml文件中,并添加上android:exported 属性。所以,我们按一下步骤排查三方库哪些activity、service或receiver使用了intent-filter,但却未声明android:exported 属性。原创 2023-11-14 10:13:43 · 672 阅读 · 0 评论 -
手机cpu架构查看及armeabi、armeabi-v7a、arm64-v8a及x86等说明
win+R,输入cmd填下指令如下。原创 2023-10-11 16:36:28 · 5813 阅读 · 0 评论 -
新项目如何提交代码到已有仓库,并创建新分支
本地仓库与远程仓库关联,创建新分支并上传到新分支原创 2023-02-07 10:28:22 · 1088 阅读 · 0 评论 -
Kotlin
kotlin简介原创 2023-01-12 17:50:35 · 469 阅读 · 0 评论 -
Android studio/AS无法识别模拟器
as选择底部terminal定位到sdk中platform-tools文件夹所在位置,我的是D:\sdk\platform-tools>;然后来个adb connect ip(个模拟器ip如下)夜神模拟器:adb connect 127.0.0.1:62001逍遥安卓模拟器:adb connect 127.0.0.1:21503天天模拟器:adb connect 127.0.0.1:6555海马玩模拟器:adb connect 127.0.0.1:53001网...原创 2021-06-24 11:40:06 · 639 阅读 · 0 评论 -
启动页全面屏适配、状态栏和虚拟按钮控制详解
很多APP打开都会有启动界面,但是全面屏问世后就会有很多问题出现。我们这里采用更快更高效的启动方式通过them设置,通过介绍笔者在实际项目开发中遇到的问题和解决方法,让大家更深入了解them、全面屏适配、虚拟按钮与状态栏控制。当然,有小伙伴非要自己去定义xml页面作为启动。。。这篇文章你也可以作为储备技能拓展遇到问题问下:1、Them是什么东西,如何设置Them可以隐藏状态栏和虚...原创 2019-12-11 17:00:26 · 959 阅读 · 0 评论 -
Android 多种截屏方式介绍
做项目的时候遇到截图的功能要求(部分截图、截长图),感觉挺有意思的,所有下来查阅了下资料,学习了下原理。在此记录下,供大家参考效果图:原理:计算好图片的宽度与高度,通过Bitmap 于Canvas 绘制好即可,不同之处是获取宽高方式不同。关键代码如下:整个屏幕截屏(不包含状态栏) public Bitmap screenShot() { View v...原创 2019-12-11 14:02:14 · 3091 阅读 · 2 评论 -
CodeEditView 短信验证码框
原理:自定义布局,包含一个EditText 和多个 TextView ,EditText隐藏看不见,可以判断是否达到指定位数。通过for循环取值EditText中的字符,再new出新的TextView对象,并填入对应数值即可。核心代码入下:CodeEditViewpublic class CodeEditView extends LinearLayout impl...原创 2019-10-14 17:14:48 · 367 阅读 · 0 评论 -
service服务
通过bindService()得到的Service是和启动源(Activity)绑定在一起的,在Activity退出的时候需要调用unbindService()进行解绑定(停止)。调用bindService()时会调用到目标Service的onBind()函数,通过IBinder接口实例,返回一个ServiceConnection对象给启动源。然后启动源可以通过ServiceConnectio原创 2017-03-28 09:56:09 · 633 阅读 · 0 评论 -
Android 键盘处理事件
步骤:1、重写onKeyDown2、重写的 onKeyDown 中判断对应键值,实现处理、注意:return 为true是会屏蔽按键功能。为 false 实现功能(部分)package com.example.administrator.test3;import android.os.Bundle;import android.support.annotation.Null原创 2016-12-28 11:20:27 · 396 阅读 · 0 评论 -
Android接口回调机制
首先解决啥是回调:举个例子:某天,我打电话向你请教问题,当然是个难题,你一时想不出解决方法,我又不能拿着电话在那里傻等,于是我们约定:等你想出办法后打手机通知我,这样,我就挂掉电话办其它事情去了。过了XX分钟,我的手机响了,你兴高采烈的说问题已经搞定,应该如此这般处理。C不会自己调用b,C提供b的目的就是让S来调用它,而且C不得不提供。S并不知道C提供的b是什么,因此S会约定b原创 2017-10-16 14:02:40 · 307 阅读 · 0 评论 -
广播Broadcast收发步骤及对网络状态监听、开机广播、8.0无效解决
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/53583161步骤:1、新建自己的广播类继承BroadcastReceiver并重写onReceive(一旦广播接收到设定接收的信息就会启动onReceive)2、在Manifest中对广播注册声明(静态注册,此处就可以设置广播接收的信息)3、主程序中发送...原创 2016-12-12 15:18:09 · 880 阅读 · 0 评论 -
安卓常用方法和布局总结
总结1(1)标题栏和任务栏的隐藏和设置: 标题栏和任务栏的隐藏和设置主要有两种:在xml文件中进行配置在项目的清单文件AndroidManifest.xml中,找到需要全屏或设置成无标题栏的Activity,在该Activity进行如下配置即可。实现全屏效果:Android:theme="@android:style/Theme.NoTitl原创 2017-08-07 10:47:57 · 584 阅读 · 0 评论 -
service汇总(service模拟后台下载、service刷新UI、service与Activity生命周期关系、service和活动间的通信)
内容:详细讲解service一、模拟后台下载(所有后台运行情况都相似)二、service刷新活动UI三、service和活动间的通信()四、service和活动生命周期关系一、模拟后台下载(所有后台运行情况都相似)二、service刷新活动UI步骤:1、新建两个活动,在第二个活动处开启service2、service中启动下载,并不停原创 2017-05-03 10:33:26 · 727 阅读 · 0 评论 -
Dialogs对话框集合
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/64922460种类:1、确定对话框(常规)2、单选对话框(builder.setSingleChoiceItems())3、多选对话框(builder.setMultiChoiceItems())4、列表对话框(builder.setItems...原创 2017-03-22 17:35:34 · 429 阅读 · 0 评论 -
AutoCompleteTextView(单次)、MultiAutoCompleteTextView(多次)搜索自动补全、SearchView自动搜索
步骤:1、布局中加入AutoCompleteTextView控件,设置好参数(android:completionThreshold是设置从第几开始匹配,默认为2)2、活动中1)找到控件2)设置适配器(同ListView)3) 设置补全内容(适配器要用)4)控件绑定适配器代码如下:原创 2017-03-02 10:09:41 · 1045 阅读 · 1 评论 -
网络请求图片及缓存处理
步骤:1、设置 请求网址(path)2、构造URL对象3、设置属性(请求方式、请求超时、读取超时)4、发送请求5、判读请求是否成功(进行文件读取、显示)部分代码如下package com.example.leixiansheng.internet;import android.graphics.Bitmap;import android.graphics.Bitm原创 2017-01-10 16:51:42 · 925 阅读 · 0 评论 -
MediaPlayer播放音乐(本地/在线),java.lang.IllegalStateException报错处理
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/53642166步骤:1、布局文件设置播放、暂停、停止3个按钮2、主程序中新建MedioPlayer对象,在按键监听中实现音乐的播放、暂停、停止3、声明权限注意事项:1、一定要声明权限2、在开始播放前必须要先prepare();否则会出现(...原创 2016-12-14 17:09:52 · 1338 阅读 · 1 评论 -
Intent 实现活动之间的跳转
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/53558324步骤:1、新建要跳转的活动和布局文件2、在AndroidManifest中实现注册3、要跳转的活动中实现跳转新建的活动和布局package com.example.administrator.intent;import and...原创 2016-12-10 14:39:36 · 3961 阅读 · 0 评论 -
多类带数据传送的Intent实现方法
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/53558424步骤:只在跳转中加了一个 intent.putExtra("data_key",data);跳转后的活动接收 ,并转换成字符串类型Intent intent = getIntent();String data = intent.getStringExtra("data_key");跳转后的活动和布局package com.ex原创 2016-12-10 14:51:24 · 456 阅读 · 0 评论 -
带返回值的Intent
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/53558735与一般跳转的区别1、startActivityForResult(intent, 1);2、 @Override protected void onActivityResult(int requestCode, int result...原创 2016-12-10 15:24:36 · 691 阅读 · 0 评论 -
ProgressBar进度条
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/53559214package com.example.administrator.progressbar;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;im...原创 2016-12-10 16:16:18 · 501 阅读 · 0 评论 -
AlertDialog选择对话框
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/53559605区别:不用在xml定义,直接在活动中使用package com.example.administrator.alertdialog;import android.content.DialogInterface;import android.s...原创 2016-12-10 16:55:54 · 832 阅读 · 0 评论 -
一般APP的Welcome动画、动画循环(补间动画)
作用:一般进入APP都会播放一个小动画,可以在播放动画的同时处理数据的加载步骤:1、设置好动画布局,给布局一个ID,方便给此布局设置动画2、主程序实现动画和数据加载1)设置动画效果:选择动画类型、设置动画时间,重复次数····2)为要播放动画的布局或控件绑定动画3)设置动画监听代码如下:1、布局原创 2017-04-14 11:53:53 · 1133 阅读 · 1 评论 -
手机照相/录像、裁剪、从相册选择图片
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/53640918package com.example.administrator.takephoto;import android.app.ProgressDialog;import android.content.ContentUris;import a...原创 2016-12-14 15:55:38 · 651 阅读 · 0 评论 -
文件、文件路径(path)详解及文件夹下所有文件获取方法介绍
关于Android中几个常用文件路径的介绍我记忆力不是太好,总是记不清,那几个常用的文件路径的具体名字,所以就在此记录一下,也方便不太清楚的同学查阅。外部存储,内部存储的区别Internal storage:总是可用的这里的文件默认只能被我们的app所访问。当用户卸载app的时候,系统会把internal内该app相关的文件都清除干净。I原创 2018-01-29 11:22:38 · 5034 阅读 · 1 评论 -
ViewFlipper 模仿广告滚动(横向/竖向)展示栏
效果如下图:之前一看到滚动展示第一反应就是想到RecyclerView动态滚动,但是发现不常用的 ViewFlipper 解锁了新姿势,因为它也可以实现,而且更方便、更快捷,代码简单废话不多说,直接上代码步骤:1、在xml 中添加 ViewFlipper 控件,设置好其属性,其重要属性如下:android:autoStart: 设置自动加载下一个Viewandroid...原创 2019-09-04 14:39:45 · 431 阅读 · 0 评论 -
SwipeMenuLayout列表侧滑菜单
效果图如下:1、引用SwipeMenuLayout类,网上一搜一大堆2、布局中引用SwipeMenuLayout作为父类,其子类只能包含连个View或者ViewGroup(一个作为内容展示,另一个作为侧滑内容)代码如下:<?xml version="1.0" encoding="utf-8"?><com.leixiansheng.swipemenulayo...原创 2019-06-27 17:48:42 · 900 阅读 · 0 评论 -
内容提供者 ContentProvider、内容观察者ContentObserver
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/77193526作用:跨进程数据共享(使用现有的内容提供者)(获取联系人为例)步骤:1、设置好布局2、权限添加3、利用Cursor进行访问代码如下:<?xml version="1.0" encoding="utf-8"?>...原创 2017-08-15 15:33:56 · 449 阅读 · 0 评论 -
style样式和them主题
效果如下:style:为什么要引入,例如我们在做布局时,有很多控件大小、宽度、颜色都一样,我们复制起来很爽,但是一要修改就特别痛苦,引入style后,要修改十分方便。并且style还可以被其他新style继承重写,做部分修改也是相当快捷如何设置syle:(以一个文本为例)1、在value资源文件中找到style.xml2、设置好所需的属性(注意只能手打,千万不要复制,否则报错,...原创 2020-05-20 23:53:13 · 275 阅读 · 0 评论 -
线程使用简介
1、耗时操作都需要使用到线程。2、开启线程的活动结束后线程未被关闭的话依旧在运行1)线程的常规操作代码如下: @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.lay...原创 2020-05-20 23:54:01 · 217 阅读 · 0 评论 -
多种数据存储详解(SharedPreferences、文件存储、网络存储、数据库、ContentProvider)获取剩余SD卡大小
一般数据存储包含以下五种:SharedPreferences、File内部存储、外部存储、网络存储、数据库效果图:代码如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" andr...原创 2020-05-20 23:54:32 · 282 阅读 · 0 评论 -
Android8.0 通知栏不显示、无横幅通知问题解决
不知不觉安卓都快9.0了(更新的可够快的),随着它的更新会出现许多新的问题和新的知识,所以我们要不停地学习以及“更新自己”追加2019-07-18 无横幅通知解决:最近发现大家反馈直接使用代码只能实现图二效果。然后楼主查阅了很多资料,然而都无法很好解决问题。之后研究了一番(诺基亚、华为、小米)小米和华为不能弹出,猜测原因可能是系统版本过高或厂家自定义了系统。因为IM接入时,消息通知问题也接入小...原创 2018-12-10 17:18:22 · 16086 阅读 · 10 评论 -
ScrollView常见问题(不能填满屏幕、内部layout_weight无效、进入自动下滑问题等)
不能填满屏幕、内部layout_weight无效-->android:fillViewport="true"这个布局意图是ScrollView内部有两个TextView,并且textView高度各占屏幕一半<?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schema...原创 2018-12-13 15:46:28 · 2349 阅读 · 1 评论 -
android 判断APP是否正在运行(前后台)
public class Foreground implements Application.ActivityLifecycleCallbacks { //单例 private static Foreground instance = new Foreground(); private static String TAG = Foreground.class.getSimpleNa...原创 2018-12-10 09:59:17 · 895 阅读 · 0 评论 -
为什么Fragment的onCreateView()处要removeView(view):避免多次调用
转载请注明出处:https://blog.csdn.net/mr_leixiansheng/article/details/79928881当第一次创建fragment的时候在onCreateView里面初始化view,下一次创建时不需要重新创建view时,希望使用已经创建的,所以要把view设为全局变量。view为空,表示是第一次,则初始化view。如果view不为空,则返回该view,需要...原创 2018-04-13 15:02:19 · 1635 阅读 · 3 评论 -
EventBus事件总线(个人理解监听回调,勿喷)
不详解,只介绍用法(包括主线程调用EventBus,子线程调用EventBus)步骤:1、需要接收事件处注册EventBus,如在Main中注册EventBus.getDefault().register(this);2、新建事件类3、需要发送事件发送发送事件,如SecondActivity中发送EventBus.getDefault().post(new SecondFB原创 2018-04-11 16:47:36 · 2350 阅读 · 1 评论 -
ListView头尾简介Header/Footer
内容:以前只会用ListView显示数据,最近才知道还有头尾一说。学会了头尾可以很方便的设置一些需要的布局步骤:1、布局添加ListView2、设置头尾的item原创 2018-03-13 09:19:32 · 871 阅读 · 0 评论 -
调用系统图片裁剪限定尺寸及7.0照相问题
(刚好gif超5M,没办法,剪切后成安慰画质。强迫症不上传图难受,搞了半天233)内容:手机系统的裁剪介绍,7.0调用相机崩溃解决代码如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android...原创 2018-07-19 11:21:03 · 675 阅读 · 0 评论 -
Intent传送对象
转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/53693616作用: 将对象传递到其他活动步骤:(与一般数据传送相似)区别:1、对象类需要实现Serializable接口2、接收时Person person = (Person) getIntent().getSerializableExtra("pe...原创 2016-12-16 15:16:20 · 382 阅读 · 0 评论