<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zhouyongyang621的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/zhouyongyang621</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zhouyongyang621]]></copyright><item><title><![CDATA[H5为主的Hybrid App技术方案的设想]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/47000841</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/47000841</guid><author>zhouyongyang621</author><pubDate>Wed, 22 Jul 2015 11:31:00 +0800</pubDate><description><![CDATA[现状和背景：

目前的应用基本都是原生的，虽然有hybrid的成分，但比例很低，主要用于活动页面一类。
这在几年前是可以理解的，移动设备的性能还没有那么强。随着硬件的飞快发展，现在的移动设备虽然和PC还有差距，但已经足够支持复杂的H5内容。



设想：


主要思路

APP以H5实现为主，而不是仅限于活动页面不使用比较流行的SPA（single page applica]]></description><category></category></item><item><title><![CDATA[Android 离线播放 (HLS)m3u8文件]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/47000533</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/47000533</guid><author>zhouyongyang621</author><pubDate>Wed, 22 Jul 2015 11:17:32 +0800</pubDate><description><![CDATA[关于HLS(m3u8)文件的介绍 在baidu一下有很多很好的文章了，在这我就不多说了。
android是在sdk4.0以后才开始支持m3u8的播放,此文章便是在sdk4.0以后才适用。
sdk4.0以后可以使用VideoView来直接播放m3u8文件,但它只支持视频的在线播放,如果你的app需要支持视频的离线下载,然后在没有网络的情况下用VideoView播放本地下载好的m3u8文件
 那]]></description><category></category></item><item><title><![CDATA[处理js手势与android view手势的冲突]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/47000237</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/47000237</guid><author>zhouyongyang621</author><pubDate>Wed, 22 Jul 2015 11:05:00 +0800</pubDate><description><![CDATA[如上图所示：
界面分为页签(HorizontalScrollView)和内容展示(ViewPager)二部分。
每个页签(头条，推荐...)对应一个WebView 。
每个WebView又包涵图片展示区(可以左右滚动查看图片)和数据内容展示区(一个内容集合 类似android的listView)。
内容展示(ViewPager)是支持左右手势来查看上/下一个页签内容 比如在“头条”页签时可]]></description><category></category></item><item><title><![CDATA[Android4.2下 WebView的addJavascriptInterface漏洞解决方案]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/47000041</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/47000041</guid><author>zhouyongyang621</author><pubDate>Wed, 22 Jul 2015 10:56:52 +0800</pubDate><description><![CDATA[最近接到公司安全部门提出的关于app js调用的一个安全漏洞,这个漏洞是乌云平台(http://www.wooyun.org）报告出来的。

mWebView.addJavascriptInterface(new JSCallManager(), "Native");
向WebView注册一个名叫“Native”的对象，然后在JS中可以访问到Native这个对象，就可以调用这个对象的一些方法]]></description><category></category></item><item><title><![CDATA[android opengl es--星星，旋涡]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6304737</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6304737</guid><author>zhouyongyang621</author><pubDate>Wed, 06 Apr 2011 15:19:00 +0800</pubDate><description><![CDATA[package zhou.ne.he;import zhou.ne.he.four.FourRend;import zhou.ne.he.one.OneRend;import zhou.ne.he.thri.ThriRend;import zhou.ne.he.two.TwoRend;import android.app.Activity;import android.opengl.GLSurfaceView;import android.os.Bundle;import android.view.KeyE]]></description><category></category></item><item><title><![CDATA[android opengl es--纹理映射，光照]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6304729</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6304729</guid><author>zhouyongyang621</author><pubDate>Wed, 06 Apr 2011 15:16:00 +0800</pubDate><description><![CDATA[import zhou.ne.he.four.FourRend;import zhou.ne.he.one.OneRend;import zhou.ne.he.thri.ThriRend;import zhou.ne.he.two.TwoRend;import android.app.Activity;import android.opengl.GLSurfaceView;import android.os.Bundle;import android.view.KeyEvent;import android]]></description><category></category></item><item><title><![CDATA[android opengl es--立方体]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6304724</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6304724</guid><author>zhouyongyang621</author><pubDate>Wed, 06 Apr 2011 15:13:00 +0800</pubDate><description><![CDATA[import zhou.ne.he.four.FourRend;import zhou.ne.he.one.OneRend;import zhou.ne.he.thri.ThriRend;import zhou.ne.he.two.TwoRend;import android.app.Activity;import android.opengl.GLSurfaceView;import android.os.Bundle;import android.view.KeyEvent;import android]]></description><category></category></item><item><title><![CDATA[android opengl es--三角形，四边形]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6304708</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6304708</guid><author>zhouyongyang621</author><pubDate>Wed, 06 Apr 2011 15:10:00 +0800</pubDate><description><![CDATA[import java.nio.FloatBuffer;import javax.microedition.khronos.egl.EGLConfig;import javax.microedition.khronos.opengles.GL10;import android.opengl.GLSurfaceView;public class OneRend implements GLSurfaceView.Renderer { float oneF = 1.0f; float quadRotate = 0]]></description><category></category></item><item><title><![CDATA[如何反编译APK文件]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6012196</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/6012196</guid><author>zhouyongyang621</author><pubDate>Tue, 16 Nov 2010 14:02:00 +0800</pubDate><description><![CDATA[<br />工具准备：<br />1.  zip, rar解压工具<br />2. AXMLPrinter（转换为可读的xml，下载地址：http://code.google.com/p/android4me/downloads/list ）<br />3. dex2jar（将.dex文件反编译成.jar文件，下载地址：<br />http://code.google.com/p/dex2jar/downloads/list ）<br />4. JD-GUI （将.jar文件反编译成.java文件，下载地址]]></description><category></category></item><item><title><![CDATA[权限 shareuser certificat Runtime.exec]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5954383</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5954383</guid><author>zhouyongyang621</author><pubDate>Wed, 20 Oct 2010 15:57:00 +0800</pubDate><description><![CDATA[<br />http://topic.youkuaiyun.com/u/20100120/13/376b0dd0-3d38-4587-94f6-1759123cdbcc.html?73205<br /> <br /> <br /> <br />在 [Mokoid
] 的 LedTest 範例裡，找到 [AndroidManifest.xml
] 檔案。這個檔案為應用程式的「交貨清單」；在開發 LedTest 的過程中，我們加入了一個屬性如下：<manifest xmlns:android="http://schem]]></description><category></category></item><item><title><![CDATA[Android 屏幕旋转时保存状态]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5953696</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5953696</guid><author>zhouyongyang621</author><pubDate>Wed, 20 Oct 2010 11:26:00 +0800</pubDate><description><![CDATA[默认情况下我们在旋转Android屏幕时,会重新跑”onCreate”相当于会重新启动程序.
很多时候我们不希望它”重新启动”程序.用下面的方法就可以达到这种效果.1.在manifest里加上这句android:configChanges=”orientation|keyboardHidden”1
2
3
4
5
6
7
]]></description><category></category></item><item><title><![CDATA[android中的webkit介绍]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5953341</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5953341</guid><author>zhouyongyang621</author><pubDate>Wed, 20 Oct 2010 10:05:00 +0800</pubDate><description><![CDATA[<br /><br />WebKit – WebKit For Android<br />一、WebKit简介<br />WebKit是一个开源的浏览器网页排版引擎，包含WebCore排版引擎和JSCore引擎。<br />WebCore和JSCore引擎来自于KDE项目的KHTML和KJS开源项目。Android平台的Web<br />引擎框架采用了WebKit项目中的WebCore和JSCore部分，上层由Java语言封装，并且作<br />为API提供给Android应用开发者，而底层使用WebKit]]></description><category></category></item><item><title><![CDATA[Android开机自动启动程序设置]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5951130</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5951130</guid><author>zhouyongyang621</author><pubDate>Tue, 19 Oct 2010 13:50:00 +0800</pubDate><description><![CDATA[<br />定义一个BroadcastReceiverJava代码 public class BootReceiver extends BroadcastReceiver {       public void onReceive(Context ctx, Intent intent) {           Log.d("BootReceiver", "system boot completed");           //start activity           String action="]]></description><category></category></item><item><title><![CDATA[android各版本的sdk区别]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5913718</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5913718</guid><author>zhouyongyang621</author><pubDate>Wed, 29 Sep 2010 10:59:00 +0800</pubDate><description><![CDATA[<br />Android 1.5 API变更概要:<br /><br />　　UI framework<br /><br />　　· Framework for easier background/UI thread interaction<br />　　· 新SlidingDrawer 组件<br />　　· 新HorizontalScrollview 组件<br /><br />　　AppWidget framework<br />　　· 一些关于创建桌面AppWidget 的API.<br />　　]]></description><category></category></item><item><title><![CDATA[android Service Binder交互通信实例]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5861495</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5861495</guid><author>zhouyongyang621</author><pubDate>Fri, 03 Sep 2010 15:01:00 +0800</pubDate><description><![CDATA[<br />android SDK提供了Service，用于类似*nix守护进程或者windows的服务。<br />Service有两种类型：本地服务（Local Service）：用于应用程序内部 
远程服务（Remote Sercie）：用于android系统内部的应用程序之间 <br />前者用于实现应用程序自己的一些耗时任务，比如查询升级信息，并不占用应用程序比如Activity所属线程，而是单开线程后台执行，这样用户体验比较好。<br />后者可被其他应用程序复用，比如天气预报服务，其他应用程]]></description><category></category></item><item><title><![CDATA[几种Intent 的用法]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5830300</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5830300</guid><author>zhouyongyang621</author><pubDate>Sun, 22 Aug 2010 16:30:00 +0800</pubDate><description><![CDATA[<br />显示网页:<br />Uri uri = Uri.parse(”http://www.google.com”);<br />Intent it = new Intent(Intent.ACTION_VIEW,uri);<br />startActivity(it);<br />显示地图:<br />Uri uri = Uri.parse(”geo:38.899533,-77.036476″);<br />Intent it = new Intent(Intent.Action_VIEW,uri)]]></description><category></category></item><item><title><![CDATA[HTTP响应码与HTTP头标]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5790428</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5790428</guid><author>zhouyongyang621</author><pubDate>Thu, 05 Aug 2010 13:41:00 +0800</pubDate><description><![CDATA[<br />响应码由三位十进制数字组成，它们出现在由HTTP服务器发送的响应的第一行。 <br />响应码分五种类型，由它们的第一位数字表示：<br />1xx：信息，请求收到，继续处理<br />2xx：成功，行为被成功地接受、理解和采纳<br />3xx：重定向，为了完成请求，必须进一步执行的动作<br />4xx：客户端错误，请求包含语法错误或者请求无法实现<br />5xx：服务器错误，服务器不能实现一种明显无效的请求<br />下表显示每个响应码及其含义：100 继续<br />101 分组交换协]]></description><category></category></item><item><title><![CDATA[Android数据存储之SQLite数据库存储]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5774772</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5774772</guid><author>zhouyongyang621</author><pubDate>Thu, 29 Jul 2010 20:18:00 +0800</pubDate><description><![CDATA[<br />Android中每一个数据库对创建它的应用程序包套件来说都是私有的，默认情况下其他应用程序无法直接访问此私有数据库。所有的数据库文件存放在手机中的/data/data/package_name/databases路径下，以下是常用的与数据库相关的函数： 
<br />返回值<br />函数<br />备注<br />static SQLiteDatabase<br />create(SQLiteDatabase.CursorFactory factory)<br />创建一个数据库 <br /]]></description><category></category></item><item><title><![CDATA[Observable与Observer ]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5750702</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5750702</guid><author>zhouyongyang621</author><pubDate>Tue, 20 Jul 2010 20:12:00 +0800</pubDate><description><![CDATA[<br />在Java中通过Observable类和Observer接口实现了观察者模式。一个Observer对象监视着一个Observable对象的变化，当Observable对象发生变化时，Observer得到通知，就可以进行相应的工作。例如在文档/视图结构中，文档被修改了，视图就会得到通知。<br />      java.util.Observable中有两个方法对Observer特别重要，一个是setChange()方法用来设置一个内部标志位注明数据发生了变化；一个是notifyObservers]]></description><category></category></item><item><title><![CDATA[android 属性]]></title><link>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5749970</link><guid>https://blog.youkuaiyun.com/zhouyongyang621/article/details/5749970</guid><author>zhouyongyang621</author><pubDate>Tue, 20 Jul 2010 15:55:00 +0800</pubDate><description><![CDATA[<br /> Intent标记：<br />FLAG_ACTIVITY_NEW_TASK<br />    系统会为新activity安排另外一个任务。如果已经存在了一个与新activity有着同样affinity的任务，则activity会载入那个任务之中。如果没有，则启用新任务。<br /><br />FLAG_ACTIVITY_CLEAR_TOP<br />FLAG_ACTIVITY_CLEAR_TOP标记，而且目标任务的堆栈中已经存在了一个能够响应此intent的activity类型的实例。则这个实]]></description><category></category></item></channel></rss>