![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
安卓开发
文章平均质量分 57
寻梦&之璐
这个作者很懒,什么都没留下…
展开
-
Androidstudio上传图片至七牛云
进行图片上传大概分为五步:客户端用户登录到APP的账号系统里面;客户端上传文件之前,需要向业务服务器申请七牛的上传凭证,这个凭证由业务服务器使用七牛提供的服务端SDK生成;客户端使用七牛提供的客户端SDK,调用上传方法上传文件,上传方法中必须有上传凭证和文件内容(由于七牛允许大小为0的文件,所以文件上传之前,建议检查文件大小。如果业务不允许文件大小为0,那么需要自行检测下);客户端文件上传到七牛之后,可选的操作是七牛回调业务服务器,(即七牛把文件相关的信息发送POST请求到上传策略里面指定的回调.原创 2022-09-30 14:23:05 · 732 阅读 · 0 评论 -
Androidstudio开发界面感想
文章目录网图显示加入依赖在build.gardle或者maven核心插入代码作品展示网图显示加入依赖在build.gardlerepositories { google() jcenter()}dependencies { implementation 'com.github.bumptech.glide:glide:4.11.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'}或者m原创 2022-09-30 14:22:45 · 187 阅读 · 0 评论 -
Android_NetWork_Test
文章目录api27以前配置文件申请网络权限异步发送网络请求使用HttpURLConnectionapi27以后换成商城apiGsonfomat插件:api27以前配置文件申请网络权限<uses-permission android:name="android.permission.INTERNET"></uses-permission>异步发送网络请求使用HttpURLConnectionpackage com.kanxue.androidnetwork;impor原创 2022-04-08 23:06:21 · 2154 阅读 · 0 评论 -
androidstuido_schooltest_9_Dialog
文章目录MainActivity.javaactivity_main.xmlDialogActivity.javaactivity_dialog.xmlSimpleConponentActivity.javaactivity_simple_conponent.xmldialog_view.xmlMainActivity.javapackage com.kanxue.myapplication;import androidx.appcompat.app.AppCompatActivity;impo原创 2022-04-03 22:58:07 · 1948 阅读 · 0 评论 -
androidstuido_schooltest_8_Network
文章目录MainActivity.javaactivity_main.xmloutput:MainActivity.javapackage com.kanxue.school_test_2;import androidx.appcompat.app.AppCompatActivity;import android.app.ProgressDialog;import android.os.AsyncTask;import android.os.Bundle;import android.os原创 2022-04-03 18:19:38 · 1777 阅读 · 0 评论 -
androidstuido_schooltest_7_storage
文章目录MainActivity.javaactivity_main.xmlSPTestActivity.javaactivity_sptest.xmlInnerFileActivity.javaactivity_inner_file.xmlOfActivity.javaactivity_of.xmlDbActivity.javaactivity_db.xmlDBHelper.javaMainActivity.javapackage com.kanxue.school_test_1;import a原创 2022-04-03 16:40:38 · 1921 阅读 · 0 评论 -
androidstuido_schooltest_5_media
文章目录activity_main.xmlMainActivity.javaactivity_main.xml<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com原创 2022-04-03 03:11:10 · 213 阅读 · 0 评论 -
androidstuido_schooltest_6_media_service
文章目录activity_main.xmlMainActivity.javaMusicService.javaactivity_main.xml<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://sc原创 2022-04-03 03:10:35 · 212 阅读 · 0 评论 -
androidstuido_schooltest_3_EditText
MainActivity:package com.kanxue.school_test_3;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.text.Editable;import android.text.TextWatcher;import android.util.Log;import android.view.KeyEvent;import androi原创 2022-04-03 00:02:27 · 197 阅读 · 0 评论 -
androidstuido_schooltest_4_phone
文章目录MainActivity.javaactivity_main.xml动态申请权限类权限:MainActivity.javapackage com.kanxue.school_test_7;import androidx.annotation.NonNull;import androidx.appcompat.app.AppCompatActivity;import androidx.core.app.ActivityCompat;import androidx.core.content.原创 2022-04-03 00:01:31 · 365 阅读 · 1 评论 -
androidstuido_schooltest_2_TextView
MainActivity:package com.kanxue.schooltest_2;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.text.Html;import android.widget.TextView;public class MainActivity extends AppCompatActivity { TextView textVi原创 2022-04-03 00:00:48 · 344 阅读 · 0 评论 -
androidstuido_schooltest_1
文章目录Mainactivity.java:activity_main.xml:output:Mainactivity.java:package com.kanxue.schooltest_1;import android.os.Bundle;import com.google.android.material.snackbar.Snackbar;import androidx.appcompat.app.AppCompatActivity;import android.view.Vie原创 2022-04-02 23:59:53 · 203 阅读 · 0 评论 -
第十届“中国软件杯”参赛项目总结
文章目录详细设计说明书:需求概述基本功能需求非功能性需求软件结构更多中软杯-详细设计说明书设计过程界面设置主页页面AI检测页面生物基础库页面项目设计代码主页组件前端摆放心得体会:布局套娃感想专属线性布局方法1方法2主页后端点击操作的心得体会:AI检测页面组件前端摆放心得体会:AI检测页面后端点击操作的心得体会:生物基础库页面组件前端摆放心得体会:生物基础库页面后端点击操作的心得体会:详细设计说明书:需求概述用户通过手机拍照或者手动上传等方式提交林业有害生物图像照片,经预览、裁剪等操作处理后上传至服务器原创 2021-07-15 16:22:54 · 12926 阅读 · 4 评论 -
Androidstudio无法修改按钮颜色
文章目录改之前:改之后:改之前(图片对比):改之后(图片对比):默认的颜色设置来自于res/themes/themes.xml与夜间模式下的res/themes/themes.xml改之前:<style name="Theme.Software_China_four" parent="Theme.MaterialComponents.DayNight.DarkActionBar">改之后: <style name="Theme.Software_China_four" par原创 2021-06-24 11:29:33 · 4683 阅读 · 0 评论 -
Androidstudio如何正确导入和移出jar包
文章目录导入第一步第二步移出第一步第二步导入第一步相应的jar包粘贴至libs目录下第二步然后鼠标右键,点击Add As library即可如下图为导入成功移出第一步File–>Project Structure第二步Dependencies---->app目录下选中需要移出的jar包,然后点击减号,YES即可。紧接着就可在libs目录下面进行删除相应的jar包如下图则为移出成功...原创 2021-05-28 17:43:21 · 567 阅读 · 0 评论 -
安卓开发之Intent系统调用系统相机Camera(中软杯项目)
package com.example.software_china;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import android.view.View;import android.widget.Button;import android.原创 2021-05-09 23:05:18 · 845 阅读 · 4 评论 -
frida框架
环境搭建下载FRIDApip install frida下载frida-server去github上下载frida-server,网址为 https://github.com/frida/frida/releases,frida-server 是一个守护进程,通过TCP和Frida核心引擎通信,默认的监听端口是27042adb devices解压后,使用adb将frida-server放到手机目录/data/local/tmp,然后修改属性为可执行adb push G:\b原创 2021-04-13 23:44:13 · 2870 阅读 · 0 评论 -
AndroidStudio通过JDBC连接MySQL数据库六大巨坑
文章目录注意基础Androidstudio通过JDBC连接数据库巨坑介绍(这里呢,我使用我所做项目的修改密码界面来做介绍)1.网络权限问题(打不开apk)2.jar包问题(找不到driver)3.连接方法问题(返回连接对象为null)4.异步启动问题(返回连接对象为null)同步启动异步启动5.同一个线程不能多次调用异步启动函数(threads.start()------>new Thread(threads).start();)(java.lang.IllegalThreadStateExcepti原创 2021-03-22 23:58:33 · 18349 阅读 · 13 评论 -
LLVM架构详述
什么是LLVM?LLVM项目时模块化,可重用的编译器以及工具链技术的集合美国计算机协会(ACM)将其2012年软件系统奖项颁给了LLVM,之前曾经获得此奖的软件和技术包括Java,Apache,Mosaic,the World Wide Web,Smalltalk,UNIX,Eclipse等等创始人:Chris Lattner,亦是Swift之父有些文章把LLVM当做Low Level virtual Machine(低级虚拟机)的缩写简称,官方描述如下:The name “LLVM” its原创 2021-02-22 23:19:14 · 3952 阅读 · 2 评论 -
图片轮播器,relativelayout,外加textview小结
十多个textview,外加三个relativelayout,心烦的是图片轮播器,就环境老玄了,写了三个图片轮播器才成功,直接来代码吧,gogogo。Activity_main.xml<?xml version="1.0" encoding="utf-8"?><ScrollView android:layout_width="match_parent" android:layout_height="match_parent" xmlns:android="http:/原创 2021-02-14 16:56:33 · 218 阅读 · 0 评论 -
2020-11-18(如何打开.jar工具)
如何运行.jar工具来搞apk,首先呢,请允许我笑一下,以前遇到.jar工具我直接就把它解压了,里面也没exe给我用我都好奇,是不是有毛病,人人都说工具好用,我直接找不到怎么用。。。a.首先确保电脑里面有(jdk)java的开发环境,配置好环境变量b.打开cmd切换到.jar工具目录,然后 输入命令行 java -jar XXX.jar就可以打开了。。。...原创 2020-11-18 00:25:26 · 708 阅读 · 0 评论 -
2020-11-6(JDBC)
jdbc java DataBase Connectivity 一套接口,通过Java代码访问关系型数据库jdbc_helloworldDriverManager Connection Statement ResultSetDriveManger 可以加载jdbc驱动 可以获取一个Connection对象Connection 代表了一个跟关系型数据库服务端的链接,通过Connection可以获取一个Statement对象Statement通过这个对象可以执行sql语句executeQuery(s原创 2020-11-06 00:11:52 · 134 阅读 · 0 评论 -
2020-11-5(安卓)
setContentView(R.layout.activity_main)这个表示加载界面意思是这行执行完了activity_main.xml文件里面所有的东西都创建了java对象,已经在创建在内存后,然后再findViewById中放入对应控件Id值查找时才能找到对应控件View看得见 EdiText TextView CheckBoxButton看不见的Viewgroup (group里面可以添加一些子view)LinearLayout RelativeLayo原创 2020-11-05 00:23:07 · 6593 阅读 · 12 评论 -
2020-11-2(安卓入门(每个字皆为手打))
jdk1.5之后加入的三个api预置注解三个Deprecated 当前方法是过时的,在api中有更好的实现Supresswarning 压制警告Override 当前方法是覆盖了父类方法xml文档的声明:<?xml version="1.0" encoding="utf-8"?>必须在文档的第一行进行声明(encoding后视情况而定)元素:起始标签 闭合标签标签必须闭合如果标签中没有其它内容可以自闭和标签嵌套的时候需要注意,先开始的标签后闭合,后开始的标签先闭合根原创 2020-11-02 00:06:10 · 3752 阅读 · 1 评论 -
2020-10-30(smali复杂类解析)
首发于i春秋论坛之前在Android逆向——初识smali与java类中讲解了基本的HelloWorld和简单类。这节课就要进一步深入。如果能够耐下心来分析一定会有所收获。——写给自己和后来人。0x00 前言1.内容1.1 smali复杂类分析(前菜)1.基本属性2.构造方法3.基本方法4.简单的练习1.2 smali类相互调用(主菜)1.两个类相互调用1.3 小练习(甜点)1.写一个smali2.调用其他两个类里的方法0x01 smali复杂类分析1.java复杂类如果有什转载 2020-10-30 00:30:07 · 433 阅读 · 0 评论 -
2020-10-27(dex文件解析)
一张图搞懂dex大图这里当然也可以通过下面的图12 DexFile的文件格式,了解更清楚。DEX文件详解什么是dex文件?如何生成一个dex文件dex文件的作用dex文件格式详解什么是dex文件?dex文件是Android系统中的一种文件,是一种特殊的数据格式,和APK、jar 等格式文件类似。能够被DVM识别,加载并执行的文件格式。简单说就是优化后的android版.exe。每个apk安装包里都有。包含应用程序的全部操作指令以及运行时数据。相对于PC上的java虚拟机能运行.cl转载 2020-10-30 00:47:58 · 6577 阅读 · 1 评论 -
2020-11-13(四大组件简单回忆内容)
ActivityonCreat界面的初始化 setcontentView findviewbyid数据初始化文件/数据库/网络/其它的组件/sp开启其它的组件(开启服务,注册广播接收者) 动态注册广播接收者(onCreat注册 用 onDestroy注销 onstart注册 用 onStop注销 onResum注册用 onPause注销)onstartonResume 刷新界面(可被操作状态)onPause 停止刷新界面(可见不可操作状态)onStoponDestroy原创 2020-11-13 00:35:23 · 3608 阅读 · 0 评论 -
2020-11-13(c++下JNI开发不同点)
a.在c++环境下,JNIE不再是结构体的一级指针,而是结构体_JNIEnv的别名env是JNIEnv的一级指针,所以env就是结构体 _JNIEnv的一级指针,访问结构体函数env----->b.c++的结构体中可以声明函数,c的结构体只能声明函数指针,不能有函数的实现在_JNIEnv这个结构体中,定义了大量的函数,实际上就是调用了结构体JNINativeInterface的同名函数指针,并且在调用的时候,把第一个参数JNIEnv*传进去了c.c++的函数在使用时候要先声明,可以生成的.h头原创 2020-11-13 00:00:25 · 3694 阅读 · 0 评论 -
2020-11-12(内容提供者,内容解析者,内容观察者)
内容提供者实现步骤a.写一个类继承ContentProvider 重写onCreat query delete insert getTypeb.在清单文件中声明对应的provider节点authorities =通过这个字符串来决定访问的是哪个内容提供者,高版本的设备,还需要配置一个参数exported=true;c.通过URLMatch添加URi的匹配规则ContentResolver contentResolver=getContentResolver();Uri uri=Uri.原创 2020-11-12 19:39:39 · 3782 阅读 · 0 评论 -
2020-11-12(JNI开发常见错误)
JNI开发常见错误a.Native method not found:com.itheim.hello.Mainactivity.hello_InC:()Ljava/lang/String;可能出现的原因 c函数名字写错了解决方法 通过javah生成头文件如果jdk1.7以上,到项目的src目录下运行javah,javah要生成c函数名字的java类的全路径jdk1.6以下,到项目的bin/class目录下运行javah可能的原因 2.忘记写System.loadLibrary,可以通过原创 2020-11-12 00:17:57 · 3566 阅读 · 2 评论 -
2020-11-11(C语言下JNI开发hello过程)
jni _helloworlda.声明一个native方法,native方法不用实现//通过native关键字 声明了一个本地方法, 本地方法不用实现 ,需要jni调用c的代码来实现public native String helloInC();b.项目根目录下创建的jni文件夹,在jni目录下创建.c代码c函数命名规则 Java_包名_native方法所在类名_native方法名(JNIEnv* env,jobject thiz)#include<stdlib.h>#i原创 2020-11-11 22:28:11 · 3842 阅读 · 0 评论 -
2020-11-11(aidl)
让其它应用可以调用当前应用service的方法RPC remote procedure call 远程过程调用 AIDL 解决就是rpc的问题IPC inter process communication 进程间通信每一个android应用都运行在独立的进程见通信Activity intentBroadcastReceiver 通过onReceive方法,可以处理其它应用发来的广播aidl实现过程提供远程服务方法的应用a.创建一个Service重写onBuild方原创 2020-11-11 21:55:09 · 3256 阅读 · 0 评论 -
2020-11-11(对话框简单总结)
如果界面中有listview则需要创建一个适配器对象,调用listview的setAdapter(adapter对象)将listview和适配器绑定在一起给按钮(需要点击的事件)设置点击事件创建对话框的时候也需要使用一个上下文,这个上下文必须是activity因为对话框要显示当前的activity中,是activity的一部分,创建对象的时候,需要通知系统当前对话框显示在哪个activity里,所以必须传activity对象作文上下文,如果用getApplicationContext就会崩溃Toas原创 2020-11-11 00:28:41 · 88 阅读 · 0 评论 -
2020-11-10(安卓如何传递数据)
1.从文件读取 保存文件的路径使用api去获取a.getCacheDir();获取/data/data/包名/Cache这个路径b.getFilesDir();获取/data/data/包名/files这个路径c.openFileInput(“文件名”)操作getFiles()目录下的文件,返回一个输入流FileInutStreamd.openFileOutput(“文件名”,mode)操作getFilesDir()目录下的文件,返回一个输出流 FileOutputStreame.Environ原创 2020-11-10 21:05:46 · 375 阅读 · 0 评论 -
2020-11-10(进程的优先级)
1.Foreground process 前台进程当前进程中,有activity处于可见可操作的状态(activity执行了onResume之后,并且留在了这个状态 正在被用户操作)service执行生命周期方法 以及广播接收者(onReceive)前台进程几乎不会被系统杀死2.Visible process 可视进程有activity处于onPause()状态,可见不可操作(eg:透明应用盖在上面,或者是一个对话框activity盖在上面)只有当前台进程内存不够时才会杀死可视进程3.Se原创 2020-11-10 18:47:17 · 3585 阅读 · 0 评论 -
2020-11-10(service入门)
startservice 方式开启服务startService(intent)通过这种方式开启的服务 执行的生命周期方法:第一次调用startService的时候onCreat()---->onStartCommand()再次调用startService—>onStartCommand()想停止用startService开启的服务,用stopService(intent);stopService()执行之后,service会走onDestroy()方法,执行后service销毁再次原创 2020-11-10 18:46:43 · 3575 阅读 · 0 评论 -
2020-11-10(回传递过程)
A打开B,在结束时传递数据给Aa.打开B时要使用startActivityForResult(intnent,1);b.在A activity中重写onActivity方法,在这个方法中获取B传回来的数据c.在B activity关闭之前,调用setResult方法,把数据封装到intent中,传递回来d.调用finish,结束Be.在onActivityResult方法,最后一个参数intent data这个参数就是以个页面setResult方法传递回来的意图,可以通过这个意图获取对应 的数据原创 2020-11-10 00:42:15 · 3547 阅读 · 0 评论 -
2020-11-9(有序和无序广播)
如何区分有序和无序广播接收到广播之后,在onReceive方法中调用abortbroadcast方法,如果没有异常,说明是有序广播,如果BroadcastReceiver trying to result during a non-ordered broadcast,有这个异常则说明是无序广播接收的顺序是否可以中断发送的方法有序广播可以通过priority设置接收顺序abortbroadcast();可以中断sendOrderedbroadcast()无序广播大家一原创 2020-11-09 22:13:23 · 3587 阅读 · 0 评论 -
2020-11-9(intent显式意图和隐式意图)
activity对象被创建时,系统会自动调用oncreat方法所有的四大组件都不能自己创建对象,需要系统来创建(通过清单文件AndroidMannifest.xml反射的方式来创建,清单文件声明节点后,系统自动会调用所创建的activity的oncreat方法)必须在清单文件中声明,不能自己创建,必须写在清单文件里,系统通过反射来创建主activity的label标签也就是apk的名字,何为主activity,在activity的action属性后面标志着MAIN,当activity没有声明labl原创 2020-11-09 00:27:53 · 3670 阅读 · 0 评论 -
2020-11-8(activity状态以及任务栈)
activity四种状态a.处于前台的activity,可见的,并且可以跟用户进行交互b.处于暂停的状态,可见,但不能被操作c.处于停止状态,不可见,也不可以被操作d.销毁状态,activity被系统杀死或者调用finish方法主动退出oncreat当activity创建的时候会走这个方法onstart走完这个方法activity就可以被用户看到onresume走完这个方法activity就处于一个前台activity的状态(可见并且可以被操作)onPause()走完这个方法activity原创 2020-11-08 17:49:07 · 3779 阅读 · 0 评论