
Android开发
文章平均质量分 61
北极熊的微笑
跌倒了,爬起来,笑一笑,继续前进!
展开
-
Android中Apk签名文件不一致问题解决方案
解决安装apk签名文件不一致问题。原创 2022-03-09 15:45:29 · 7232 阅读 · 0 评论 -
Android中颜色透明度表格(记录)
00是完全透明(百分百透明),FF就是完全不透明透明度 16进制表示 100 % 00 99 % 03 98 % 05 97 % 07 96 % 0A 95 % 0D 94 % 0F 93 % 12 92 % 14 91 % 17 90 % 1A 89 % 1C 88 % 1E 87 % 21 86原创 2020-09-14 11:49:02 · 355 阅读 · 0 评论 -
Android中Glide加载Https图片失败的解决方案(记录)
1、在Application中添加如下方法:public static void handleSSLHandshake() { try { TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() { public X509Certificate[] getAcceptedIssuers() { return new X509Certi原创 2020-09-04 13:48:45 · 1523 阅读 · 0 评论 -
关于OKHttp的Https的认证问题(全部信任)
1,新TrustAllcert类实现X509TrustManager接口:public static class TrustAllCerts implements X509TrustManager { @Override public void checkClientTrusted(X509Certificate[] chain, String authType) {} @Override public void checkServerTrusted(X509Cert原创 2020-09-03 11:32:11 · 487 阅读 · 0 评论 -
Android中禁用分屏功能(记录)
在清单文件AndroidManifest.xml中的application中添加如下代码:android:resizeableActivity="false"原创 2020-06-05 17:31:30 · 1073 阅读 · 1 评论 -
Android中SQLite数据库的使用(总结)
本篇主要记录如何使用Android自带的SQLiteOpenHelper帮助类来进行SQLite数据的CRUD操作。一、自定义MyDatabaseHelper类,继承自SQLiteOpenHelper抽象类。/** * 数据库帮助类 */public class MyDatabaseHelper extends SQLiteOpenHelper { private Con...原创 2020-03-19 11:33:54 · 1701 阅读 · 0 评论 -
App点击Home键后,再次点击APP图标,APP重启回不到点击home键前的那个界面
在启动页的onCreate()方法里加上如下判断:// 避免从桌面启动程序后,会重新实例化入口类的activityif (!this.isTaskRoot()) { // 判断当前activity是不是所在任务栈的根 Intent intent = getIntent(); if (intent != null) { String action =...原创 2020-01-10 17:21:08 · 509 阅读 · 0 评论 -
Android P 9.0系统APP安装闪退问题
问题描述:在Android9.0上APP安装成功后,运行直接闪退。报错如下:java.lang.SecurityException: Call from user 0 as user 1 without permission INTERACT_ACROSS_USERS or INTERACT_ACROSS_USERS_FULL not allowed.解决方案:1、在清单文件...原创 2019-12-31 14:41:49 · 1669 阅读 · 0 评论 -
Android中获取当前APP版本号(记录)
try { PackageManager pm = mContext.getPackageManager(); PackageInfo pi = pm.getPackageInfo(mContext.getPackageName(), 0); Toast.makeText(mContext, "版本号:" + pi.versionName, Toast.LENGTH_SH...原创 2019-12-18 18:10:55 · 595 阅读 · 0 评论 -
Android中RecyclerView加载不同子布局(记录)
经常看到新闻之类的列表里有好几种不同的布局样式,很简单,动手写了一下,做个记录。效果图如下:主要思路:就是通过判断接收的子项的布局样式的不同,来加载不同的布局。相应的Adapter适配器的代码如下:public class MyRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder...原创 2019-12-18 17:14:56 · 1594 阅读 · 0 评论 -
AndroidStudio开发工具的强制降级处理方案(记录)
问题描述创建项目创建新项目的时候,Android Studio强制必须使用androidx 的库,倒不是说androidx不好,问题是目前自用的一大堆库还停留在AppCompat库的基础上,强行换各种包找不到报错根本没办法用,其次手头新项目也急,没那个空把自用库做一边升级,还是得先降级到AppCompat库。解决方案1.项目设置修改创建项目后发现果然,API等级被升级到29...原创 2019-11-27 13:05:22 · 2946 阅读 · 0 评论 -
开发中常用的接口以及UI等信息的开源管理平台(记录)
一、接口管理免费开源接口管理平台:http://api.crap.cn/相对应的接口调试工具:CrapApi其他调试工具:PostMan等等。二、UI设计管理免费的UI设计协作平台:https://lanhuapp.com/...原创 2019-11-15 08:37:09 · 449 阅读 · 0 评论 -
Android开发之全局变量的管理(记录)
在Android中,Application类是用来维护应用程序全局变量的。每次,应用程序启动,都会自动创建一个Application类的对象并且唯一。所以,可以通过继承Application类的自定义类MyApplication类进行全局变量管理。1、MyApplication类的代码如下:public class MyApplication extends Applica...原创 2019-11-14 08:03:31 · 805 阅读 · 0 评论 -
AndroidX的迁移问题(记录)
一、依赖库的变化常用依赖库对比如下:Old build artifact AndroidX build artifact com.android.support:appcompat-v7:28.0.2 androidx.appcompat:appcompat:1.0.0 com.android.support:design:28.0.2 com.google.an...原创 2019-11-06 07:18:43 · 2318 阅读 · 0 评论 -
Android中获取全局Context上下文(记录)
说明:每当应用程序启动的时候,系统都会自动将Application类进行初始化。1、创建一个MyApplication类继承Application。/** * 全局状态信息类 */public class MyApplication extends Application { private static Context mContext; @Override...原创 2019-11-01 11:42:04 · 841 阅读 · 0 评论 -
Android中Permission用户权限管理类
/** * 权限管理 */public class PermissionManager { public static final int PERMISSION_GRANTED = PackageManager.PERMISSION_GRANTED; public static final String CALL_PHONE = Manifest.permission....原创 2019-10-31 18:01:13 · 453 阅读 · 0 评论 -
Android中如何监听Fragment的上滑和下滑操作(记录)
主要思路:通过对其父Activity的触摸事件的注册与取消注册来达到对该Fragment的手势监听。效果图如下:1、其父Activity主要代码如下:public interface MyTouchListener { /** onTouchEvent的实现 */ boolean onTouchEvent(MotionEvent event);}/**...原创 2019-10-22 09:54:13 · 2030 阅读 · 0 评论 -
Android开发中TextView中显示HTML时如何替换特殊字符
//小于号和大于号的替换urlStr = urlStr.replace("<", "&lt;");urlStr = urlStr.replace(">", "&gt;");urlStr = urlStr.replace(" ", "&nbsp;");//替换回车符Pattern CRLF = Patte原创 2018-07-17 14:32:10 · 1278 阅读 · 0 评论 -
AndroidStudio修改包名
一般修改包名是这样的(更改外层的名称): 第一步:选中包名右键 > Refactor > Rename,弹出警告,选择Rename package ,如下图所示: 第二步:修改名称,记得一定是小写,如下图所示:将wifistatus更改为wifi,点击Refactor执行 第三步:更改所有引用的路径名称:全选 > Do Refactor 看项目路径已...原创 2018-07-20 17:31:28 · 445 阅读 · 0 评论 -
Android开发中显示图片Glide使用详解(Google推荐)
一、简介Glide,一个被google所推荐的图片加载库,作者是bumptech。这个库被广泛运用在google的开源项目中,包括2014年的google I/O大会上发布的官方app。(PS:众所周知的简介就到此为止了)Glide 对于 Android SDK 的最低要求是 API level 10Glide滑行的意思,可以看出这个库的主旨就在于让图片加载变的流畅。现在被广泛使用,当...原创 2018-07-31 03:56:24 · 3809 阅读 · 1 评论 -
Android中ListView上拉刷新的功能实现(总结)
效果图如下:1、自定义一个LoadMoreListView继承自ListVIew,同时提供加载接口(原理就是通过对FooterView的控制实现上划加载的效果)代码如下:package com.crazyboy.glideshowimagedemo;import android.content.Context;import android.util.AttributeS...原创 2018-07-31 05:01:50 · 2007 阅读 · 0 评论 -
Android中使用onSaveInstanceState来进行临时数据的保存(总结)
根据Activity的生命周期来说,如果一个Activity不可见了,处于onStop()状态。如果此时,内存不足的话,系统会将该Activity销毁,下次返回的话,会重新创建,但是如果界面上有数据,比如用户名,密码之类的,数据就没有了。怎么办?我们可以使用onSaveInstanceState()回调方法来进行临时数据的保存,然后,在onCreate()里来获取保存后的数据。比如:保...原创 2018-08-09 21:47:45 · 2080 阅读 · 0 评论 -
Android中显示Html内容(总结)
效果图如下:首先,Android中显示Html内容,有3中方式:(目前我用到的有这3种)1、可以利用Android原生的Html.fromHtml(str, imageGetter, tagHandler)来进行显示。(不过,我这边用了,即使加了页面加载动画,还是觉得非常慢,有大量图片,会导致OOM;如果图片不多的话,可以考虑)2、利用第三方插件HtmlTextView。Git...原创 2018-08-01 17:34:37 · 17182 阅读 · 12 评论 -
Android中自定义标题栏的实现(总结)
在开发过程中,一个APP中的各个界面的标题栏一般都是一样的,有的还带有功能按钮。那么,如果每一个界面我们都把标题栏的布局写一遍,是不是感觉有点繁琐,怎么办呢?解决方案:自定义标题栏布局。1、自定义布局Java文件代码如下:package com.deepreality.corporation_app.CustomViews;import android.app.Activit...原创 2018-08-10 14:44:37 · 2624 阅读 · 0 评论 -
Android中Activity管理器的实现(总结)
使用Activity管理器的好处:1、方便管理,及时释放内存,防止OOM。2、可以跳转到自己想跳转的Activity。 /** * Activity的管理类 */public class ActivityManager { private static Stack<Activity> activityStack; private static...原创 2018-08-10 14:47:57 · 1507 阅读 · 0 评论 -
Android中刷新另一个页面的UI(总结)
了解到的大概有3种:1、静态变量。然后在另一个界面调用该静态变量的public界面刷新方法即可。public static MyFragment myFragment;2、广播。3、运用Activity的生命周期来进行页面刷新。可以先定义一个Boolean值Boolean up=false;//默认false不刷新Activity中onResume()方法,当页面在...原创 2018-08-07 12:31:44 · 2534 阅读 · 0 评论 -
Android中SoundPool提示音的使用(总结)
SoundPool一般用于系统提示音,比如:滴滴,Duang,Hello,酷狗之类的急促而且短暂的音效。直接上代码:package com.deepreality.soundpooldemo;import android.media.AudioManager;import android.media.SoundPool;import android.support.v7.app....原创 2018-08-07 16:49:30 · 1076 阅读 · 0 评论 -
Android中Surface+MediaPlayer实现简单播放器(总结)
这篇博客只是一个Surface+MediaPlayer简单使用方法的说明。至于其中自定义界面,功能增加之类的可以查看之前的博客:https://blog.youkuaiyun.com/lpCrazyBoy/article/details/79842906MediaPlayer相关方法详解1)获得MediaPlayer实例:可以直接new或者调用create方法创建:MediaPlayer...原创 2018-08-07 17:58:24 · 2237 阅读 · 0 评论 -
Android中使用Camera拍照(总结)
1.调用系统自带Carema我们只需下面一席话语,即可调用系统相机,相机拍照后会返回一个intent给onActivityResult。 intent的extra部分包含一个编码过的Bitmap~Intent it = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);startActivityForResult(it,Activity.DEFAU...转载 2018-08-07 18:51:34 · 1532 阅读 · 0 评论 -
Android中使用MediaRecord实现录音功能(总结)
实现代码:布局代码:activity_main.xml:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent...原创 2018-08-07 18:54:47 · 6472 阅读 · 0 评论 -
Android两次返回键退出APP(总结)
//退出时的时间private long mExitTime;//对返回键进行监听@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { ...原创 2018-08-03 14:27:41 · 1808 阅读 · 2 评论 -
Android开发中之手机定位(记录)
本篇博客主要记录一下如何进行手机定位到某一个城市之类的功能。当前,这里用到了百度地图的第三方地图解析API。百度地图开放平台地址:http://lbsyun.baidu.com/index.php?title=androidsdk/guide/key步骤如下:1、运用Android自带的定位功能,来获取到当前设备处于的经度和纬度值。2、通过百度地图的解析API,来获取到包含地址信息...原创 2018-08-13 16:52:44 · 5742 阅读 · 7 评论 -
AndroidStudio如何制作9-Patch图以及注意事项
利用AndroidStudio自带的功能制作就行了,图片->右键->create 9-patch file,其中要注意的是:1、将9-patch图保存到drawable目录下才管用。2、要将背景图片处理一下,缩放到足够小,它会自动伸缩。在上图中的黑色区域,鼠标左键点击拖动即可生成伸缩区域,如图显示的黑色线条,鼠标在哪个方向,哪个方向生成。效果图:...原创 2018-08-22 13:13:24 · 2720 阅读 · 0 评论 -
Android中如何设置RadioButton的图片大小
/** * 重置RadioButton的图片的大小 * @param drawableId * @param radioButton */private void resetRadioButtonImage(int drawableId, RadioButton radioButton) { //定义底部标签图片大小和位置 Drawable drawable_news ...原创 2018-08-22 14:07:33 · 2934 阅读 · 5 评论 -
Android:Date、String、Long三种日期类型之间的相互转换
date类型转换为String类型 // formatType格式为yyyy-MM-dd HH:mm:ss//yyyy年MM月dd日 HH时mm分ss秒 // data Date类型的时间 public static String dateToString(Date data, String formatType) { return new Simple...原创 2018-08-17 15:35:54 · 6815 阅读 · 1 评论 -
Android添加依赖出现This support library should not use a different version (26) than the compile(25)
最近项目中要用到RecycleView,所以就想项目中添加了com.android.support:recyclerview-v7的依赖包,可是却出现了This support library should not use a different version (26) than the compile(25).这个问题,后来查看了gradle文件才发现由于Android studio默认导入的...原创 2018-08-20 11:29:08 · 901 阅读 · 0 评论 -
Android中BottomSheetDialog的基本用法
这个是Android6.0之后有的,底部弹出对话框。主要用于:(我用到的)1、用户头像图片从相机拍照获取或者从图库获取的底部弹出对话框的设计实现。2、用于评论以及回复的底部弹出对话框的设计实现。(以上两种功能都一样,只是布局不同罢了)这里主要写一下第2种的实现步骤:需要引入依赖库:implementation 'com.android.support:design...原创 2018-08-20 13:22:57 · 1028 阅读 · 0 评论 -
Android中ListView以及GridView只显示一行的问题解决(总结)
主要就是为了解决ListView之类的嵌套显示问题。1、自定义GridView的代码如下:public class ButtonGridView extends GridView { public ButtonGridView(Context context) { super(context); } public ButtonGridView(...原创 2018-08-20 15:27:12 · 853 阅读 · 0 评论 -
Android中使用GridView实现批量按钮生成排列
之前是用RelativeLayout相对布局来实现的批量按钮的排列显示,感觉不是太方便了现在。现在可以用GridView来实现批量按钮的排列问题。效果图如下:(向要圆形按钮的话,查看之前的博客即可。)public class MainActivity extends AppCompatActivity { private Context mContext; pr...原创 2018-08-20 15:39:19 · 1415 阅读 · 2 评论 -
Date获取年月日
/** * 日期格式化 * @param date * @return */private String dateStringFormat(Date date) { calendar.setTime(date); int year = calendar.get(Calendar.YEAR); int month = calendar.get(Calendar.M...原创 2018-08-27 17:16:58 · 9793 阅读 · 0 评论