Android
文章平均质量分 76
记录基于Android Studio的一些程序与开发知识。
保温杯拖把风扇
Android开发工程师
展开
-
Android MVP架构模式
详解Android如何实现MVP架构原创 2022-12-10 11:46:35 · 4904 阅读 · 2 评论 -
Android调用JNI的实现方法
介绍Android如何调用JNI原创 2022-12-09 22:32:00 · 2418 阅读 · 0 评论 -
ADB安装方法及常用命令汇总
ADB安装方法及常用命令汇总。原创 2022-12-04 15:14:39 · 5387 阅读 · 0 评论 -
Android开发:基于Kotlin编写一个简易计算器
一文快速实现基于Android平台及Kotlin语言的账本编写,包括加减乘除等基础功能。原创 2022-05-14 15:10:54 · 4859 阅读 · 5 评论 -
Android开发:编程实现界面定时刷新
使用Handler机制实现界面定时刷新功能。原创 2022-04-19 15:58:13 · 2661 阅读 · 0 评论 -
Android Handler中post方法与send方法的区别及使用
读懂Android Handler中send方法与post方法的区别及各自的使用方法。原创 2022-04-19 11:57:07 · 5459 阅读 · 0 评论 -
Android开发:基于原生API获取位置信息、卫星信号个数及参与定位的卫星个数
基于Android平台原生API获取设备位置信息、卫星信号个数以及参与定位的卫星个数等信息。原创 2022-04-08 19:17:10 · 7396 阅读 · 4 评论 -
Android Fragment生命周期详解
目录概述Fragment的使用Fragment生命周期总览与Activity生命周期结合分析不将Fragment添加到返回栈中首次进入程序切换Fragment点击返回键将Fragment添加到返回栈中切换Fragment点击返回键后记概述随着移动设备的多样化,对移动设备不同屏幕的适配性是开发过程中必须考虑的问题。Android从3.0开始引入了Fragment,其优点包括可适配、可重用、多样化等,本文将重点放在对Fragment生命周期的学习上。Fragment的使用首先记录一下Fragment的使原创 2021-10-07 16:58:00 · 1052 阅读 · 0 评论 -
Android开发:ListView控件的使用
目录概述xml文件中声明控件绘制Item布局编写工具类编写适配器Adapter大功告成后记概述本文以之前提到过的账本程序中的记录展示页面为例,记录一下Android ListView的使用方法。xml文件中声明控件与其他控件一样,使用ListView首先需要在xml文件中对控件进行声明,具体代码如下:<ListView android:layout_width="match_parent" android:layout_height="match_parent原创 2021-06-11 10:46:44 · 709 阅读 · 4 评论 -
Android开发:基于Android Studio编写一个简单的账本
目录前言用户注册/登录新建资金记录查询当前用户的所有资金记录demo界面展示后记前言最近在写的程序涉及到了用户注册/登录、SQLite数据库操作。因此将编写的代码整理了一下,写了一个简易的账本demo。主要功能包括:用户注册/登录、用户新建资金记录(包括金额、时间、用户名)、所有资金记录展示,所有的数据存储都是使用SQLite数据库。目前功能比较粗糙,也欢迎大家一起讨论改进。用户注册/登录注册/登录界面的绘制可以看我之前的文章:Android开发:登录/注册界面的编写里面对界面的绘制进行了具体的原创 2021-06-02 22:09:56 · 6077 阅读 · 18 评论 -
Android开发:客户端实时获取数据库中的最新值并在界面显示
目录概述前期准备主要代码优化概述最近在写一个程序,需求是服务器端的程序会不断刷新数据库某字段的值,然后需要写一个客户端程序不断读取该字段并在界面上显示。在这里数据库使用MySQL,Android客户端与服务器端的数据交互使用Volley框架。前期准备Volley是Google官方推出的HTTP方法库,使用Volley框架需要在Android Studio中引入对应的包,具体可以参照我以前的文章:Android使用Volley框架进行数据传输主要代码整个的实现逻辑是用户点击“START”后,开始原创 2021-05-29 22:15:22 · 1679 阅读 · 4 评论 -
Android编程实现获取系统时间并显示
目录声明变量获取当前时间声明变量//用于获取系统时间private Date date;//设置时间显示格式final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");//用于在存储时间并显示private String time;获取当前时间//获取当前时间date = new Date(System.currentTimeMillis());time = sdf.format(date);————原创 2021-05-21 16:54:36 · 502 阅读 · 1 评论 -
Android Activity生命周期详解
目录概述七个方法Activity跳转时的调用按返回键时的调用一些特殊情况概述Activity的生命周期一直是Android客户端面试的常考热点之一,笔者也被问过好多次,包括具体可以重写哪七个方法、Activity跳转时调用哪些方法、顺序是什么样的、以及一些特殊的调用情况等,所以在这篇文章中总结一下。七个方法Activity跳转时的调用按返回键时的调用一些特殊情况...原创 2021-03-23 22:34:15 · 970 阅读 · 0 评论 -
Android平台实现图片传输到服务器并在服务器文件夹中重现(客户端程序+服务器端程序)
目录概述前期准备客户端程序服务器端程序后记二级目录三级目录概述最近因为项目要求,需要实现一个能将Android手机内的照片上传至服务器并在服务器的文件夹中重现的功能。以前编写的demo都是传输文本信息,没有涉及过文件以及图片的传输,这次正好也了解一下具体的实现方式。实现的基本思路是先将图片转换成字节流,然后再转换成String类型的数据。之后进行传输。传输到服务器后,再在服务器将数据重现为图片,最后存储在服务器内的文件夹。因为我也是刚接触图片传输这个功能,实现的是最简单的功能,因此,如果存在什么错误或原创 2020-12-17 09:56:27 · 916 阅读 · 0 评论 -
Android使用Volley框架进行数据传输
目录前期配置主要代码前期配置1.在“build.gradle”文件中导入包://导入Volley相关 implementation 'com.mcxiaoke.volley:library:1.0.19' implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'2.在“AndroidManifest”中添加访问网络权限:<uses-permission android:name="原创 2020-12-17 09:35:43 · 482 阅读 · 0 评论 -
Android将图片转换为字节流,进一步转换为String类型的数据
通过编写一个子函数实现该功能,具体代码如下:/** * 将图片转换成字节流,并进一步转换成String类型的数据 */ public static String putImageToShare(Context mContext, ImageView imageView) { BitmapDrawable drawable = (BitmapDrawable) imageView.getDrawable(); Bitmap bitmap = dra原创 2020-12-17 09:11:04 · 1316 阅读 · 0 评论 -
Android实现调用手机摄像头进行拍照并存储为文件
目录声明权限拍照按钮触发事件`后记参考文章:声明权限首先应该在“AndroidManifest”文件中声明手机内存读写权限:<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>由于从Android 6.0开始,一些敏感权限原创 2020-12-17 09:00:26 · 1528 阅读 · 0 评论 -
Android编程实现基于WiFi直连的信息传输
代码如下:1.首先进行相关变量的声明:private ServerSocket serverSocket = null; private int ServerPort = 29898; private Socket socket = null; private OutputStream outputStream = null; private InputStream inputStream = null; private PrintWriter printWrit原创 2020-12-01 23:10:22 · 409 阅读 · 0 评论 -
Android编程实现修改设备WiFi名称
具体代码如下:public void ChangeDeviceName(final String NewDeviceName){ try { Log.d(TAG, "进入修改名字"); Method method = mManager.getClass().getMethod("setDeviceName", WifiP2pManager.Channel.class, String.class, Wif原创 2020-12-01 17:50:12 · 552 阅读 · 0 评论 -
Android使用XMPP框架实现即时聊天(IM)功能(Openfire + Smack)
目录概述前期准备客户端使用Smack权限配置、压缩包导入等客户端连接到服务器用户注册/登录功能离线消息接收接收/发送消息后记概述即时聊天功能是许多APP的刚需。QQ、微信等用的都是私有协议,但是个人开发者要短时间内从0到1编写一个即时聊天框架并不现实。现在有许多提供IM功能的框架或公开协议,比如蘑菇街、XMPP等。XMPP虽然存在一些问题,但是推出的早,因此帮助文档较多,对于新手或者时间上较紧迫的开发者来说,用XMPP实现IM功能是一个很好的选择。前期准备服务器端需要下载并配置Openfire,而客原创 2020-12-01 10:10:41 · 3766 阅读 · 2 评论 -
Android SQLite数据库增删改查实现代码及电脑查看SQLite数据库的方法
目录概述实例化SQLiteDatabase向表格中增加记录二级目录三级目录概述SQLite具有轻量级、独立、易于维护等优点,支持绝大部分SQL语法,是Android编程中用于数据存储的常用方式。本文列举了增删改查等常见操作。实例化SQLiteDatabase首先需要实例化一个SQLiteDatabase,然后再进行其他操作。实例化代码如下:private SQLiteDatabase mDbDialog;然后在主函数中令其指向特定的数据库;mDbDialog = openOrCreateDa原创 2020-11-30 20:29:09 · 352 阅读 · 0 评论 -
Android编程实现应用重启
可以单独编写一个子函数,之后作为接口调用。具体代码如下:public void ReLogin(Activity activity){ Intent intent = activity.getPackageManager() .getLaunchIntentForPackage(activity.getApplication().getPackageName()); PendingIntent restartIntent = Pending原创 2020-11-30 09:38:10 · 270 阅读 · 0 评论 -
Android开发:EditText软键盘弹出后整个页面布局上移的解决方法
这个问题是笔者在编写会话程序时遇到的比较尴尬的问题,解决方法也比较简单粗暴,就是在对应的Activity中添加如下代码:/*解决软键盘弹出后整体界面上移的问题*/getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);...原创 2020-07-30 20:53:11 · 2938 阅读 · 0 评论 -
Android使用Volley框架显示“Cleartext HTTP traffic to XXX not permitted”的解决方法
Volley是谷歌推出的一款用于网络操作的框架,对于通信频繁但数据量不大的网络操作来说还是挺好用的。但笔者在自己的手机上调试程序时发现,程序中与Volley相关的网络操作无法成功,logcat显示的是“Cleartext HTTP traffic to XXX not permitted”,查了很久发现原因是Android最新的几个版本中,出于安全考虑,默认禁止所有未加密的连接。解决方法如下:1、在AndroidManifest.xml文件中添加一行:android:usesCleartextTraf原创 2020-07-30 20:41:30 · 2900 阅读 · 1 评论 -
Android开发:一些实用的小技巧
当下,许多开发环境、编程软件都有一些快捷键及快速功能,了解这些功能将有助于我们更好地进行软件开发。自动导入包在使用Android Studio进行Android开发的过程中,常常需要根据实际情况导入相关的包,常用的方法有两种:(1)在代码出现红色下划线的地方按下快速修正键(同时按下"Alt"+“Enter”),可以实现快速修正功能;(2)开启Android Studio的“自动导入包”功能,具体步骤如下:1、同时按“ctrl”+“Alt”+“S”键进入“Settings”界面(也可以点击工具栏中的原创 2020-05-09 16:05:01 · 2183 阅读 · 1 评论 -
Android开发:登录/注册界面的编写
在实际开发中,几乎所有的APP都会涉及到用户注册/登录页面的制作,因此本文以Android Studio为开发环境,教大家编写一个登录界面。新建一个空项目(或Activity)1、打开Android Studio,点击“File”-“New”-“New Project”,创建一个项目。2、这个页面选择默认的空项目(Empty Activity)就行。3、在“Name”处输入项目名,设置...原创 2020-05-05 12:57:38 · 14726 阅读 · 2 评论