中国首位00后CEO公然抄袭、复制我的开源作品

中国首位00后CEO公然抄袭、复制我的开源作品这几天我们或许都看到了这样的新闻,标题大多数为:《中国首位00后CEO…》,连雷军都进行了转发(如下)。但今天意想不到的事却发生了…9.4号晚上,有一个我项目的关注者在我的开源项目智能电视桌面提了一个issue问题(截图如下),智能电视桌面项目其中一个产品是猫桌面,是我在GitHub开源社区发布的一款智能电视桌面,按照Google官方TV交互规范开发。一...
阅读(4841) 评论(30)

关于Dalvik,我们该知道些什么?

Dalvik和JVM的区别 Dex文件的结构 Dalvik如何加载Class Dalvik和JVM的区别Dalvik和JVM最主要区别是它们分别具有不同的类文件格式和指令集。Dalvik使用的是dex(Dalvik Executable)格式的类文件,而Java虚拟机使用的是class格式的类文件。Dalvik的指令是基于寄存器的,而JVM的指令是基于堆栈的,因此Dalvik需要更多的指令空间...
阅读(153) 评论(0)

Too many classes in --main-dex-list, main dex capacity exceeded | 主Dex引用太多怎么办?

主 dex 里面会有 Application、Activity、Service、Receiver、Provider、Instrumentation、BackupAgent 和 Annotation。当这些类以及直接引用类比较多的时候,都要塞进主 dex ,就会引发 main dex capacity exceeded build error 。在Lollipop之前的设备上,主Dex仅仅被Frame...
阅读(101) 评论(0)

Hello Kotlin

前世今生 有什么样的语法? 语法是怎么实现的? 如何编译的? 迁移成本 为我们带来什么改变? 前世今生设计出发点 Concise — 简洁 Safe — 安全 Interoperable — 协作 目标Statically typed programming language for modern multiplatform applications 静态类型编程语言用于现代多平台应用...
阅读(122) 评论(0)

JVM 答疑解惑

JVM是什么? 平常接触的东西都存在哪里? 类如何加载? 怎么运行? 清洁工怎么工作?JVM是什么?Java 虚拟机屏蔽了与具体操作系统平台相关的信息,使得 Java 语言编译程序只需生成在 Java 虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java 虚拟机在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。Java 虚拟机就像一个熟悉多个国家语...
阅读(95) 评论(0)

数据库到底哪家强?

目前大部分开源数据库都是基于SQLite发展而来,如SQLBrite、OrmLite、DBFlow、GreenDao等等,还有一个是Realm框架不是基于 SQLite 创建,它建立了自己独特的数据库存储引擎。那这么多框架到底有什么区别,那种更适合自己的产品呢? 我们先看基于SQLite发展而来的框架,这方面主要分成两条发展路线,一条是Rx或者叫做对象映射(OM)路线,一条是对象关系映射(ORM)...
阅读(187) 评论(0)

Android模块化与组件化--多模块区分编译

模块化与组件化–多模块区分编译 示例地址:https://github.com/JackyAndroid/Android-Architecture-Fairy/tree/master/multi-variants-library Android-Architecture-Fairy开源项目重点分析主流技术与架构设计,欢迎star 有时我们一个项目中存在多个产品形态,且不同产品需要不同的编译...
阅读(1223) 评论(0)

国内一线互联网公司内部面试题库

国内一线互联网公司内部面试题库面试题库地址面试题来自于百度、小米、乐视、美团、58、猎豹、360、新浪、搜狐内部题库熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。...
阅读(29447) 评论(14)

来,谷歌安卓浏览器源码就在这!

谷歌浏览器安卓版源码项目 本项目是世界级的安卓架构 理清本项目业务逻辑完全可以胜任国内一线公司工程师 本项目会长期跟进并升级谷歌浏览器内核版本,欢迎star...
阅读(9115) 评论(30)

Android Framework是怎么启动的?

Framework运行环境是怎样的?安卓系统启动过程其实是建立一套系统运行需要的环境。 Framework运行环境如下:安卓系统中运行的第一个Dalvik虚拟机叫做zygote,意思是“卵”。这个“卵”还是挺有用的,因为接下来所有的Dalvik虚拟机进程都是这个“卵”孵化出来的。zygote进程中包含两个主要模块,分别如下: Socket服务端。用于接收启动新的Dalvik进程的命令。 Frame...
阅读(2872) 评论(3)

Android 一个窗口是怎么创建出来的?

前言 在WmS看来窗口并不是Window类,而是一个View类。WmS收到用户消息后,需要把消息发送到窗口,View类其实并不能直接接受传递过来的消息,而接受消息的必须是IWindow类,实现IWindow类的是ViewRoot.W类,每一个W内部都包含了一个View变量。 WmS不在意该窗口是哪个应用程序的,WmS按一定得规则判断哪个窗口处于活动状态,然后把用户消息给W类,W类再把用户消息传...
阅读(2639) 评论(5)

Android Context 到底是什么?

什么是Context?一个Context意味着一个场景,一个场景就是我们和软件进行交互的一个过程。比如当你使用微信的时候,场景包括聊天界面、通讯录、朋友圈,以及背后的一些数据。那么从程序的角度来看,Context是什么?其实一个Activity就是一个Context,一个Service也是一个Context。一个应用程序可以认为是一个工作环境,用户在这个工作环境中会切换到不同的场景,这就像一个助理,...
阅读(2403) 评论(4)

我眼中的Android Framework

我眼中的Android Framework在开发中我们会遇到各种各样的非常奇怪的问题,有些问题是百思不得骑姐。其实这些问题大都是因为我们不了解安卓内部运行原理,知其所以然才是我们的目的。—前言任何控制类程序都有一个入口,安卓程序也是。 framework包含三个部分:服务端、客户端、linux驱动。服务端服务端主要包含两个重要的类:WindowManagerService和ActivityMana...
阅读(8147) 评论(2)

Android 设计模式-单例模式

Android 设计模式-单例模式什么情况下需要单例模式? 一些类提供公共功能供别人调用,本身不会处理业务逻辑 类会被许多类和线程调用 设计单例模式public class Singleton{ private static Singleton mSingleton; private Singleton(){ } public static Singleton getInstance(){ if(m...
阅读(1270) 评论(1)

东半球最好的TV桌面开源项目

欢迎在GitHub或者CSDN上关注我GitHub: https://github.com/JackyAndroidCSDN: http://blog.csdn.net/rain_butterflyAndroidTVLauncher这是一个TV 桌面,包含了一个Leanback 桌面(最低版本是17)和一个普通桌面(最低版本是15),Leanback桌面是基于Leanback库开发符合Android...
阅读(9775) 评论(24)

让我们如此享受的慢性毒药

时刻提醒自己,不要忘记了最初的梦想。大学一毕业,我就道南京找男朋友云了。云的表舅在南京有家公司,他毕业后一直在那里工作,每个月拿1000出头的工资打发日子.我自己找了家小小的文化公司打工,每月1000元的微薄收入,也算高高兴兴上班了.  从此。我和云开始了看似快乐的生活.每天下班后便相拥在租来的小屋里看电视 。从下午6点的新闻一直到晚上十点的黄金剧场再到深夜的午夜剧场。每天持续6~7个小时躺在...
阅读(1757) 评论(2)

Android 代码检查工具SonarQube

代码检查工具能帮我们检查一些隐藏的bug,代码检查工具中sonar是比较好的一个。官网Sonar 概述        Sonar 是一个用于代码质量管理的开放平台。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具。与持续集成工具(例如 Hudson/Jenkins 等)不同,Sonar 并不是简单地把不同的代码检查工具结果(例如 FindBugs,PMD 等)直接显...
阅读(13726) 评论(8)

Android 外网连接解决方案

有时候我们连接上一个没有外网连接的WiFi或者有线就会出现这种极端的情况,目前Android SDK还不能识别这种情况,一般的解决办法就是ping一个外网。方案:/** * @author suncat * @category 判断是否有外网连接(普通方法不能判断外网的网络是否连接,比如连接上局域网) * @return */ public static final boolea...
阅读(6921) 评论(2)

Android 视频深入解析

Android自带的播放视频有几种方法:   第一种方式是使用MediaPlayer 结合SurfaceView 来播放,通过MediaPlayer来控制视频的播放、暂停、进度等;   第二种方式是使用VideoView 来播放,这个类其实也是继承了SurfaceView 类,并且实现了MediaController. MediaPlayerController 这个用于控制媒体播放的接口,另外在...
阅读(7361) 评论(0)

Android 常用adb shell 命令

调试Android程序有时需要adb shell 命令,adb全称Android Debug Bridge ,就是起到调试桥的作用。通过adb我们可以在Eclipse中通过DDMS来调试Android程序,说白了就是debug工具。adb通过监听Socket TCP 5554等端口让IDE和Qemu通讯。默认情况下当我们运行Eclipse时adb进程就会自动运行。adb是一个C/S模式的程序,由三...
阅读(17557) 评论(0)
73条 共4页1 2 3 4 下一页 尾页