分类:移动开发

一个简单实用的Android调试应用技巧

一个简单实用的Android调试应用技巧
在应用开发中,我们常常会进行日志打印或者debug调试,以此来分析运行时的一些信息,便于发现bug和问题。Android Studio的Debug功能很好用,但是有时候有些情况下,就显得不是那么快捷和便利。 比如 我们调试的点在应用一打开的时候,很靠前,例如Applica...

我学习Android的一些套路

我学习Android的一些套路
今天我将给大家分享一下我学习Android的一些方法和想法,分享中并不局限于Android哪一块怎么学习。而是一个总体的,普适性的学习套路和方法。希望可以帮助大家解决一些问题。 注意本文为知乎Live底稿,知识点相对分散,后面部分包含了一些听众提出的问题,但是不影响总体的阅读和理...

网站第一次被黑的记录

网站第一次被黑的记录
一直以来技术小黑屋的博客都运行良好,总以为一个全部静态的博客不会导致被黑。直到最近才着实地体验了一次被黑的滋味。仅以此文记录一下,便于给同样问题的人一些帮助。 大概是周三(2018年1月17号)的时候,有人反馈,访问我的网站,会跳转到支付宝。当然还奇怪,调到支付宝有个甚用,后来使...

关于应用Kotlin后的编译速度问题

关于应用Kotlin后的编译速度问题
2017年 Kotlin 被 Google 钦定为 Android 开发官方语言之一后,便如火如荼。很多团队开始应用了Kotlin,可谓是收益良多,可是也有一些问题,一个比较明显的就是Kotlin应用后编译速度会比较慢。这种感觉就像我们从Eclipse迁移到Android Stu...

Android基于坐标对View进行模拟点击事件

Android基于坐标对View进行模拟点击事件
在Android中,我们对于View进行模拟点击事件,很容易,比如调用View.performClick即可。 但是有些时候,我们想要更加精细的点击,比如View的某一区域或者某一点进行点击。比如下面的例子。 上面是一个WebView加载了一个视频,我们必须手动点一下播放...

关于改善强迫症的一些方法

关于改善强迫症的一些方法
一直以来我都有强迫症,尤其是毕业工作后,明显地感觉更加严重了。经常反复确认水龙头有没有关,锁门后下楼梯,往往又要上来检查一下是否真的锁上。总是担心天然气气有没有关紧。如此种种,每一天在出门离家的时候都是最痛苦的时段。 种种焦虑都是基于自己的某种相对极端的幻想,比如水龙头没有...

Android中实现用户无感知处理后台崩溃

Android中实现用户无感知处理后台崩溃
正所谓,要想没有bug,就一行代码也不写。App到了用户的手里,肯定是崩溃越少越好。Android中的崩溃处理和iOS不太一样,iOS崩溃通常是闪退,而安卓会出现如下的蹩脚的对话框 当你的用户看到类似这样的崩溃对话框时,心中得到“这届程序员不行啊”的感慨也不足为奇。 在安...

[原]Flutter 安装和初体验

[原]Flutter 安装和初体验
在前面的文章中,我们初步了解了Flutter。本文将介绍Flutter的安装过程和开发工具,为了大家能更好地理解Flutter,本文还找了一个小例子。 Flutter 安装指南 关于Flutter的安装,参考官方文档中的步骤即可。本文以macOS为例,介绍Flutter在...

[原]论程序员成长的正确姿势

[原]论程序员成长的正确姿势
何为成长?成长是指自我提升,一方面是本身的个人能力,另一方面是社会对你的认可度。最终,程序员的职位和薪水都能在成长中得以体现。 很多人对成长有误解,在他们眼中,随着工作年限的提高,成长是理所当然的事情,这其实是一个误区。两个程序员同时工作3年,难道他们两个的成长就完全一样吗?...

[原]全面理解Gradle – 定义Task

[原]全面理解Gradle – 定义Task
系列文章回顾 Gradle从入门到实战 – Groovy基础 全面理解Gradle – 执行时序 之前我们讲述了Groovy的语法,还讲述了Gradle的执行时序,本篇文章讲述下Task的定义。 Task可以理解为Gradle的执行单元,实在是太重要了。...