自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

不想做菜鸟的小螃蟹

菜鸟成长记录,欢迎批评指正

原创 基于机器学习的android应用分类

学习目的:写一篇基于机器学习的Android应用分类的论文,标准为EI即可。整体思路:一、阅读论文&学习机器学习1.首先在同学们的推荐下,看了吴恩达《机器学习》的教学视频,看到10-几后面就没有再看了,中间也有很多知识点不太理解,只是对机器学习有了一个初步的认知。2.阅读了一些英文论文+中文论文。因为之后需要发表的是英文论文,所以开始都是直接看的英文论文。随后有点学不...

2019-05-07 11:22:58 600

原创 【Python】常用语法

1.遍历一个文件夹apks = 'C:\\xxx'filenames = os.listdir(apks)for filename in filesnames: #此处遍历出来的非完整路径,只是文件名字 do_something(apks+"\\"+filename) #绝对路径需要拼接处理2.判断一个文件或文件夹是否存在im...

2019-05-28 12:42:54 90

原创 【Linux】常用命令

$top #查看cpu占用$ps aux | grep key #key代表要查找的关键字$ls #查看当前目录下所有文件$cd xxx #进入xxx目录$mkdir filename #创建一个名为filename的文件夹$sudo nano xx.t...

2019-05-28 12:23:15 121

原创 【爬虫】分类爬取小米商店的apk

在网上找到了一篇文章 Python爬虫——爬取apk,写的很好,改造了一部分代码,如下主要遇到的几个问题有:问题1.ContentTooShort:问题2.502 BadGateWay:问题3.[WinError 10054] 远程主机强迫关闭了一个现有的连接问题1,可能是由于网络不稳定引起的,解决方案自定义一个auto_download,加入try-catch重试机制...

2019-05-06 17:20:12 1074

原创 【Linux】ubuntu虚拟机搭建Droidbox环境

历时一天半,终于成功搭上了droidbox环境。宿主机环境:windows7 64虚拟机:VMware Workstation ProLinux:Ubuntu 15.10主要步骤是按照该篇来进行的Droidbox恶意软件动态分析环境搭建1.遇到的第一个问题是,ubuntu虚拟机无法联网解决方案参照ubuntu虚拟机无法联网2.安装jdk和android ...

2019-04-23 16:18:45 535 7

原创 【Python】ModuleNotFoundError: No module named 'requests'

在github上找到了一个下载类的脚本,运行起来之后发现报错信息为没有“requests”模块,记录一下我的解决过程。点击“设置小图标”后,选“add local ...”,进入二级页面,选Existing environment ,后面的...,选择python安装的路径,并勾选“make available ...”,如果忘记了python安装在哪里,可以全局搜索,或在环境变量的配...

2019-04-09 11:23:00 3368

原创 【Android】使用glide加载未知尺寸图片导致OOM问题的解决方案

问题:app中有一个Activity用于查看大图,最近出现了一些超大图(内存占用超100M),导致app出现OOM导致的crash背景:大图的来源中只给出了图片的url,除此之外再无任何信息。图片url提供方对于提供图片其他信息(如宽/高),成本较高,讨论之后有客户端自己进行处理。 1⃣️OOM产生的原因内存占用量超过了vm能分配的最大内存量,或者一下子申请了一块非常大的内存(比如...

2018-12-20 17:47:18 3512 1

原创 【Android】搜索 请求与响应 时序问题的处理

最近遇到一个搜索方面的bug,背景:在TextView的afterTextChange回调中,实时使用textview中的字符串发起请求,但是一些输入法在输入 “(”时,会自动补齐为“()”,这样会发起两次搜索,且时差非常非常小(毫秒级),由于服务端的查询速度及网络速度的问题,可能出现“()”的搜索结果比“(”先回调的情况,导致搜索结果错误。想到的解决办法有三种:1⃣️延迟搜索,不实时搜索...

2018-12-19 16:45:45 282

原创 【Android】kotlin的let run apply also等等学习记录

好久没有更新啦,今天学习了一些kotlin的语法class MainActivity : AppCompatActivity() { private val testArray: ArrayList<String> by lazy { ArrayList<String>() } override fun onCreate(savedInstance...

2018-11-06 17:10:22 271 1

原创 【Android】include与ViewStub/merge

需求:正常情况下展示原有的文章详情页,当特殊情况--文章被删除时,展示一个"文章不存在"的兜底页。1⃣️正常页面 activity_main.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android...

2018-08-08 14:48:25 135

原创 【Android】apk瘦身技术分享

背景随着业务迭代,apk体积逐渐变大。项目中积累的无用资源,未压缩的图片资源等,都为apk带来了不必要的体积增加。调研了一些apk瘦身的方法后,总结如下。可用方法1.删除无用资源 2.删除无用方法 3.混淆(方法混淆&资源混淆 4.使用一套图片资源 5.图片压缩/其他图片格式 6.so兼容一个平台,动态下载7.精简第三方库删除无用资源1⃣️开启ShrinkResource在build.gr...

2018-07-08 15:08:12 959

原创 【Android】音乐播放器边播边缓存(三)AndroidVideoCache的先下载再播放

姊妹篇【Android】音乐播放器边播边缓存(一)AndroidVideoCache的使用方法【Android】音乐播放器边播边缓存(二)AndroidVideoCache的后台播放 当你好不容易找到了一个完美的边播边缓存的音乐播放器框架,(不知道该怎么形容的)产品经理忽然换需求了????一定要先下载再播放???!!!心里千万匹羊驼呼啸而过。但是还是得改不是?开始吧。1.思路1,改AndroidV...

2018-06-02 15:08:23 1549 1

原创 【Android】聊天demo

1.主要实现功能:①聊天界面的实现②状态栏沉浸③软键盘自动弹出④发消息后ScrollView的自动滚动,并使EditText再次获取焦点2.上个界面,看看是不是符合你的需求,符合的话继续向下看3.主界面在MainActivity中实现//onCreate中if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {//沉浸式状态栏的实现...

2018-06-02 11:31:48 1141

原创 【Android】Android Studio安装过程中遇到的问题

1.下载地址 http://www.android-studio.org ,下载ide及sdk文件,安装2.pull项目,进行编译生成ssh key3.kotlin项目,需要注意,Android Studio-Preferences-Instant Run- 把instant run disable掉,点击apply4.build过程中仍然会出现time out类的错误(建议先按照步骤5中的方法解...

2018-05-30 15:17:55 433

原创 【Android】音乐播放器边播边缓存(二)AndroidVideoCache的后台播放

上一篇:Android音乐播放器边播边缓存(一)AndroidVideoCache的使用方法第二篇记录一下,后台播放音乐的方式,没看过上一篇的朋友圈可以先移步 ↑ 链接。【Service】后台播放,那我们很容易的想到就是在Service里面进行。...

2018-05-30 11:33:48 1153

原创 【Android】kotlin使用记录

1.kotlin的引入首先打开Android Studio,File-New-New Project,选中include Kotlin Support(如果,新建一个项目时忘记include 或者 原有项目新引入kotlin时1⃣️在project的build.gradlebuildscript中加入 ext.kotlin_version = '1.2.41'dependencies中加入 cla...

2018-05-30 11:15:29 294

原创 【Java】语法特性之泛型

Java泛型的核心概念:告诉编译器想使用什么类型,然后编译器帮你处理一切细节。(《Java编程思想--第15章》)一、简单泛型1.Holder1只接受int类型的参数public class Holder1{ private int a; public class Holder(int a){this.a = a ;} public Holder1 get(){return...

2018-05-17 13:12:33 412

原创 【Java】语法特性之多态

今天面试遇到的一道题,啊还是答错了。回来敲一次代码,加深记忆。情景(一)父类与子类里面的方法都是public void A.javapublic class A{ public void a(){System.out.println(getClass().getSimpleName()+":a()");} public void b(){System.out.println(getClass(...

2018-05-16 20:20:44 156

原创 【Android】软键盘导致布局上移

android开发的过程中遇到软键盘弹起导致屏幕上移错乱。在Activity中的onCreate中,对布局进行设置。1.第一种,屏幕弹出,整个Activity 的界面进行上移,SOFT_INPUT_ADJUST_PAN是每次把屏幕留出一个软键盘的位置。getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_...

2018-05-12 20:22:09 2071 1

原创 【Android】音乐播放器边播边缓存(一)AndroidVideoCache的使用方法

最近在做音乐播放器类的需求,做了一段时间,抽出一段时间来整理一下。【前言】首先,记录一下如何找到我们与需求相关的开源库。可以在GitHub上进行搜索,我的主要需求是边播边缓存。因此我在GitHub上搜索“android”“cache”等关键词,搜到了这个 AndroidVideoCache,很好用。【使用流程】我也只是一个菜鸟,只阅读了一部分该源码的源码,所以在这里,我不讨论AndroidVide...

2018-04-28 16:30:53 5538 2

原创 【Git】将本地项目提交到远程

1.在Github网站或码云新建一个仓库2.在要上传的项目命令行依次输入echo "# meeting" >> README.mdgit initgit add README.mdgit commit -m "first commit"git remote add origin https://github.com/xxxx/xxxxx.gitgit push -u origi...

2018-04-27 13:34:08 292

原创 【Git】记录git常遇到的问题及解决方法

最近使用git遇到了一些问题,其中一些是反复遇到的。在这里做下记录。【教程】关于git入门学习,廖雪峰的主页写的真的简单易懂,还配有教学视频。https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000【分支】1.查看所有分支 git branch2.切换到某一分支 git checkout ...

2018-04-27 13:29:18 463

原创 【Android】recyclerView无数据,只显示一条数据

RecyclerView相比ListView,优化了许多,但是有许多要注意的地方。1.首先可能出现的情况是,recyclerView无数据展示。可能由如下原因导致:①getItemCount()方法要返回arrayList的长度,不能返回0.②要对recyclerView设置LayoutManager③数据发生变化以后,要通知adapter进行数据更新2.其次可能发生的情况是,只展示了一条数据!r...

2018-04-26 17:18:56 1581 2

原创 【Leetcode】665. Non-decreasing Array(Easy)

1.题目Given an array with n integers, your task is to check if it could become non-decreasing by modifying at most 1 element.We define an array is non-decreasing if array[i] <= array[i + 1] holds for...

2018-04-26 16:17:43 177

原创 【微信小程序】e.target.id和e.currentTarget.dataset.id的区别

1.需求page1展示一个列表,选中列表中的一项,获取该项的一些属性值,set到缓存里。page2 onLoad时从缓存里读取这个缓存,进行使用。2.原始代码①page1的xml文件 列表<view wx:for="{{courseList}}"> <template is="course_temp" data="{{item}}"></template&gt..

2018-04-24 16:10:51 27008 6

原创 【Leetcode】661. Image Smoother(Easy)

1.题目Given a 2D integer matrix M representing the gray scale of an image, you need to design a smoother to make the gray scale of each cell becomes the average gray scale (rounding down) of all the 8 s...

2018-04-24 15:49:39 95

原创 【Leetcode】657. Judge Route Circle(Easy)

1.题目Initially, there is a Robot at position (0, 0). Given a sequence of its moves, judge if this robot makes a circle, which means it moves back to the original place.The move sequence is represented ...

2018-04-24 14:26:10 67

原创 【算法】整钱分零钱的方法

昨天招商的笔试,第一道编程题。1.题目一位顾客有 k 元钱,想去银行兑换成零钱。银行有 n 种零钱, 分别输入零钱面额。第一行输入,顾客要询问几次;接下来每两行是一个测试用例。第一个数字代表银行有几种零钱,第二个数字数字代表顾客要换的钱数;第二行代表零钱的面值是多少。例如:33 51 2 53 61 2 34 1001 2 4 5 2.思路count记录顾客要询问几次,遍历count,第一个数字 ...

2018-04-23 12:38:29 1682

原创 【Leetcode】653. Two Sum IV - Input is a BST(Easy)

1.题目Given a Binary Search Tree and a target number, return true if there exist two elements in the BST such that their sum is equal to the given target.Example 1:Input: 5 / \ 3 6 / \ \...

2018-04-23 10:16:19 74

原创 【Android】ScrollView嵌套EditText出现的UI混乱

情景:在ScrollView中嵌套EditText,当EditText获取焦点时,会导致整个ScrollView自动下沉,软键盘也会遮挡住EditText.找了好几天办法,试图禁止ScrollView的自动滚动,没有用。看下效果图,巨恶心有木有。今天找到了一篇博文 https://blog.csdn.net/saroll57/article/details/44243397 ,虽然遇到的问题不一样...

2018-04-16 19:51:05 377

原创 【微信小程序】wx.request出现undefined

偶现,天啦噜,一直困惑了很久的bug终于找到原因了。示例代码如下wx.request({ sucess:function(res){ if(res.statusCode==200 && res.data.status==200){ //do something }else { console.lo...

2018-03-30 21:26:10 8408 1

原创 【Leetcode】645. Set Mismatch(Easy)

1.题目The set S originally contains numbers from 1 to n. But unfortunately, due to the data error, one of the numbers in the set got duplicated to another number in the set, which results in repetition ...

2018-03-29 11:02:49 244

原创 【Leetcode】643. Maximum Average Subarray I(Easy)

1.题目Given an array consisting of n integers, find the contiguous subarray of given length k that has the maximum average value. And you need to output the maximum average value.Example 1:Input: [1,12,...

2018-03-29 10:44:45 84

原创 【Leetcode】637. Average of Levels in Binary Tree(Easy)

1.题目Given a non-empty binary tree, return the average value of the nodes on each level in the form of an array.Example 1:Input: 3 / \ 9 20 / \ 15 7Output: [3, 14.5, 11]Explanatio...

2018-03-29 10:36:09 76

原创 【Android】fragment切换的demo

1.文件准备:①MainActivity.java activity_layout.xml;②3-4个Fragmentxx.java   fragmentxx.xml;③一个颜色资源文件,用于按钮切换的展示。④style文件,同一管理按钮的样式。2.MainActivitypublic class MainActivity extends AppCompatActivity { priv...

2018-03-28 11:43:41 736

原创 【Leetcode】633. Sum of Square Numbers(Easy)

1.题目Given a non-negative integer c, your task is to decide whether there're two integers a and b such that a2 + b2 = c.翻译:给定一个非负整数 c ,你的任务是判断是否有两个整数 a 和 b ,使得a2 + b2 = c.Example 1:Input: 5Output: Tru...

2018-03-28 10:59:22 103

原创 【Leetcode】628. Maximum Product of Three Numbers(Easy)

1.题目Given an integer array, find three numbers whose product is maximum and output the maximum product.翻译:给定一个整数序列,找到三个数使得它们的乘积最大,并且输出最大的乘积。Example 1:Input: [1,2,3]Output: 6Example 2:Input: [1,2,3,4...

2018-03-28 10:50:52 122

原创 【Leetcode】627. Swap Salary(Easy)

1.题目Given a table salary, such as the one below, that has m=male and f=female values. Swap all f and m values (i.e., change all f values to m and vice versa) with a single update query and no intermed...

2018-03-28 10:44:36 122

原创 【Leetcode】620. Not Boring Movies(Easy)

1.题目X city opened a new cinema, many people would like to go to this cinema. The cinema also gives out a poster indicating the movies’ ratings and descriptions.Please write a SQL query to output movie...

2018-03-28 10:38:17 114

原创 【Leetcode】617. Merge Two Binary Trees(Easy)

1.题目Given two binary trees and imagine that when you put one of them to cover the other, some nodes of the two trees are overlapped while the others are not.You need to merge them into a new binary tr...

2018-03-28 10:31:48 59

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