自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 Linux学习之Ubuntu利用Cron机制安装后门

话说在前面,这是我看了另一个博主的文章,自己在自己的电脑上实验的结果,不是剽窃。原博主将得很详细,他的文章在这里。首先,说明一下,Cron是ubuntu下默认启动的用户执行计划。它会按照设置,在固定的周期或者按照一定时间执行某一个任务。它是一项服务,你可以使用基本的服务查看状态命令等查看信息。service cron status查看普通用户的执行计划。(如果你显示没有计划不要着急,后面加上cron.allow和cron.deny)就有了。crontab -l查看crontab的选

2020-10-31 15:47:34 581

原创 Linux学习之出现无法apt-get update

如果是因为不安全,Release之类的,大多就是版本问题。只需要到这里官方仓库配置进行设置就可以了,找到符合自己操作系统版本的仓库文档。到/etc/apt/下替换source.list。就可以了更新了。

2020-10-30 23:58:17 845

原创 Linux学习之telnet与ftp的远程连接

superscan不好用,使用nmap来进行端口的扫描,顺便进行telnet的远程登录和ftp的文件传输演示。telnet用到23端口,ftp用到21、20端口。首先,在VM上面安装两个虚拟机,分别为ubuntu和Window XP。将它们和主机的连接方式配置为NAT模式,再在:编辑->虚拟网络编辑器中进行设置,记得设置开启DHCP模式。那两个虚拟机的IP你可以选择自动获得,也可以设置在你设置的DHCP范围之内的某一IP。OK,这个搞好了,去配置虚拟网卡。众所周知,我们的电脑上打开Wind

2020-10-29 23:02:13 1677

原创 nmap命令总结

在使用superscan之后,发现了它的好多局限性,无法逾越普通的防火墙,因此,考虑使用nmap来代替它。1.首先是扫描一个主机的端口,直接nmap 192.168.1.1052.那如果,去扫描拥有防火墙的主机,就无法使用了,这是通过发送ICMP echo的数据来扫描的,一个RST包,就表示主机正在运行,和-sP参数的结果和原理相同。nmap -Pn www.111.com就可以了3.-PS 让nmap使用SYN包而不是ACK包来对目标主机进行扫描,对于防火墙同样无法逾越。4.-PA类比

2020-10-28 23:13:21 271

原创 Android初步进阶之自定义View、动画(一)

在小小的屏幕上组合出符合预期的视图,仅仅使用已经定义好的组件可不够,需要我们自己去设置视图。View滑动、属性动画先看看View的结构:首先介绍,自定义View滑动。

2020-10-28 21:38:02 179

原创 Android初步进阶之Design Support Library库简单使用(二)

上接上一篇文章,继续介绍这个库的使用。上一篇文章使用NavigationView来实现抽屉菜单界面上次也说了,我们费劲用Toolbar实现的抽屉式菜单,这不是又有一个封装好的组件吗,都是封装带师。废话不多说,做好就这样:首先,我们在上一篇文章的基础上进行改造,修改主界面的布局文件main_activity.xml。<?xml version="1.0" encoding="utf-8"?><androidx.drawerlayout.widget.DrawerLayo

2020-10-23 22:17:19 207 2

原创 Android初步进阶之Design Support Library库简单使用(一)

为了组件可以更加友好,有更好的表达形式和响应,采用更加友好的组件,Design Support Library库,是不错的选择。下面即将涉Snackbar、TextInputLayout和TextInputEditText组合、PloatingActionButton和ViewPager、TabLayout、RecyclerView。文档官网地址(国外网站)下面,介绍几个组件。使用Snackbar来替代Toast示例:首先,创建用来的测试的main_activity.xml。<?x

2020-10-22 23:51:58 1201

原创 监控二叉树

每一个监控器可以监控,它的子节点和父节点,如何使用最少的监控器来监控整个数呢?对于这个问题只需要设置三种状态,来应对不同的情况就可以了。/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solut

2020-10-22 14:30:33 65

原创 Android初步入门之Toolbar使用

Toolbar可以实现自定义的头部选项。可以根据场景自主选择。废话不多说,直接上代码。这是结果展示:首先, 修改values文件夹下的style.xml文件,设置没有actionbar的风格。<resources> <!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!

2020-10-21 22:27:44 186

原创 Android初步进阶之通知Notification

我了解到的通知,可以有三种展示类型,分别为普通通知、悬挂通知和折叠通知。而我们可以常用自定义视图、触发事件和权限等对它进行设置,个性化。下面介绍一个普通的通知的构建。示例代码:普通通知//触发事件 val mIntent:Intent = Intent(Intent.ACTION_VIEW, Uri.parse("http://www.baidu.com")) //通知管理器 val manager:Notification

2020-10-21 16:23:09 143 1

原创 Android初步进阶之RecyclerView的使用(二)

在上一篇文章的基础上,继续介绍RecyclerView。会介绍:使用RecyclerView实现GridView、实现瀑布式布局。Android初步进阶之RecyclerView的使用(一)使用RecyclerView实现GridView在活动中改变布局格式。import android.app.Activityimport android.os.Bundleimport android.view.Viewimport android.view.ViewGroupimport and

2020-10-21 15:06:58 105

原创 Android初步进阶之RecyclerView使用(一)

RecyclerView无论在性能还是灵活性上均优于ListView和GridView,因此,刚刚打算进阶就来学习了。在开始使用之前,首先,在build.gradle中设置依赖导入:implementation 'androidx.recyclerview:recyclerview:1.2.0-alpha05'然后,Sync Now。首先,废话不多说,先看一个例子,横向的RecyclerView实现:适配器的实现。import android.content.Contextimpor

2020-10-20 23:31:02 171

原创 正则表达式简单介绍

正则表达式为高级的文本模式匹配、抽取、与/或文本形式的搜索和替换功能提供了基础。列出一些常用的表达式,进阶的表达式不列出。

2020-10-19 22:44:09 75

转载 Pango-ERROR **: 15:31:09.214: Harfbuzz version too old (1.4.2)解决

这是由于软件的低版本造成的,Pango版本比较高,不适。解决方法看这里。

2020-10-19 15:54:23 2002

原创 Linux使用之JDK环境变量配置(Mint系统)

在配置JDK的环境变量时,由于是Mint系统,遇到了一些问题记下来。首先,我们要配置/etc/profile文件在最后加入如下代码:#PathJAVA_HOME=/home/oem/applications/jdk-14.0.2PATH=$JAVA_HOME/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport JAVA_HOMEexport CLASSPATHexport PATH然后,再分别

2020-10-19 11:22:52 216

原创 android入门之Kotlin实现创建圆形图片

根据图片的长和宽的最短那个来创建圆形图片,并且需要设置scaleType为fitCenter。package com.example.iplayer.ui;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Bitmap;import android.graphics.BitmapShader;import android.graphics.Canvas;im

2020-10-18 10:55:42 607

原创 Android入门之BroadCast使用

BroadCast作为一个通知的有效工具,在Android开发中具有很大的意义。下面给出一个示例:首先,创建我们的具体对通知进行操作的函数MyReceiver.kt。import android.content.BroadcastReceiverimport android.content.Contextimport android.content.Intentimport android.widget.Toastclass MyReceiver: BroadcastReceiver()

2020-10-17 10:51:55 141

原创 Android入门之数据存储技术

对于用户来说,一个新的APP就像一个橡皮泥,需要根据自己的需求,个性化定制为适合自己的样子,而用户设置之后,要保证下次打开的时候,仍然是设置后的状态,就需要用到数据存储技术。常见的数据存储技术:SharePreferences存储文件存储数据库存储Content Provider实现数据共享SharePreferences存储它适合用来存储少量数据。因此,类似配置信息和登录信息比较适合,大一点的文件适合采用其它的方式。位于手机/data/data/<应用程序包名>/share

2020-10-17 00:15:04 179

原创 Android入门之使用Kotlin实现ContentProvider实例

在上一次简单介绍了ContentProvider,在这里给出一个示例。下面我们的ContentProvider将创建一个表叫user(id integer, name varchar(30))。实现增、删、改、查。AndroidManifest.xml中声明首先,我们在AndroidManifest.xml中声明,<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="htt

2020-10-17 00:13:46 917

原创 Android入门之ScrollView

ScrollView和横向滑动一个尿性,都需要根据子组件的宽度,自己计算出应该设定的高度,才能够正常显示。下面一个示例,利用ScrollView合并两个ListView,从而实现多个List。测试用的视图,scroll_view.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:or

2020-10-14 11:09:00 220

原创 Android入门之Kotlin项目创建超时

创建Kotlin项目的时候,在下载一下必要的配置文件和扩展包的时候,需要下载的包都在国外,所以自然超时,这个时候就需要换源了。方法:找到build.gradle文件,将文件中的数据源进行更换为国内的阿里云。repositories { maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' } maven { url 'http://maven.aliyun.com/nexus/content/

2020-10-13 16:32:13 215

原创 Kotlin入门之异步和并发

多线程的设计,在遇到需要多个执行IO操作的时候,多个线程的阻塞,造成了效率的下降,这个时候异步就是不错的选择了。注意:下面许多操作都是新的库,比旧的版本可能没有。异步协程示例:fun main(args:Array<String>) {//创建异步操作 val job = launch( search() ) println("Hello, ") //等待job执行结束,程序结束 job.join() }sus

2020-10-12 15:44:54 288

原创 Kotlin入门之Kotlin中的设计模式

由四位大师提出的23种设计模式,对于程序的复用性有很大的意义,这里对于Kotlin中自己了解的几种设计模式进行介绍。下面将会介绍:单例模式、访问者模式、工厂模式、抽象工厂模式、构建者模式、观察者模式、策略模式、模板方法模式、迭代器模式、责任链模式、状态模式以及装饰器模式。(注意下面的模式都是基于Kotlin来讲解的)

2020-10-11 21:26:36 715

原创 Kotlin入门之反射

相信大多数人都在Java之中听说过反射,我们经常使用它来完成,我们对于目标类内原本无法访问的东西的操作。这里稍微对比一下Java反射,着重介绍Kotlin中的反射。首先,先要介绍一个概念-----元编程。什么是元编程?描述数据的数据我们称它为元数据。我们将程序看成描述需求的数据,进而得出描述程序的数据为元数据。而操作元数据的编程就可以称之为元编程。用一句话来概括就是:程序即是数据,数据即是程序。前半句指的是访问描述程序的数据,如我们通过反射获取类型信息。后半句是指将这些数据转化为对应的程序,即代码

2020-10-10 23:11:18 240

原创 Android入门之列表头部

滑动列表添加头部,具有很大的应用意义,我们平时在手机上,看到的几乎都是这种列表。为ListView添加头部这个比较简单,调用addHeader(View view)函数就可以了。View view = (View) convertView.findViewById(R.id.news_topic); ((ViewGroup)view.getParent()).removeView(view); LinearLayout.LayoutParams params1 =

2020-10-03 15:55:40 267

原创 Android入门之Adapter初识

Adapter作为安卓中数据显示和布局的重要组件,好好理解很重要。下面是它的继承关系。下面介绍几个比较常用的Adapter。ArrayAdapter适合并且也只能显示单个文本条目,用法:List<String> str = new ArrayList<>();....//填数据//参数分别为上下文,单项布局,数据源。ArrayAdapter adapter = new ArrayAdapter<String>(this, R.layout.list

2020-10-03 15:39:46 128 1

原创 Android入门之Navigation使用

在使用Fragment的时候,打算使用最新的Navigation,采用大家推荐的单Activity来完成应用的构建。要想使用Navigation,首先需要在res/navigation/下创建一个xml来设置自己的fragment页面,下面是代码示例。<?xml version="1.0" encoding="utf-8"?><navigation xmlns:android="http://schemas.android.com/apk/res/android" xmlns

2020-10-03 10:54:41 208

原创 Android初识之新手项目的坑(一)

自己做了一个小项目,做了一下b站的客户端,没有后台,只做了一部分页面。记下自己走过的坑。B站客户端小实践地址(GitHub)ListView的addHeader()函数,造成Fragment页面在手机闪退。ListView的addHeader()函数,在创建需要跟随列表一起滑动的列表时,是一个简单而且好用的方法。但是,网上的说法都是addHeader(view)要放在setAdapter()之前。但是,虽然在我的Android版本为10.+上的模拟器上运行正常,但是,手机上却出现了闪退。后来,经

2020-10-02 11:09:39 132

原创 Android初始之Intent

Intent作为Action之间的媒介,是Android的核心之一下面是Intent的知识图谱

2020-10-02 09:56:03 65

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除