<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Tongson]]></title><description><![CDATA[新手~Do u like coding?]]></description><link>https://blog.youkuaiyun.com/GePriniusce</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; GePriniusce]]></copyright><item><title><![CDATA[QT Creator MacOS 格式化代码块快捷键]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/131051859</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/131051859</guid><author>GePriniusce</author><pubDate>Mon, 05 Jun 2023 17:02:19 +0800</pubDate><description><![CDATA[commond+;]]></description><category></category></item><item><title><![CDATA[走进Java Android 的线程世界]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/74165087</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/74165087</guid><author>GePriniusce</author><pubDate>Wed, 05 Jul 2017 17:23:12 +0800</pubDate><description><![CDATA[直奔主题首先我们来看看Java的线程通讯基础
    //产品
    static class ProductObject{
        //线程操作变量可见
        public volatile static String value;
    }    //生产者线程
    static class Producer extends Thread{
        Object]]></description><category></category></item><item><title><![CDATA[RxJava]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/72773838</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/72773838</guid><author>GePriniusce</author><pubDate>Wed, 31 May 2017 02:00:06 +0800</pubDate><description><![CDATA[RxJava
  RxJava是啥？呵呵！？ 
  关键是事件变换，线程调度,响应式编程 
  而怎么实现这些呢：最关键的就是接口泛型！ 
  实现这些有什么用呢？
基本概念Observable： 被观察者 
OnSubscrible： 观察者 
Operator： 观察者 
Subscriber： 订阅者->其实也是一个观察者首先我们要搞懂这三者之间的关系， 
其实很简单 
Action：  Ca]]></description><category></category></item><item><title><![CDATA[GitHub上Daily项目的个人分析]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/71077659</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/71077659</guid><author>GePriniusce</author><pubDate>Thu, 04 May 2017 09:55:32 +0800</pubDate><description><![CDATA[对github上别人项目的分析。觉得他框架搭的不错。好好向他学习学习。 
  https://github.com/spring2613/Daily 
  项目亮点颇多，自己找了自己觉得不错的点，分析分析。


下面就开始分析一下吧：



Application

我分析代码通常从Application开始分析起来，那么就先看看别人的Application怎么做的吧。 
清单文件中：]]></description><category></category></item><item><title><![CDATA[Android VectorDrawable -->SVG]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/70889050</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/70889050</guid><author>GePriniusce</author><pubDate>Fri, 28 Apr 2017 10:53:34 +0800</pubDate><description><![CDATA[绘制svg图Inkscapehttps://inkscape.org/en/Boxy SVGJanvas - The Online Vector Graphics Editorhttp://www.janvas.com/XOSYSTEM/PROJECTS/janvas_apps_suite_3.0_public/janvas_application.phpyyywebhttp://www.yyywe]]></description><category></category></item><item><title><![CDATA[一步一步走向自定义控件]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/59112089</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/59112089</guid><author>GePriniusce</author><pubDate>Sat, 01 Apr 2017 10:08:40 +0800</pubDate><description><![CDATA[widget]]></description><category></category></item><item><title><![CDATA[搭建Android项目:AS+GitHub+aar+maven（GitHub上的）]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/55135832</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/55135832</guid><author>GePriniusce</author><pubDate>Sat, 25 Feb 2017 16:22:00 +0800</pubDate><description><![CDATA[Android项目：AS+GitHub+aar+maven（GItHub上的）]]></description><category></category></item><item><title><![CDATA[Android中Cursor类的概念和用法]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/52573520</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/52573520</guid><author>GePriniusce</author><pubDate>Sun, 18 Sep 2016 13:14:59 +0800</pubDate><description><![CDATA[在你理解和使用 Android Cursor 的时候你必须先知道关于 Cursor 的几件事情：

Cursor 是每行的集合。
使用 moveToFirst() 定位第一行。
你必须知道每一列的名称。
你必须知道每一列的数据类型。
Cursor 是一个随机的数据源。
所有的数据都是通过下标取得。
关于 Cursor 的重要方法：

close()
关闭游标，释放资源
co]]></description><category></category></item><item><title><![CDATA[Java程序员必须知道的10个调试技巧]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/52141331</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/52141331</guid><author>GePriniusce</author><pubDate>Sun, 07 Aug 2016 09:57:59 +0800</pubDate><description><![CDATA[转自：JAVA开发者联盟




调试可以帮助识别和解决应用程序缺陷，在本文中，作者将使用大家常用的的开发工具Eclipse来调试Java应用程序。但这里介绍的调试方法基本都是通用的，也适用于NetBeans
 IDE，我们会把重点放在运行时上面。











在本文中使用的是Eclipse Juno版（Eclipse 4.2），在开始前给大家提3点建]]></description><category></category></item><item><title><![CDATA[初学者在java学习中常见的30个问题]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/52060587</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/52060587</guid><author>GePriniusce</author><pubDate>Fri, 29 Jul 2016 03:47:50 +0800</pubDate><description><![CDATA[本文回答了30个JAVA入门级初学者的常见问题。如我可以用%除以一个小数吗? a += b 和 a = a + b 的效果有区别吗? 声明一个数组为什么需要花费大量时间? 为什么Java库不用随机pivot方式的快速排序?

1.2 基本数据类型

Q. 为什么 -0/3 结果是 0，而 -0.0/3.0 结果是 -0.0?(注意后边的结果0带负号)

A. 在Java里，整数是用补码]]></description><category></category></item><item><title><![CDATA[Android开发实践：使用Service还是Thread]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/52060581</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/52060581</guid><author>GePriniusce</author><pubDate>Fri, 29 Jul 2016 03:38:22 +0800</pubDate><description><![CDATA[Service是Android的四大组件之一，被用来执行长时间的后台任务，同样，线程也可以实现在后台执行任务，它们的区别在哪呢？何时使用Service何时使用Thread呢？今天我也来说说我的理解和总结。

首先，需要了解Service的几个特点。

（1） 默认情况下，Service其实是运行在主线程中的，如果需要执行复杂耗时的操作，必须在Service中再创建一个Thread来执行任务]]></description><category></category></item><item><title><![CDATA[关于Android的.so文件你所需要知道的]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/52060578</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/52060578</guid><author>GePriniusce</author><pubDate>Fri, 29 Jul 2016 03:34:49 +0800</pubDate><description><![CDATA[早期的Android系统几乎只支持ARMv5的CPU架构，你知道现在它支持多少种吗？7种！

Android系统目前支持以下七种不同的CPU架构：ARMv5，ARMv7 (从2010年起)，x86 (从2011年起)，MIPS (从2012年起)，ARMv8，MIPS64和x86_64 (从2014年起)，每一种都关联着一个相应的ABI。

应用程序二进制接口（Application Bi]]></description><category></category></item><item><title><![CDATA[与 so 有关的一个长年大坑]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/52060577</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/52060577</guid><author>GePriniusce</author><pubDate>Fri, 29 Jul 2016 03:33:32 +0800</pubDate><description><![CDATA[Android 应用开发中不可避免的会引入第三方的代码。如果是开源项目风险相对可控，如果引入商用的 SDK 那就要谨慎了，难免会有这样或那样的问题。比如我们今天要说的这一个。



对集成过第三方 SDK 的同学，上图中的目录结构应该不陌生。正常情况下我们只需要将不同版本的 so 文件分别放置。但如果我们要集成的这个第三方 SDK 偏偏没有 arm-v7a 的版本呢？是删除 armeabi]]></description><category></category></item><item><title><![CDATA[Android 进程保活]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/52060573</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/52060573</guid><author>GePriniusce</author><pubDate>Fri, 29 Jul 2016 03:26:10 +0800</pubDate><description><![CDATA[http://www.androidchina.net/4812.html]]></description><category></category></item><item><title><![CDATA[Android 源码中的设计模式]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/52060467</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/52060467</guid><author>GePriniusce</author><pubDate>Fri, 29 Jul 2016 02:18:27 +0800</pubDate><description><![CDATA[面向对象的六大原则

单一职责原则所谓职责是指类变化的原因。如果一个类有多于一个的动机被改变，那么这个类就具有多于一个的职责。而单一职责原则就是指一个类或者模块应该有且只有一个改变的原因。通俗的说，即一个类只负责一项职责，将一组相关性很高的函数、数据封装到一个类中。开闭原则对于扩展是开放的，这意味着模块的行为是可以扩展的。当应用的需求改变时，我们可以对模块进行扩展，使其具有满足那些改变的新行为]]></description><category></category></item><item><title><![CDATA[Android工程师面试题大全]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/51985415</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/51985415</guid><author>GePriniusce</author><pubDate>Thu, 21 Jul 2016 18:14:15 +0800</pubDate><description><![CDATA[Java基础：

1、内存泄露的原因：

资源对象没关闭。
如Cursor、File等资源。他们会在finalize中关闭，但这样效率太低。容易造成内存泄露。
SQLiteCursor，当数据量大的时候容易泄露使用Adapter时，没有使用系统缓存的converView。即时调用recycle（）释放不再使用的Bitmap。
适当降低Bitmap的采样率，如：

BitmapFa]]></description><category></category></item><item><title><![CDATA[Fragment和Activity生命周期以及横竖屏切换对生命周期的影响]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/51985394</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/51985394</guid><author>GePriniusce</author><pubDate>Thu, 21 Jul 2016 18:11:32 +0800</pubDate><description><![CDATA[Fragment生命周期图解，fragment和activity生命周期对比



生命周期变化 : 切换到该Fragment
05-21 14:26:35.095: D/FragmentDemo(7649): onAttach
 05-21 14:26:35.095: D/FragmentDemo(7649): onCreate
 05-21 14:26:35.095: D/Fragm]]></description><category></category></item><item><title><![CDATA[AndroidManifest.xml官方介绍]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/51985284</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/51985284</guid><author>GePriniusce</author><pubDate>Thu, 21 Jul 2016 17:57:42 +0800</pubDate><description><![CDATA[每个Android应用的根目录中都必须包含一个 AndroidManifest.xml 文件。 清单文件为 Android 系统提供有关您的应用的基本信息，系统必须获得这些信息才能运行任意应用代码。

此外，清单文件还可执行以下操作：

1,为应用的 Java 软件包命名。即：构成应用的 Activity、服务、广播接收器和内容提供程序。

2,为实现每个组件的类命名并发布其功能（例如]]></description><category></category></item><item><title><![CDATA[Java 正则表达式]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/51985250</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/51985250</guid><author>GePriniusce</author><pubDate>Thu, 21 Jul 2016 17:54:15 +0800</pubDate><description><![CDATA[正则表达式定义了字符串的模式。

正则表达式可以用来搜索、编辑或处理文本。

正则表达式并不仅限于某一种语言，但是在每种语言中有细微的差别。

Java正则表达式和Perl的是最为相似的。

java.util.regex包主要包括以下三个类：

Pattern类：pattern对象是一个正则表达式的编译表示。Pattern类没有公共构造方法。要创建一个Pattern对象，你必]]></description><category></category></item><item><title><![CDATA[Android_Service多线程断点下载]]></title><link>https://blog.youkuaiyun.com/GePriniusce/article/details/51984933</link><guid>https://blog.youkuaiyun.com/GePriniusce/article/details/51984933</guid><author>GePriniusce</author><pubDate>Thu, 21 Jul 2016 17:25:04 +0800</pubDate><description><![CDATA[Android中实现单线程下载文件是比较容易的，可是要使得自己的应用支持多线程断点下载就要考虑到很多细节了，今天我们一起来探讨一下多线程断点下载时怎么实现的。

首先先画一张图说明一下Android中下载文件的大致流程：



上面的图介绍的是比较清楚的，我们要下载一个文件，首先需要在Activity中选择需要下载的目标，然后把下载的任务交个Service中（这里为什么要交给Servi]]></description><category></category></item></channel></rss>