Is this you? As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.
Claim your profile
Articles by import android.graphics.Bitmap
Android Studio制作简单拼图小游戏
制作的这个小游戏我称之为速度真男人 这是一个九宫格3x3的还原图片的小游戏,当你运行程序时,计时器显示为0,当你点击第一个碎片开始计时,并且记录你的点击次数,相邻两个碎片可以交换,超过120秒游戏失败 1.class PuzzleView 代码如下: package com.example.gameapplication.Activity; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Paint; import android.os.Handler; import android.util.AttributeSet; import android.view.MotionEvent; import android.view.View; import android.widget.Toast; import java.util.ArrayList; import...
【错误记录】Android 应用漏洞修复处理 ( 截屏攻击漏洞 | Android 系统的截屏方式 | 通过 adb 命令截屏 |Android 截屏代码 | Android 设置禁止屏幕截屏代码 )
一、Android 截屏攻击 针对 Android 应用的 " 截屏攻击 " 是 恶意应用程序 或者 攻击者利用某些漏洞或技术手段 , 非法获取用户屏幕上的敏感信息 , 会导致用户 隐私泄漏 或者 造成安全风险 , 下面是常见的攻击方式 : 恶意应用程序 : 恶意应用程序 可能会 请求截屏权限 并将截屏的内容上传到远程服务器 , 尤其是账号密码输入界面的截屏 ; 操作系统漏洞利用 : 利用操作系统中的 漏洞 来执行 未授权的截屏操作 ; 屏幕录制 : 屏幕录制技术 也可能被用于窃取用户的屏幕信息 ; 二、Android 系统的截屏方式 在 Android 系统中 , 用户可以 通过 特定的键盘组合触发 截屏 ; 电源键 + 音量减小键 : Android 设备上触发截屏的组合键 , 系统会触发截屏操作 , 并将当前屏幕内容保存为图片文件 ; 手势操作: 滑动手势 : 在特定的 Android 设备上 , 可以使用手势或者滑动手势来触发截屏操作 ; 通知栏快捷方式: 通知栏菜单 : 有些 Android 设备 在通知栏中提供了截屏的快捷方式按钮 ,...
Android代码扫描手机内图片、视频、音频、文档等文件_android扫描并显示本地视频文件 csdn-CSDN博客
通过遍历手机文件的方式获取手机内存里全部的相关类型文件 由于Android对于权限把控的严格控制,在Android不同版本下需要对扫描逻辑以及权限做不同的处理。 (扫描完成你可能会在你的手机里发现很多有趣的图片或者其他东西~~~) 1、Android11以下设备 如果当前设备在Android11以下则仅需要申请WRITE_EXTERNAL_STORAGE,READ_EXTERNAL_STORAGE读写权限即可遍历访问全部文件夹。 2、Android11以上设备 Android11以上设备如果想访问手机内的全部文件夹则需要获取《全部文件访问权限》,这个权限无法通过弹窗的方式点击允许,需要跳转系统设置页面手动点开开关。 而在Android11及以上设备中,获取到全部文件访问权限并不代表你可以访问到全部文件,其中重要的包含android/data文件夹是无法正常访问的,这个时候我们还需要去申请data文件夹的访问权限如下图,包括这个文件夹下的文件遍历也与其他文件夹不同,下面可自行看代码。 1、权限申请 Manifest.xml静态申请 <uses-permission...
Android Webview 详解
一 简介 一个基于webkit引擎、展现web页面的控件 Android 4.4前:Android Webview在低版本 & 高版本采用了不同的webkit版本的内核 Android 4.4后:直接使用了Chrome内核 1.1 作用 在 Android 客户端上加载h5页面 在本地 与 h5页面实现交互 & 调用 其他:对 url 请求、页面加载、渲染、对话框 进行额外处理。 二 具体使用 Webview的使用主要包括:Webview类 及其 工具类(WebSettings类、WebViewClient类、WebChromeClient类) 2.1 Webview常用方法 2.1.1 WebView的状态 //激活WebView为活跃状态,能正常执行网页的响应 webView.onResume() ; //当页面被失去焦点被切换到后台不可见状态,需要执行onPause //通过onPause动作通知内核暂停所有的动作,比如DOM的解析、plugin的执行、JavaScript执行。 webView.onPause();...
Android--通过okhttp进行文件下载-CSDN博客
ifest: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="com.example.myapplication"> <!-- 互联网 --> <uses-permission android:name="android.permission.INTERNET" /> <!-- 存储卡 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <application android:allowBackup="true"...
关于将Pytorch模型部署到安卓移动端方法总结_pytorch android-CSDN博客
一、Android Studio环境配置 在Android Studio官网下载编译工具时,会出现无法下载的问题,可右键复制下载链接IDMan中进行下载。 安装过程中,需要将Android Virtual Device勾选,否则无法使用虚拟机。 安装启动后,会提示没有SDK,设置代码,直接选择cancel键。 完后,会有专门的SKD组件的安装,但是会有unavailable不可安装的情况出现,可通过创建项目后配置gradle后便可以安装了。 二、项目创建 软件安装后可能出现打不开的情况,可选择以管理员身份启动即可解决问题。 选择New Project 选择喜欢的界面样式即可。 使用语言、SDK根据自行需求进行选择就行。 Build configuration language建议选择Kotlin DSL(build.gradle.kts)[Recommended],否则会出现缺少gradle文件的情况。 创建完后会出现如下项目目录,并不会直接出现app的文件夹,需要手动配置gradle。...
Android手势识别GestureDetector和ScaleGestureDetector介绍与使用,以自定义一个可拖拽拉伸的ImageView为例_android gesturedetector-CSDN博客
一、GestureDetector GestureDetector主要用于检测单指手势,例如单击、长按、滑动等,不支持多指手势。 GestureDetector.SimpleOnGestureListener 是用于处理手势事件的辅助类,它包含了一系列回调方法,用于处理不同类型的单指手势事件。下面是对每个回调方法的简要介绍: onDown(MotionEvent e): 当用户按下(Down)手指时触发。这个方法返回 true 表示事件被消费了,false 表示未被消费。 onShowPress(MotionEvent e): 当用户按下并保持按压一段时间时触发。它表示按下动作已被识别,但尚未发生其它任何行为。 onSingleTapUp(MotionEvent e): 当用户轻击屏幕时触发。这个方法返回 true 表示事件被消费了,false 表示未被消费。 onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY):...
Android 开发 OCR Tesseract4Android图片文字识别 巨详细全部代码教程
效果图 流程:获取assets中的图片显示到页面,点击提取图片内的文字 一、OCR的含义 ocr是Optical Character Recognition(光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程 二、前提准备 官网奉上 注意: 1、 Android 4.1 (API 16) 或更高版本 2、JDK版本是Java 17 Java 17获取 下载后把项目的JKD 换成Java 17,如下图: 二、使用步骤详情 allprojects { repositories { ...
Uniapp 调用 原生安卓方法 使用cv 实现图片人脸识别 返回人脸位置和人脸数量
效果: 安卓方法代码 package com.piya; import static com.taobao.weex.WXEnvironment.getApplication; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.AsyncTask; import android.util.Log; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import org.opencv.android.OpenCVLoader; import org.opencv.core.Mat; import org.opencv.core.MatOfRect; import org.opencv.core.Rect; import org.opencv.objdetect.CascadeClassifier; import java.io.File;...
第三章 OpenGL ES 基础-基础-GLSL渲染纹理
第三章 OpenGL ES 基础-GLSL渲染纹理 第一章 OpenGL ES 基础-屏幕、纹理、顶点坐标 第二章 OpenGL ES 基础-GLSL语法简单总结 第三章 OpenGL ES 基础-GLSL渲染纹理 第四章 OpenGL ES 基础-位移、缩放、旋转原理 第五章 OpenGL ES 基础-透视投影矩阵与正交投影矩阵 第六章 OpenGL ES 基础-FBO、VBO理解与运用 第七章 OpenGL ES 基础-输入输出框架思维 vec4 :是四个分量的向量 mat4 :是4x4的浮点矩阵 渲染一张图片纹理写简单的shader 着色器分为两类:顶点着色器和片元着色器。 顶点着色器: 顶点着色器是一种处理输入顶点数据的着色器。它主要用于对每个顶点进行变换、投影和其他操作,以便将顶点从模型空间转换到裁剪空间。 顶点着色器执行的操作包括顶点位置变换、法线变换、颜色插值等。这些操作影响顶点的最终呈现方式。 片元着色器: 片元着色器(也称为像素着色器)负责计算片元(像素)的颜色值。它通常在顶点着色器处理后的几何形状上运行,用于确定像素的最终颜色。...
Android使用OpenGL和FreeType绘制文字-CSDN博客
Open GL主要是渲染图形的,有时候需要绘制文字,网上搜了一下,基本思路都是把文字转成位图,再使用Open GL纹理进行渲染。为了保证灵活性,我们把每个可能用到的字符都生成一个位图加载到纹理缓冲区,绘制字符串就逐字符去渲染对应的纹理。 1、集成FreeType 这里我们直接使用源码集成 下载FreeType源码 新建一个 Android Native Library 类型的 Module 或者点击 File -> Add C++ to Module,下载的FreeType源码解压后文件夹改成 freetype,然后把整个文件夹复制到 cpp 目录,在 cpp 目录下的 CMakeLists.txt 中添加 freetype: add_subdirectory(freetype) target_link_libraries(${CMAKE_PROJECT_NAME} # List libraries link to the target library android log freetype) 我建的Module名称是 jfreetype,实现的代码主要有: #include...
Android Studio中安装使用OpenCV
(1) https://zhuanlan.zhihu.com/p/666307982 (2) https://forum.opencv.org/t/opencv-4-8-0-cannot-resolve-symbol-opencv-engine-interface/14307/2 以下操作以张思民老师的《Android Studio应用程序设计》第3版中的例9-2为例进行操作。 (1) 进入OpenCV 官网:https://opencv.org/releases/ (2) 点击下方的Android开始下载 (3) 下载的OpenCV Android SDK为如图所示的压缩包 (4) 解压以上压缩包 (1) 新建一个空白项目 (2) 选择菜单File→New→Import Module (3) 在Import module from source对话框中选择OpenCV-android-sdk解压目录下的sdk 注意:是目录下的sdk而不是课本中sdk/java (4)稍等,运行项目出现以下报错 Plugin [id: ‘com.android.application’,...
Android 识别车牌信息-CSDN博客
打开我们心爱的Android Studio 项目结构 导入需要的资源 gradle implementation("com.github.HyperInspire:hyperlpr3-android-sdk:1.0.3") 我们在需要显示的主活动中写出来我们需要的程序 package com.example.lprec; import androidx.appcompat.app.AppCompatActivity; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Paint; import android.os.Build; import android.os.Bundle; import android.util.AndroidException; import android.util.Log; import android.widget.Button; import...
学习Android的第九天-CSDN博客
目录 StateListDrawable 范例 在 Android 中,Button 是用于创建一个按钮的组件,它具有正常状态和点击状态,并且继承自 TextView,因此可以使用 TextView 的属性以及一些其他的属性。 我们可以直接使用 XML 语法创建一个 Button <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:gravity="center"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="基本的按钮"/>...
Android App-targetSDKVersion28升级为30
为什么要修改targetSDKVersion? 1、应用开发平台要求(小米) 2、更好的兼容新版本的手机 有targetSDKVersion的位置: App的targetSDKVersion Module中的targetSDKVersion 引入的第三方库中有targetSDKVersion 修改了App和Module中的targetSDKVersion。 存储权限和存储位置问题 修改原因: Android10(targetSdkVersion29)以后加入了分区存储,针对App设置了外置私有存储空间,卸载App时会被删除,一定程度上解决了卸载App后外置内存仍占用问题。 Android10在获取存储权限上和之前版本有区别。 修改前: targetSDKVersion28 使用EasyPermission框架获取权限。(长时间不更新且不支持新版本Android) 视频、音频、文件存储在外置存储卡【Environment.getExternalStorageDirectory()】中。 修改后: targetSDKVersion30(Android 11)...
Android App开发实战项目之大头贴App功能实现(附源码和演示 简单易上手)
2023-12-19 5 简介: Android App开发实战项目之大头贴App功能实现(附源码和演示 简单易上手) 需要图片集和源码请点赞关注收藏后评论区留言~~~ 一、需求描述 大头贴App有两个特征,第一个是头要大,拿来一张照片后把人像区域裁剪出来,这样新图片里的人头才会比较大,第二个是在周围贴上装饰物,而且装饰物还能随时更换,这样一副人像可以变换出许多张大头贴(类似于现在拍照APP的环境变换功能) 二、功能分析 就人像剪裁功能而言,首先适当变换图片,把人像区域调整到屏幕中央,以便后续的裁剪操作,这些图片变换操作包括平移图片,旋转图片,水平反转图片等等。调整好人像位置以后,再来裁剪指定的人像区域,为了方便观察待裁剪区域和其余的图片区域,可将待裁剪区域高亮显示,同时暗色显示其余的图片区域。 就人像装饰功能而言,可用于装饰的物品包括一段文字,图片标志,相框背景等等。待装饰的人像图片由前一步的人像裁剪而来,装饰完成的人像图片需要支持保存到存储卡,从而实现大头贴的多次加工操作 下面简单介绍一下源码之间的关系 便于理解 1:PortraitActivity 采集头像的活动页面...
Android App开发之位图加工Bitmap中转换位图的像素色彩、裁剪内部区域、利用矩阵变换位图的讲解及实战(附源码和演示)
2023-12-19 5 简介: Android App开发之位图加工Bitmap中转换位图的像素色彩、裁剪内部区域、利用矩阵变换位图的讲解及实战(附源码和演示) 需要图片集和源码请点赞关注收藏后评论区留言~~~ 一、转换位图的像素色彩 给图片添加装饰物,只是在局部变换,如果想让图片一边保持轮廓一边改变色彩,就要深入图像的每个像素点,将这些像素点统统采取某种算法修改一番,在像素级别更改图像的话,要先把图片转换成位图对象再进一步加工位图对象,此时用到了位图工具Bitmap 主要方法如下 1:createBitmap 创建一个新位图 2:getPixels 获取位图对象所有点的像素数组 3:setPixels 设置位图对象所有点的像素数组 效果如下 可以将一张图片以多种色彩效果显示出来 代码如下 二、裁剪位图内部区域 createBitmap方法不仅可以创建空白位图,甚至能从原位图上截取一部分下来,裁剪出来的新位图来自原始位图,为了清楚的标记它在原位图的位置,可在图像视图上方覆盖新的图层,然后新图层先画一遍半透明的阴影,再画裁剪的位图部分,观察新老图层就可以看出裁剪的部位 效果如下...
Android App开发之自定义图形中位图与图形互转、剪裁图形内部区域、给图形添加部件的讲解及实战(附源码 简单易懂)
2023-12-19 4 简介: Android App开发之自定义图形中位图与图形互转、剪裁图形内部区域、给图形添加部件的讲解及实战(附源码 简单易懂) 需要图片和源码点赞关注收藏后评论区留言~~~ 一、位图与图形互转 Drawable用于在界面上展示图片,Bitmap用于加工图像数据,所以两者之间的转换非常有必要,位图图形BitmapDrawable正是二者之间的桥梁,图形对象与位图对象互相转换都需要它。 图形对象转换成位图对象有个前提,就是该图形原本便是位图格式,否则会转换失败 Drawable类有个setAlpha方法,可以设置图形的灰度值,下面是位图转换成图形对象后再调用setAlpha方法 效果如下 可见不同的灰度比例会有不同的效果 代码如下 二、剪裁图形内部区域 有时候为了美观,并不会显示整个图像,而是显示剪裁后的图像,比如QQ的圆形头像等等。圆形剪裁正是位图图形的拿手好戏,只要调用画笔工具的setShader方法,设置位图着色器即可 下面实现 椭圆 圆角矩形 圆形的剪裁效果 代码如下 三、给图形添加小部件...
【安卓app开发一】Android Studio + Bmob后端云实现注册&登录账号、密码找回、意见反馈及数据可视化
目录 前言 概览 本项目尚在开发阶段,主要针对的是安卓用户,通过查阅开发文档以及借鉴其他博主,由于是个人开发,可能会在逻辑会有所缺漏,欢迎各位安卓使用者与开发者进行内测并提交反馈意见给我,进行探讨顺便带带我; 本项目开发主题尚未决定,故本期向各位征集意见,可以通过安装该app进行注册登录,并写下您的想法提交反馈给我,后续将对收集的idea进行整合并决定方向,进行下一步的开发。 ps:保证无病毒与无信息泄露!!!欢迎大家参与 源代码: 链接:https://pan.baidu.com/s/10ECb54ne_9bubuCLWLB-Kw?pwd=v2sh 提取码:v2sh 安卓手机软件安装包: 链接:https://pan.baidu.com/s/1a2H5CKxKvtAjvnyOHvybUQ?pwd=np3w 提取码:np3w 本期主要用到两个工具,Android Studio和Bmob后端云(后续介绍),在安卓客户端注册登陆并提交想法,最终在Bmob后端云中实现数据可视化,主要实现效果如下图所示 Android Studio Bmob后端云 Android...
安卓将图片分割或者拉伸或者旋转到指定尺寸并保存到本地_胖团儿的博客-CSDN博客
直接上代码吧:你们要用的话可以按照想法改 package com.demo.util; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Matrix; import android.os.Environment; import android.util.Log; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; public class ImageProcessingUtils { // 将图片分割并拉伸到指定尺寸并保存到本地 public static void splitAndSaveImage(String imagePath, int splitCount, int targetWidth, int targetHeight) { // 1.
安卓Service拍照-CSDN博客
package com.example.phoneguard.service; import android.app.Service; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Matrix; import android.hardware.Camera; import android.os.Build; import android.os.Environment; import android.os.IBinder; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; import...
Android图像选择之 PictureSelector
一款针对Android平台下的图片选择器,支持从相册获取图片、视频、音频&拍照,支持裁剪(单图or多图裁剪)、压缩、主题自定义配置等功能,支持动态获取权限&适配Android 5.0+系统的开源图片选择框架。 废话不多。开干!! 添加依赖: //图片选择器 api 'io.github.lucksiege:pictureselector:v3.11.1' //图片压缩 api 'io.github.lucksiege:compress:v3.11.1' //图片裁剪 api 'io.github.lucksiege:ucrop:v3.11.1' //自定义相机 api 'io.github.lucksiege:camerax:v3.11.1' 实现工具类如下 PictureUtils : import android.Manifest; import android.content.Context; import android.content.Intent; import android.graphics.Bitmap; import...
Android studio 实现生成二维码和扫描二维码
效果图 build.gradle(:app)添加依赖 dependencies { implementation 'com.google.zxing:core:3.3.3' implementation 'com.journeyapps:zxing-android-embedded:3.6.0' implementation 'com.google.zxing:javase:3.0.0' } Manifests.xml <uses-permission android:name="android.permission.CAMERA" /> <uses-feature android:name="android.hardware.camera" /> <uses-feature android:name="android.hardware.camera.autofocus" /> activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"...
图片的编码存储与解码输出(基于Android将图片转Base64编码后再次解码会导致图片失真的解决办法)_base64图片解码-CSDN博客
Android将经Bsae64编码后的图片存储到MySQL,并解码输出查看(问题:图片失真) 链接:https://pan.baidu.com/s/1hvVupGcCf1f41fizF08SNg?pwd=9988 提取码:9988 部分源码: package com.example.testandroidmysqlphplogin; import androidx.appcompat.app.AppCompatActivity; import android.annotation.SuppressLint; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import android.os.Message; import android.text.TextUtils; import android.text.method.ScrollingMovementMethod; import android.util.Base64;...
GLSurfaceView 截图保存图片
GLSurfaceView 截图保存图片 package com.byteflow.app; import android.graphics.Bitmap; import android.opengl.GLES20; import android.opengl.GLSurfaceView; import android.util.Log; import javax.microedition.khronos.egl.EGLConfig; import javax.microedition.khronos.opengles.GL10; import static com.byteflow.app.MyNativeRender.SAMPLE_TYPE; import static com.byteflow.app.MyNativeRender.SAMPLE_TYPE_SET_GRAVITY_XY; import static com.byteflow.app.MyNativeRender.SAMPLE_TYPE_SET_TOUCH_LOC; import java.io.File;...
那些年的Webview开发经验记录-CSDN博客
获取网站视频真实链接 直接调用即可,这个工具类会返回加载的网页中所有的链接,至于对链接怎么处理就是你们自己的事了, 亲测至今我所遇到的所有视频,它都可以捕获到其链接 import android.app.Activity; import android.graphics.Bitmap; import android.net.http.SslError; import android.os.Build; import android.support.annotation.RequiresApi; import android.view.ViewGroup; import android.webkit.CookieManager; import android.webkit.CookieSyncManager; import android.webkit.SslErrorHandler; import android.webkit.WebResourceRequest; import android.webkit.WebResourceResponse; import...
Android Studio实现刮刮卡效果
代码和刮刮乐图片参考网络 实现效果 MainActivity import android.app.Activity; import android.os.Bundle; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } } ScratchCardView import android.content.Context; import android.graphics.Bitmap; import android.graphics.Bitmap.Config; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Color;...
Android Studio实现图形验证码
源代码 源代码MainActivity 效果图32行需要修改,不修改会报错:需要常量表达式,我的代码已修改 点击后 MainActivity import static com.example.graphicverificationcode.RxCaptcha.TYPE.NUMBER; import android.annotation.SuppressLint; import android.os.Bundle; import android.view.View; import android.widget.ImageView; import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity implements View.OnClickListener { TextView tvCode; ImageView ivCode;...
Android 内存分析(java/native heap内存、虚拟内存、处理器内存 )
1.jvm 堆内存(dalvik 堆内存) 不同手机中app进程的 jvm 堆内存是不同的,因厂商在出厂设备时会自定义设置其峰值。比如,在Android Studio 创建模拟器时,会设置jvm heap 默认384m , 如下图所示: 当app 进程中java 层 new 对象(加起来总和)占用的堆内存达到jvm heap 峰值时,就会抛出OOM 。 通过一个案例进一步,了解jvm 堆内存: 通过以下代码,可获取到进程中jvm 堆内存的使用情况: public JSONObject statisticsJVMMemory() { JSONObject json = new JSONObject(); Runtime runtime = Runtime.getRuntime(); long max_memory = runtime.maxMemory() / 1024; long apply_memory = runtime.totalMemory() / 1024; long free_memory = runtime.freeMemory() / 1024; long...
Android开发之十八-AsyncTask基本使用_51CTO博客_android asynctask
mb64411cc0e9333 2023-07-18 16:48:17 博主文章分类:8 Android开发 ©著作权 文章标签 android ide 泛型 文章分类 HarmonyOS 后端开发 ©著作权归作者所有:来自51CTO博客作者mb64411cc0e9333的原创作品,请联系作者获取转载授权,否则将追究法律责任 简介 AsyncTask 是轻量级的异步任务类,轻松地在 UI 线程控制后台操作和后台操作所返回结果,无需使用 Thread 和 Handler 这样的组合来进行切换。实际上 AsyncTask 是为我们所设计的关于 Thread 和 Handler 的帮助类。 AsyncTask 是经过 Android 封装、简化的异步任务实现方式,内部实现也是由 Thread 和 Handler 来实现异步任务和切换线程的 不说多余的废话,先上代码 AsyncTask task = new AsyncTask<Void, Integer, Void>() { @Override protected void onPreExecute() {...
Android - 一个似神器而非神器之Palette探索与实践
原小明呢 2023-05-07 15:57:54 ©著作权 文章标签 palette 渐变背景 圆角背景 android 圆角 文章分类 Html/CSS 前端开发 ©著作权归作者所有:来自51CTO博客作者原小明呢的原创作品,请联系作者获取转载授权,否则将追究法律责任 背景 前段时间,在进行项目开发的时候,UI给了一个银行卡相关的列表,每个item都是渐变效果,直接使用背景图片,直接导致的是包增加近2M。 列表示例( >20个) 但在这个项目中,放在了客户端进行了判断,为什么要放在客户端呢,就不说了。。。。。 了解 通过对Palette的简单了解,做了一个Demo和封装了一个Util进行方便开发。效果背景图示例: Demo效果 附上参考资料:Palette状态栏颜色提取 截图演示 & Demo截图 Palette 探索 Gradle 添加依赖 : 版本自己控制,这里是我当前的版本! compile 'com.android.support:palette-v7:23.4.0' 简单异步回调使用及其解释 : Palette回调颜色方法...
基于PaddleOCR开发懒人精灵文字识别插件_番茄小能手的博客-CSDN博客
懒人精灵是 Android 平台上的一款自动化工具,它通过编写 lua 脚本,结合系统的「 无障碍服务 」对 App 进行自动化操作。在文字识别方面它提供的有一款OCR识别插件,但是其中有识别速度慢,插件大的缺点,所以这里将讲解一下如何集成基于PaddleOCR文字识别开发的插件,阅读本篇文字需要对PaddleOCR有个基本的了解,还需要有一点Android开发基础,文章最后有相关插件下载地址。 1、android studio最新版本即可 下载地址:Download Android Studio & App Tools - Android Developers 2、下载PaddleOCR提供的安卓版文字识别demo 下载地址:PaddleOCR/deploy/android_demo at release/2.5 · PaddlePaddle/PaddleOCR · GitHub 3、导入Android studio并成功运行 以上三步工作完成后,将开始我们的懒人精灵文字识别插件开发。 1、项目结构对比 修改前 VS...
学习笔记-Android studio导入OpenCV配置使用
1.下载OpenCV-android-sdk 官网下载sdk,打开opencv官网,点击Android,完成后解压 https://opencv.org/ 解压后,文件夹下有这些文件 samples Android代码工程 sdk 包含opencv的Java的接口和JNI接口等 2.新建工程 打开Android studio,选择模板,这时选择最后一项Native C++,然后进入配置界面。 这里注意你下载的Android-sdk版本来选择API 选择C++14,finish 3.环境配置 将OpenCV库作为Module导入。具体步骤为:File->New->Import Module,然后将OpenCV-android-sdk\sdk目录导入,最好顺便将模块名改成opencv+版本号。如下图,然后Next->Finish。 修改OpenCV下的gradle文件, apply plugin: 'com.android.library,并将API改为与app一致 添加依赖,菜单栏选择File->Project...
面部表情识别3:Android实现表情识别(含源码,可实时检测)_android 表情识别_AI吃大瓜的博客-CSDN博客
目录 这是项目《面部表情识别》系列之《Android实现表情识别(含源码,可实时检测)》,主要分享将Python训练后的面部表情识别模型移植到Android平台。我们将开发一个简易的、可实时运行的面部表情识别的Android Demo。准确率还挺高的,采用轻量级mobilenet_v2模型的面部表情识别准确率也可以高达94.72%左右,基本满足业务性能需求。 项目将手把手教你将训练好的表情识别模型部署到Android平台中,包括如何转为ONNX,TNN模型,并移植到Android上进行部署,实现一个表情识别的Android Demo APP 。APP在普通Android手机上可以达到实时的检测识别效果,CPU(4线程)约30ms左右,GPU约25ms左右 ,基本满足业务的性能需求。 【尊重原创,转载请注明出处】https://blog.csdn.net/guyuealian/article/details/129467015 先展示一下Android版本表情识别Demo效果: Android面部表情识别APP...
【Android】实现生成二维码、条形码和扫描二维码的功能_android 生成二维码_yao_yao_ya的博客-CSDN博客
目录 要先添加一个第三方库来实现二维码的生成以及扫描二维码的功能,开源库如下: 在build.grade(Moudle)中添加依赖: implementation 'com.journeyapps:zxing-android-embedded:3.4.0' 效果如下: activity_main.xml: <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:padding="40dp" android:gravity="center"> <EditText android:id="@+id/text" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="输入文字"/> <Button android:id="@+id/generate" android:layout_width="150dp"...
安卓引导用户设置APP运行后台保活_android 后台运行_yangsion@的博客-CSDN博客
随着Android版本的更新, 又是基于安全!安全! 非系统层APP想要正大光明的或搞点小手段在后台长时间或者"永久"保活是愈发不可实现了(当然排除一些"黑技术"),大陆定制化的OS又为了更好的保证UI的流畅性也更是把此拿捏的死死的(除了QQ,微信,支付宝等这类占据市场主导地位的APP手机厂商加入了白名单).这对于一个闻不见经传的中小企业为了能让自家的智能外设能与APP之间的连接建立的长久一些, 数据通信能尽可能不出现中断, 引导用户自行设置APP后台运行和避免APP被清除已成单选项. 直接上代码 1.
【Android App】人脸识别中使用Opencv比较两张人脸相似程度实战(附源码和演示 超详细)
直方图由一排纵向的竖条或者竖线组成,横轴代表数据类型,纵轴代表数据多少。 图像直方图经常应用于特征提取、图像匹配等方面。 假设有两幅图像,它们的直方图很相似,这说明两幅图的像素分布相当接近,他们很可能来自相邻场景,相似度越高,两幅图越可能是同样来源,这便是直方图应用于图像匹配的缘由。OpenCV的Imgproc工具有一个compareHist方法,可以比较两个矩阵结构的相似程度,其内部就采用直方图比较两幅图像像素点灰度值的分布情况,因为只有灰度值参加比较,所以要先将全彩矩阵转为灰度矩阵再调用Imgproc的compareHist方法加以判断 相似度比较步骤如下 (1)分别对两张图片检测人脸,得到各自的人脸矩阵数组; (2)两张图片都找到人脸的话,再从中截取人脸矩阵并转成位图对象; (3)调整位图尺寸,使得两幅图片的宽高保持一致,也就是把较大的位图缩放到较小位图的尺寸; (4)把两个位图对象转为灰度矩阵,再通过直方图比较它们的相似度; 由于compareHist方法的返回值在0-1之间,值越大表示越相似,一般相似度达到0.5就很高了...
Android App开发网络通信中使用okhttp下载和上传图片、文件讲解及实战(超详细实现用户注册信息上传 附源码)
okhttp不但简化了HTTP接口的调用过程,连下载文件都变得简单了,对于一般的文件下载,按照常规的GET方式调用流程,只要重写回调方法onResponse,在该方法中通过应答对象的body方法即可获得应答的数据包对象,调用数据包对象的string方法即可得到文本形式的字符串,下面以下载网络图片为例,位图工具BitmapFactory刚好提供了decodeStream方法,允许直接从输入流中解码获取位图对象 效果如下 点击下载图片按钮后即可自动实现下载网络图片 当然,网络文件不止是图片,还有各种各样的文件,这些文件没有专门的解码工具,只能从输入流老老实实的读取字节数据,不过读取字节数据有个好处,就是能够根据已经读写的数据长度计算下载进度,特别在下载大文件的时候,实时展示当前的下载进度非常有用 效果如下 演示视频已上传至个人主页 可自行观看 由下图可见下载进度加载到了百分之一百 代码如下 Java类 package com.example.network; import android.graphics.Bitmap; import...
Android App开发之位图加工Bitmap中转换位图的像素色彩、裁剪内部区域、利用矩阵变换位图的讲解及实战(附源码和演示)
需要图片集和源码请点赞关注收藏后评论区留言~~~ 给图片添加装饰物,只是在局部变换,如果想让图片一边保持轮廓一边改变色彩,就要深入图像的每个像素点,将这些像素点统统采取某种算法修改一番,在像素级别更改图像的话,要先把图片转换成位图对象再进一步加工位图对象,此时用到了位图工具Bitmap 主要方法如下 1:createBitmap 创建一个新位图 2:getPixels 获取位图对象所有点的像素数组 3:setPixels 设置位图对象所有点的像素数组 效果如下 可以将一张图片以多种色彩效果显示出来 代码如下 Java类 package com.example.picture; import androidx.appcompat.app.AppCompatActivity; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import android.view.View; import...
RXJava3+OKHTTP3+Retrofit2(观察者设计模式)讲解+实战_爱编程的小费同学的博客-CSDN博客
废话不多说,全部代码请拉到最后!!!! retrofit是载体(基于okhttp),rxjava 就是一个实现异步操作的库。 它的简洁的与众不同之处在于,随着程序逻辑变得越来越复杂,它依然能够保持简洁。 就比如我们开了一家披萨店: 你总不能直接把披萨胚直接卖给客人 RX思维分析(完成披萨订单) 被观察者(起点)-------需求(1个或者多个)---------观察者(终点) 就是和卖批萨一样,一条流水线,你开始是个被观察者(披萨胚),观察者(客人)点餐提出需求,通过中间做这些需求(放芝士啥的)最后一个需求结束以后把参数(披萨成品)传给观察者(客人) RX=反应式 reactive x==反应式==响应式编程思维RX == 响应式编程思维 什么是响应式编程?
Android Studio App开发之使用摄像机录制视频和从视频库中选取视频的讲解及实战(附源码)
与音频类似,通过系统摄像机可以很方便的录制视频,只要指定摄像动作为MediaStore.ACTION_VIDEO_CAPTURE即可 视频录制完成之后,最好能够预览视频的摄制画面,所以代码中调用了getOneFrame方法获取视频文件的某帧图片,查看该图片可以大致了解视频内容 效果如下 因为没连真机所以摄像头拍不出什么 读者可自行连接真机测试效果更佳 代码如下 Java类 package com.example.chapter13; import android.content.Intent; import android.graphics.Bitmap; import android.net.Uri; import android.os.Bundle; import android.os.Environment; import android.provider.MediaStore; import android.view.View; import android.widget.ImageView; import android.widget.RelativeLayout;...
Android Studio App开发之使用相机拍摄照片和从相册中选取图片(附源码 超详细必看)
对于手机拍照的App开发而言,有两种实现方式 1:通过 camera工具联合表面视图SurfaceView自行规划编码细节 2:借助系统相机自动拍照,考虑到多数场景对图片并没有特殊要求,所以使用系统相机更加方便快捷 效果如下 点开相机拍照 App中便能显示拍出来的照片 因为之前已经把图片的路径对象传给了系统相机,所以这里可以直接设置图像视图的路径对象,不用再去解析什么包裹信息 代码如下 Java类 package com.example.chapter13; import android.content.ClipData; import android.content.Intent; import android.graphics.Bitmap; import android.net.Uri; import android.os.Bundle; import android.provider.MediaStore; import android.view.View; import android.widget.ImageView; import...
基于ESP32-CAM做一个智能家居监控_esp32cam远程监控_苏师的博客-CSDN博客
首先我们需要用到设备: ESP32-CAM(20元左右) USB转TTL串口(几块钱)or 底板 我这边使用到的是ESP32-CAM拼夕夕二十多买的,质量还可以,然后用到了USB转TTL串口。 首先我们先进行连线。 5V->5V VOR->TX VOT->RX GND->GND 此时还要用杜邦线将IO0与GND连接起来,需要连接起来才能进行上传下载。下载完成后要查看的时候在断开。 在此处更改WIFI的账号与密码: 此处为视频的刷新FPS;越高越流畅 代码写完后。在此处点击上传; 如果出现以下状况 需要按一下板上的复位按键,就是唯一可以按的那个按钮。 上传成功后打开串口 拔掉IO0与GND连接。在按一下RST 连接成功。复制网址。 成功运行,我们也可以在APP端设计个软件。我简单的设计了一下。代码如下: MainActivity: package com.huangfushi.mjpeg_1; import android.app.ProgressDialog; import android.content.Context; import...
安卓App与ESP32Cam的视频传输_esp32cam蓝牙传输视频_dsxcode的博客-CSDN博客
实现结果 app可以控制Esp32Cam的摄像头开关和闪光灯的开关 Esp32Cam代码 #include <Arduino.h> #include <WiFi.h> #include "esp_camera.h" #include <vector> #define maxcache 1024 //图像数据包的大小 const char* ssid = "****"; const char* password = "*******"; const int LED = 4;//闪光灯 const int ZHESHI_LED = 33; //指示灯 bool cam_state = true; //是否开启摄像头传输 const int port = 8080; String frame_begin = "FrameBegin"; //图像传输包头 String frame_over = "FrameOverr"; //图像传输包尾 String msg_begin = "Esp32Msg"; //消息传输头 //创建服务器端 WiFiServer server; //创建客户端...
Android基于opencv4.6.0实现人脸识别功能_android opencv人脸识别_jszlittlecat_720的博客-CSDN博客
前言 步骤: 1.整合opencv 2.获取相机的SurfaceView传到native层去检测(亦或是不断的获取SurfaceView的Bitmap,传到native层) 3.检测人脸,在本地保存人脸特征信息 4.上传至后台(不实现) 人脸识别实现的思路(例:人脸登录) 1.人脸信息录入 1.1获取相机的Bitmap,检测人脸(保证人脸信息比较精准) 人脸要足够大,当前范围内人脸只能有一张人脸,正常、眨眼睛、张嘴巴(3张人脸信息) 1.2获取到人脸必须要保存人脸特征信息,然后上传至后台(后台会再次做算法优化),保存到数据库 2.人脸特征值匹配 2.1获取相机的Bitmap,检测人脸(保证人脸信息比较精准) 人脸要足够大,当前范围内人脸只能有一张人脸,正常、眨眼睛、张嘴巴(3张人脸信息) 2.2从后台去查询用户进行登录 一.Android Studio配置opencv 1.opencv资源获取 opencv官网:Home - OpenCV opencv最新的版本是4.6.0于2022年06月07日发布,4.6.0网址:OpenCV 4.6.0 Is Now Available!...
【Android】Bitmap图片旋转、缩放、翻转等变换(90/100)_android bitmap旋转_lichong951的博客-CSDN博客
自定义BitmapChangeView: package top.lc951.myandroid.views; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Paint; import android.support.annotation.Nullable; import android.util.AttributeSet; import android.view.View; import top.lc951.myandroid.utils.BitmapUtil; public class BitmapChangeView extends View { public static final String TAG = BitmapChangeView.class.getSimpleName(); private float mScaleRatio=1.0f; private float...
AndroidStudio实现在图片上涂鸦并记录涂鸦轨迹_android 涂鸦_天王老子来了我也不改名的博客-CSDN博客
AndroidStudio实现在图片上涂鸦,并保存涂鸦轨迹 AndroidStudio版本:2020.3.1.25 实现效果: 本文通过重写view类,实现在选择的图片上涂鸦的功能,因为项目需要残留了一些多余代码 项目结构: MainActivity为主程序类 HandWrite类为手写类,用于处理各种手势 res/layout/activity_main.xml 为主界面 res/xml/file_path.xml 为图片缓存路径 0.Handwrite类 划重点,此类中重写了view类,画出了手指按下的轨迹,并记录在pointlist中 package com.buildmaterialapplication; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import...
Add machine mearning to your Android app
During the opening keynote at last week’s Google I/O conference, one particular segment caught my attention. Francis Ma, a Group Product Manager at Google, announced the release of ML Kit in public beta. ML Kit is a collection of machine learning tools that are available to developers through an API. ML Kit has tools for text recognition, image labeling, barcode scanning, face detection, and landmark recognition.
学习记录--Pytorch模型移植Android小例子_litemoduleloader_weixin_44438341的博客-CSDN博客
最近在搞图像分类模型移植到Android上,本来是准备用Tensorflow来搞的,但是百度到的一些博文案例都有些老,17、18年的,然后找Tensorflow官方实现的例子,发现最开始的例子已经弃用了,换了个地方。但是这新例子里的README也没讲怎么处理模型,Tensorflow官网时常出现Service Unavailable,再加上我用Tensorflow实现的模型跑出的结果很奇怪。Pytorch倒是能找到比较新一点的例子: 将Pytorch模型部署到Android端_YDDUONG的博客-CSDN博客_pytorch安卓部署 如何将pytorch模型部署到安卓_AI浩的博客-CSDN博客_pytorch模型部署安卓 Pytorch-Mobile-Android(3) 部署自己模型_Triton安的博客-CSDN博客_pytorch手机部署 果断放弃Tensorflow,改用Pytorch,参考官方的给例子操作,模型还是能够跑出来的。 这里就简单记录下实现过程和遇到的一些错误。 废话结束,正文开始。 使用的环境版本 训练模型: ↓ Python 3.7.3 Pytorch...
Show More
loading
Actions
Is this you?
As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.Get in touch with import
Contact import, search articles and posts on X, monitor coverage, and track replies from one place.
Learn more about Muck Rack