Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

backup

  • Loading branch information...
commit b7ff53c5e53666870c9916c7966db434fcf43e8a 1 parent 31b336b
@oa414 authored
Showing with 2,662 additions and 93 deletions.
  1. BIN  .DS_Store
  2. +15 −0 API解决方案.html
  3. +7 −0 API解决方案.md
  4. +12 −0 Android/Android SDK接入.html
  5. +3 −0  Android/Android SDK接入.md
  6. +13 −0 Android/Android UI界面.html
  7. +5 −0 Android/Android UI界面.md
  8. +1 −0  Android/Android3D.md
  9. +64 −0 Android/Android下载.html
  10. +10 −0 Android/Android反编译.html
  11. +1 −0  Android/Android反编译.md
  12. +1 −0  Android/Android发布.md
  13. +16 −0 Android/Android学习.html
  14. +12 −0 Android/Android学习.md
  15. +10 −0 Android/Android客户信息.html
  16. +1 −0  Android/Android客户信息.md
  17. +1 −0  Android/Android异步.md
  18. +10 −0 Android/Android测试.html
  19. +6 −2 Android/Android测试.md
  20. +44 −0 Android/Android消息推送.html
  21. +34 −0 Android/Android消息推送.md
  22. +26 −0 Android/Android生命周期.md
  23. +188 −0 Android/Android盈利.html
  24. +209 −0 Android/Android盈利.md
  25. +31 −0 Android/Android短信监听.html
  26. +31 −0 Android/Android短信监听.md
  27. +75 −0 Android/Android网络.html
  28. +4 −0 Android/Android菜单md.html
  29. +2 −0  Android/Android菜单md.md
  30. +10 −0 Android/Android音频.html
  31. +1 −0  Android/Android音频.md
  32. +54 −0 Android/GPS.html
  33. +10 −0 Android/Untitled.html
  34. 0  Android/Untitled.md
  35. +5 −1 Android/service.html
  36. +9 −1 Android/service.md
  37. +47 −0 AndroidNotes/ GreenDroid- Library For Android UI Devlopment.html
  38. +25 −0 AndroidNotes/ GreenDroid- Library For Android UI Devlopment.md
  39. BIN  AndroidNotes/.DS_Store
  40. +164 −0 AndroidNotes/Some Open Source Library of Android Development.html
  41. +86 −0 AndroidNotes/Some Open Source Library of Android Development.md
  42. +18 −0 AndroidNotes/Some Open Source UI Library of Android Development.html
  43. +17 −0 AndroidNotes/Some Open Source UI Library of Android Development.md
  44. +69 −0 AndroidNotes/Start Libgdx Game Engine.html
  45. +54 −0 AndroidNotes/Start Libgdx Game Engine.md
  46. +39 −0 Android获取手机信息.html
  47. +30 −0 Android获取手机信息.md
  48. +30 −0 CPA.html
  49. +34 −0 CPA.md
  50. +16 −0 CSS.html
  51. +10 −0 CSS.md
  52. +3 −0  MacDev.txt
  53. +16 −0 Web开发资源.html
  54. +8 −0 Web开发资源.md
  55. +16 −0 Web资源.html
  56. +8 −0 Web资源.md
  57. +38 −0 bootstrap.html
  58. +48 −0 bootstrap.md
  59. +10 −0 cocos2d.html
  60. +1 −0  cocos2d.md
  61. +1 −1  eclipese.md
  62. +1 −0  fq.md
  63. +4 −0 heroku.html
  64. +2 −1  heroku.md
  65. +48 −0 idea.html
  66. +36 −1 idea.md
  67. +1 −1  index.html
  68. BIN  ios/.DS_Store
  69. +10 −0 ios/iOS发布.html
  70. +1 −0  ios/iOS发布.md
  71. +16 −0 ios/iOS开源库.html
  72. +9 −0 ios/iOS开源库.md
  73. +10 −0 ios/iOS部署.html
  74. 0  ios/iOS部署.md
  75. +7 −7 ios/objective-c.html
  76. +7 −1 linux.html
  77. +8 −0 linux.md
  78. +1 −1  mobile_game_dev.html
  79. +42 −0 nodejs.html
  80. +37 −0 nodejs.md
  81. +16 −16 php.html
  82. +9 −9 plan/mobile.html
  83. +6 −6 post/learn-c.html
  84. +9 −9 post/learn-cs.html
  85. +15 −15 post/the_newbie's_guide_to_the_internet.html
  86. +2 −2 proxy_rb.html
  87. +10 −0 pygame.html
  88. +1 −0  pygame.md
  89. +18 −0 python.html
  90. +1 −1  redis.html
  91. +1 −1  ruby_study.html
  92. BIN  sinatra/.DS_Store
  93. +61 −1 sinatra/sinatra.html
  94. +73 −1 sinatra/sinatra.md
  95. +10 −0 sinatra/爬虫.html
  96. +1 −0  sinatra/爬虫.md
  97. +3 −3 teacher/1.html
  98. +44 −0 teacher/2.html
  99. +54 −0 teacher/3.html
  100. +11 −11 teacher/start.html
  101. +1 −1  tumblr/11-30-improve-efficiency.html
  102. +44 −0 tumblr/12-21-back-into-finding-original-dream.html
  103. +29 −0 tumblr/12-21-back-into-finding-original-dream.md
  104. +14 −0 包管理工具.md
  105. +12 −0 实习.html
  106. +7 −0 实习.md
  107. +10 −0 教育.html
  108. +1 −0  教育.md
  109. +48 −0 服务器设计.html
  110. +68 −0 服务器设计.md
  111. +14 −0 编译原理.html
  112. +8 −0 编译原理.md
  113. +56 −0 词典.html
  114. +56 −0 词典.md
View
BIN  .DS_Store
Binary file not shown
View
15 API解决方案.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<pre class='markdown-html-error' style='border: solid 3px red; background-color: pink'>REXML could not parse this XML/HTML:
+&lt;https://github.com/intridea/grape&gt;
+
+&lt;https://github.com/raggi/async_sinatra&gt;
+
+&lt;git://github.com/rails-api/rails-api.git&gt;</pre></html>
+</body>
View
7 API解决方案.md
@@ -0,0 +1,7 @@
+
+
+<https://github.com/intridea/grape>
+
+<https://github.com/raggi/async_sinatra>
+
+<git://github.com/rails-api/rails-api.git>
View
12 Android/Android SDK接入.html
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>人人的API和文档非常烂,文档排版比论坛的帖子都乱。。</p>
+
+<p>http://www.dewen.org/q/4441</p></html>
+</body>
View
3  Android/Android SDK接入.md
@@ -0,0 +1,3 @@
+人人的API和文档非常烂,文档排版比论坛的帖子都乱。。
+
+http://www.dewen.org/q/4441
View
13 Android/Android UI界面.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<pre class='markdown-html-error' style='border: solid 3px red; background-color: pink'>REXML could not parse this XML/HTML:
+&lt;https://github.com/cyrilmottier/GreenDroid&gt;
+
+&lt;http://www.iteye.com/news/22984&gt;</pre></html>
+</body>
View
5 Android/Android UI界面.md
@@ -0,0 +1,5 @@
+
+
+<https://github.com/cyrilmottier/GreenDroid>
+
+<http://www.iteye.com/news/22984>
View
1  Android/Android3D.md
@@ -0,0 +1 @@
+[3D引擎--可移植到Android的开源的引擎及调查报告](http://my.oschina.net/huangsm/blog/36074)
View
64 Android/Android下载.html
@@ -0,0 +1,64 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>链接网络</p>
+
+<pre><code>// Given a URL, establishes an HttpUrlConnection and retrieves
+// the web page content as a InputStream, which it returns as
+// a string.
+private String downloadUrl(String myurl) throws IOException {
+ InputStream is = null;
+ // Only display the first 500 characters of the retrieved
+ // web page content.
+ int len = 500;
+
+ try {
+ URL url = new URL(myurl);
+ HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+ conn.setReadTimeout(10000 /* milliseconds */);
+ conn.setConnectTimeout(15000 /* milliseconds */);
+ conn.setRequestMethod(&quot;GET&quot;);
+ conn.setDoInput(true);
+ // Starts the query
+ conn.connect();
+ int response = conn.getResponseCode();
+ Log.d(DEBUG_TAG, &quot;The response is: &quot; + response);
+ is = conn.getInputStream();
+
+ // Convert the InputStream into a string
+ String contentAsString = readIt(is, len);
+ return contentAsString;
+
+ // Makes sure that the InputStream is closed after the app is
+ // finished using it.
+ } finally {
+ if (is != null) {
+ is.close();
+ }
+ }
+}</code></pre>
+
+<p>从网络下载图片</p>
+
+<pre><code>InputStream is = null;
+...
+Bitmap bitmap = BitmapFactory.decodeStream(is);
+ImageView imageView = (ImageView) findViewById(R.id.image_view);
+imageView.setImageBitmap(bitmap);</code></pre>
+
+<p>转换成字符串</p>
+
+<pre><code>// Reads an InputStream and converts it to a String.
+public String readIt(InputStream stream, int len) throws IOException, UnsupportedEncodingException {
+ Reader reader = null;
+ reader = new InputStreamReader(stream, &quot;UTF-8&quot;);
+ char[] buffer = new char[len];
+ reader.read(buffer);
+ return new String(buffer);
+}</code></pre></html>
+</body>
View
10 Android/Android反编译.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>apktool、dex2jar、jd-gui</p></html>
+</body>
View
1  Android/Android反编译.md
@@ -0,0 +1 @@
+apktool、dex2jar、jd-gui
View
1  Android/Android发布.md
@@ -0,0 +1 @@
+[Android学习系列(1)--为App签名(为apk签名)](http://blog.csdn.net/mylzc/article/details/6774131)
View
16 Android/Android学习.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<ol>
+<li>Java</li>
+</ol>
+
+<p>初学推荐 Head First Java,后面讲Swing的部分可以不用看,简单了解即可</p>
+
+<p>安装Android开发环境。照官方一步步来即可。</p></html>
+</body>
View
12 Android/Android学习.md
@@ -0,0 +1,12 @@
+
+
+ 1.Java
+
+ 初学推荐 Head First Java,后面讲Swing的部分可以不用看,简单了解即可
+
+
+
+
+ 安装Android开发环境。照官方一步步来即可。
+
+
View
10 Android/Android客户信息.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>IMEI是对应于手机自身的,手机号码(即MSISDN号码)和IMSI是对应于SIM卡的,理论上上述三个号码都是唯一的,但目前多数SIM卡上没有烧录MSISDN号码,所以建议用IMEI和IMSI作为手机唯一的ID。</p></html>
+</body>
View
1  Android/Android客户信息.md
@@ -0,0 +1 @@
+IMEI是对应于手机自身的,手机号码(即MSISDN号码)和IMSI是对应于SIM卡的,理论上上述三个号码都是唯一的,但目前多数SIM卡上没有烧录MSISDN号码,所以建议用IMEI和IMSI作为手机唯一的ID。
View
1  Android/Android异步.md
@@ -0,0 +1 @@
+<http://blog.csdn.net/mylzc/article/details/6774131>
View
10 Android/Android测试.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+</html>
+</body>
View
8 Android/Android测试.md
@@ -1,4 +1,8 @@
-Chapter 1: Getting Started with Testing
-
+自动化的 UI 测试
+ 目前能免费进行android UI的自动化测试的方法有以下三种:
+
+ Monkey&MonkeyRunner Junit Robotium
+入门难度 一般 困难 非常简单
+功能方面 很一般 无所不能 基本满足
View
44 Android/Android消息推送.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>AndroidPN</p>
+
+<p>Android froyo 之后,引入了 C2DM,基于XMPP 协议实现的推送机制。C2DM 的优点无需多言,但缺点也是显而易见:</p>
+
+<ol>
+<li>需要google账号。这一点约束太大了,很多手机厂家把google Apps给阉割了。</li>
+
+<li>国内服务不稳定,原因你懂得的。如果有能力在国外有服务器,可以很快的发送消息到C2DM 服务器,从国内post 数据到 Google server,几乎没响应。</li>
+
+<li>C2DM 仅支持 Android 2.2 以上</li>
+</ol>
+
+<p>C2DM 运行在系统级别上,系统内存少时不容易被kill。C2DM与Gmail、Gtalk等共用同一个连接,减少耗电。跟iOS不一样,Android支持App常驻进程,所以大家都不愿意用。现在一些恶意的Android软件,安装后后台开启一个服务,定时向用户PUSH垃圾广告,很邪恶。国内互联网公司都瞎折腾这样那样云,但就没有一家愿意开发和提供一个Google C2DM的墙内替代品。</p>
+
+<p>目前基于长连接push的开源软件有:</p>
+
+<p>AndroidPN</p>
+
+<p>AndroidPN 是一个基于XMPP协议的java开源Android push Notification 实现,包含server与client,server 使用SSH框架,默认后台使用jetty,数据库是hsqldb,该服务器端基本上是在openfire基础上修改实现的,据说微信在Android上的推送实现也是基于openfire,具体未详。官方上的版本已经很久没更新,而且还有一些bugs,比如: 1. 当服务器端重启的时候,客户端就无法在连接到服务器. 2. 不支持离线消息。 3. 推送多条消息重复问题</p>
+
+<p>可以改造成tomcat版本,已经有很多网友在做这样的事。</p>
+
+<p>MQTT</p>
+
+<p>IBM 产品,使用php写的,据说外国网友在论坛上爆料,Facebook Android客户端的推送使用这个。</p>
+
+<p>没有条件自己搞 push 服务器的,可以使用第三方服务</p>
+
+<p>Urban Airship http://urbanairship.com/</p>
+
+<p>http://www.push-notification.org/</p>
+
+<p>http://www.android-push.com/</p>
+
+<p>据了解,钱方支付的 Android 客户端是使用 http://www.android-push.com/ 的服务。</p></html>
+</body>
View
34 Android/Android消息推送.md
@@ -0,0 +1,34 @@
+AndroidPN
+
+
+Android froyo 之后,引入了 C2DM,基于XMPP 协议实现的推送机制。C2DM 的优点无需多言,但缺点也是显而易见:
+1. 需要google账号。这一点约束太大了,很多手机厂家把google Apps给阉割了。
+2. 国内服务不稳定,原因你懂得的。如果有能力在国外有服务器,可以很快的发送消息到C2DM 服务器,从国内post 数据到 Google server,几乎没响应。
+3. C2DM 仅支持 Android 2.2 以上
+
+C2DM 运行在系统级别上,系统内存少时不容易被kill。C2DM与Gmail、Gtalk等共用同一个连接,减少耗电。跟iOS不一样,Android支持App常驻进程,所以大家都不愿意用。现在一些恶意的Android软件,安装后后台开启一个服务,定时向用户PUSH垃圾广告,很邪恶。国内互联网公司都瞎折腾这样那样云,但就没有一家愿意开发和提供一个Google C2DM的墙内替代品。
+
+目前基于长连接push的开源软件有:
+
+AndroidPN
+
+AndroidPN 是一个基于XMPP协议的java开源Android push Notification 实现,包含server与client,server 使用SSH框架,默认后台使用jetty,数据库是hsqldb,该服务器端基本上是在openfire基础上修改实现的,据说微信在Android上的推送实现也是基于openfire,具体未详。官方上的版本已经很久没更新,而且还有一些bugs,比如:
+1. 当服务器端重启的时候,客户端就无法在连接到服务器.
+2. 不支持离线消息。
+3. 推送多条消息重复问题
+
+可以改造成tomcat版本,已经有很多网友在做这样的事。
+
+MQTT
+
+IBM 产品,使用php写的,据说外国网友在论坛上爆料,Facebook Android客户端的推送使用这个。
+
+没有条件自己搞 push 服务器的,可以使用第三方服务
+
+Urban Airship http://urbanairship.com/
+
+http://www.push-notification.org/
+
+http://www.android-push.com/
+
+据了解,钱方支付的 Android 客户端是使用 http://www.android-push.com/ 的服务。
View
26 Android/Android生命周期.md
@@ -0,0 +1,26 @@
+<http://blog.csdn.net/mylzc/article/details/6738800>
+
+
+1、系统(framework)在启动Activity的时候会初始化一些运行时变量,当初始化完成后,会调用Activity的onCreate(Bundle savedInstanceState),相当于他告知Activity:“我帮你搭建好环境了,你现在开始创建吧”
+
+onCreate(Bundle savedInstanceState):从log信息中我们得知,Activity启动的时候首先会调用onCreate()方法,这时候,Activity被告知要做一些初始化的工作,在这个方法里,Activity的UI元素还没绘到界面上,我们需要调用setContentView()来设定Activity的布局,另外,我们经常做的事情就是使用findViewById()初始化类中的Ui成员。
+
+onCreate(Bundle savedInstanceState)中有一个参数savedInstanceState,是用来恢复活动状态的,具体的用法我们在场景二中会提到。
+
+2、当Activity创建完毕后,系统就急不及待要把Activity显示出来,在显示出来之前,他会问Activity:"你要显示出来了,你还要做些什么准备工作么?",此时会调用onStart()函数
+
+Activity在将要显示出来之前被调用,如果你需要动态注册一个BroadcastReceiver,那么建议在这里进行注册。
+
+3、然后系统会让Activity显示出来(但也有可能被系统窗口阻挡),然后问Activity:"我尽力把你显示出来了,你有什么事没做的自己看着办吧",此时调用onResume
+
+在这里可以开始动画,打开外部设备(camera等)注意这个方法并无意味着Activity是可见的,Activity还有可能被系统窗口遮挡(如:锁屏界面,输入法等),使用onWindowFocusChanged(boolean)来确认window是否可见
+
+4、用户按Back键后,系统会先暂停Activity,然后再销毁Activity,它相当于告知Activity:“我要暂停你了,你有什么要说的吗”,此时调用onPause
+
+当activity将要被遮挡时调用在此应该完成一些轻量级的数据持久化处理(因为只有此方法return后,新的activity才会被显示出来,如果被繁重的工作阻塞了ui线程,那么新的Activity将不会被显示出来)这里停止那些占用cpu时间的任务,如动画,camera等
+
+5、暂停之后系统就把Activity设为不可见,它告知Activity:“大家都看不到你了,还要说几句吗?”,此时调用onStop
+
+如果在onStart()中动态注册了一个BroadcastReceiver,那么就在onStop()处取消注册。如果使用了cursor,就在这里关闭cursor,释放资源
+
+6、系统准备销毁Activity,此时它对Activity说:“哈哈,你要挂了,有什么遗言就说吧”,此时调用onDestroy
View
188 Android/Android盈利.html
@@ -0,0 +1,188 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>http://www.iteye.com/topic/1126990</p>
+
+<p>花了几个月研究了android下赚钱的几个方式,总结如下</p>
+
+<p>1.免费应用+广告</p>
+
+<p>这个方式一般是android最普遍的一种方式,从广告主那边赚钱。 这是目前国内个人开发者最普遍的赚钱方式,你可以利用嵌入国内和国外的几十家移动广告平台的sdk、并在各渠道发布你的应用来获取展示广告,从而利用用户对广告的点击而获取收入。需要注意的是:广告条的位子很大程度上主导了用户体验度,因此如何设置广告条是所有开发者都应该斟酌考虑的问题。</p>
+
+<p>这种方式看上去比较美好,大实际给开发者带来的收益很有限。</p>
+
+<p>2.收费应用 国内移动MM、机锋网的金币、支付宝等各种渠道支付使用费,目前来看这种模式很难获取可观的收入。</p>
+
+<p>这种方式下,依据话费作为支付工具最具有优势,应为首先一点支付方便,一般一二步就能完成,二是移动营运商是支付的监管者,所以对消费者有利;三充值方便,三大营运上的营业厅已经铺盖到乡镇以及,传统的支付方式不具备这个天然优势。</p>
+
+<p>3.应用内容的商业合作 这种模式需要你的应用有影响力,能让商家为你买单。</p>
+
+<p>这种方式和第一种很类似,简单一句话,就是把付费的内容推到第一为,作付费推广。</p>
+
+<p>应用内付费平台介绍</p>
+
+<p>1,alipay,财付通,网银。这些传统的互联网支付工具,早已经进入移动互联网领域。他们本身有强大的用户基础,</p>
+
+<p>资金和技术都很雄厚,资金结算都是很可靠的。</p>
+
+<p>2,营运商支付体系</p>
+
+<pre><code>三家营运商都从事应用内支付业务,非手机支付业务。用户支付方便,简单,无风险。草根用户都是比较喜欢这种支 </code></pre>
+
+<p>付方式,对用户要求地;对于开发者来说完全受控于营运商,超过投诉点,基本上帐就很难接回。还有就是小公司或个人很难接进去。且目前三家是各自为政,一个app需要植入三个sdk比较麻烦。</p>
+
+<p>三家的计费收到有短信和wap方式</p>
+
+<pre><code>移动:目前使用的有短信计费(移动把2g时代的计费代码都收回了,然后他们再下方给内容合作方);
+
+ wap计费方式kjava,手机网游,手机网页游戏,android都是用wap计费方式。可以参考网址如下
+
+ http://dev.10086.cn/iap,http://g.10086.cn/ </code></pre>
+
+<p>电信:在计费方式上,相对移动来说比较弱些,目前只有个对外的sdk计费包,听说里面使用还是发短信计费 参考网址:</p>
+
+<p>http://game.189.cn/</p>
+
+<p>联通:目前只提供短信,wap方式在市面上没找到。</p>
+
+<p>3,微派 听说是上海一个公司,目前也在作应用内支付,他们的网站http://www.wiipay.cn 大家可以进去了解下。</p>
+
+<pre><code>具我了解:他们也是基于电话费的一种支付体系,这大概和他们几个创始人的从业经验有关,他们原来都是从事无线 </code></pre>
+
+<p>事业的的,然后他们整合营运商的资源,做出一款更适合市场的sdk出来,据说sdk包含了三家营运商的应用内计费功能,那么开发者只要接入一个sdk,三家营运商都搞定呢!</p>
+
+<p>第三方广告平台介绍:</p>
+
+<p>说实话,经常有朋友向我抱怨,广告收入很少,经常还不结算。其实,无线广告业在中国还没爆发出来,目前确实不能给开发者带来收益尤其没有好的app的开发者。</p>
+
+<p>国内广告模式</p>
+
+<p>广告条:最普遍的广告模式,嵌入在应用界面内,用户点击行为会带来收入。 积分墙:应用通过限制功能、去广告等引导用户进入积分墙页面下载广告应用得到积分来换取使用的模式,用户安装完推荐广告软件后开发者才有收入,该模式会被一些市场和发布渠道拒绝应用上架。 推送:通过类似短信通知的模式展示广告,此模式用户点击率奇高,所以也是最受市场排挤的模式。</p>
+
+<ol>
+<li>admob 广告条模式,CPC动态单价,google旗下,适合国外应用使用,本人看到的最低单价0.005最高0.24(美元),不需要审核,有请求后即激活。实时数据,但结算很麻烦,因此从一开始就放弃了</li>
+</ol>
+
+<p>2.万普平台 这个平台是目前为止收入最高的一个平台,其主要广告为广告条、积分墙、推送3种模式,主要以CPA广告为主。我的结算周期基本不超过1个月,打款最低100元,行业通用规则。不过关于扣量问题也是众所周知的,论坛里早已经讨论了不要讨论。近期,感觉自己的应用被限制上架很多,可能与各大市场的新规有关系。</p>
+
+<p>3.有米广告 国内最早的广告平台,最早是只有广告条模式,最近加入了积分墙,也是最遭人骂的平台。因为该平台最早的点击单价为0.21元,有最低的时候为2分没点击,也是对点击扣量(即平台所计算的有效点击)最严重的,刚开始还不错,特别是积分墙,经常有0.8-1.0元的应用供下载,目前我的应用平均单价还是只有1毛左右。实时数据,但没其他平台详尽,半月结算,提现税率6% 有米收益是半月结一次,扣6%的税,有发票不扣。扣量问题和万普差不多,</p>
+
+<p>4.多盟 广告条模式,CPC单价0.24元左右,CPC各方面都还算不错,实时数据、月结算、提现税率(大于800部分20%)</p>
+
+<p>前言: 2011年11月份我开始学习android软件开发(本人有良好的java基础、web开发基础、c++基础),2011年12月份开始开发第一款手机软件(软件名字就不透露了),2012年1月份第一款android应用在优亿、机锋、木蚂蚁正式上线。</p>
+
+<pre><code>2012年2月份,本人陆续又开发了3款手机应用,并且各个应用也逐渐发布到了更多的市场,如应用汇、91、腾讯应用中心、163应用中心、搜应用、爱卓网、安卓星空等等近10个应用市场。软件用户量大幅度上涨。 广告收入也随之增长,从1月份的每天3-10块钱,涨到了2月份的每天50-100元。
+
+到了3月份,累计在线用户超过了10万人,每天启动用户在6500人左右,广告收入也涨到了100-140一天。(鉴于本人还是个学生,学业繁忙,没有时间开发新产品,所以在3月份用户量和收入保存平稳状态,没有什么增长)</code></pre>
+
+<p>android开发学习:</p>
+
+<p>android学习的前提是java基础。如果你没有好的java基础,那就赶紧补充,我在这里不做介绍。</p>
+
+<p>android是基于linux的,如果你要做底层的东西,可以买一些关于linux c开发和linux内核的书来补充一下基础。这里只介绍应用开发,linux底层的就不讨论了。</p>
+
+<p>android应用开发方面的书,我建议《android应用开发详解》、《android疯狂讲义》、《android技术内幕:系统卷》,开发工具通常使用Eclipse,装上ADT插件就可以开发android程序了。</p>
+
+<p>android应用开发学习流程简介:</p>
+
+<p>1. 搭建环境。</p>
+
+<p>包括Java、Eclipse、模拟器、web开发环境(可选)。真机运行速度是模拟器的几十倍,建议一定要买台android的手机来用,也不一定要很贵,我前期学android开发时用过的1100左右的索爱x8也挺不错的,至少可以流程地运行我的程序。另外,这里提到了web开发环境,因为我们大部分的程序都是要联网的、要从服务器获取数据,为用户提供更丰富的体验。如果你要做单机版的软件,那就可以不用搭建web开发环境。这样提醒一下:我的软件都是可单机可联网使用的,联网时可以得到在线的数据。我的服务器是在好空间网络上租的,几百块钱一年,很便宜,但也经常故障死机。通常,服务器一旦死机,当天我的收入就会直接减少40%以上。而且,好空间网络的服务器出问题之后,基本上是拖很久都解决不了的。建议钱多的话,到其他地方买个更好的服务器。</p>
+
+<p>前期使用eclipse就能完成程序打包、签名等任务,后期要学习一下android的工具tools和adb命令,让我们更深入了解android的程序结构。</p>
+
+<p>2. android基础学习。</p>
+
+<p>环境搭好之后,要学习 Android应用的界面开发、事件处理、Activity、Service、使用Intent和IntentFilter进行通信、 图形与图像处理、数据存储和IO(包括文件系统、SQlite数据库)、Broadcast Receiver、多媒体等基础知识。有了这些基础知识后,你就可以开发一些简单的android应用了。</p>
+
+<p>然后要扩展一下基础,学习OpenGL与3D应用开发、Widget手机桌面的应用、网络应用(包括xml数据通信、json数据通信、http网络知识)、重力感应相关知识、GPS应用开发知识、google map等基础扩展知识。</p>
+
+<p>建议:学好java 基础, 多看SDK下的DEMO、API文档,多写学习总结、项目总结,多去官方网站develop.android.com,guide下有很多内容,多去eoe论坛 。</p>
+
+<p>3. 知识水平提高提高</p>
+
+<p>要成为一个专业的android程序员(我自己还远没有达到),还应该具备linux底层的一些知识,java JNI方面的知识。熟悉一直web开发知识,让你能够自己搭建一个完整的android软件系统。</p>
+
+<p>4. 动手干活</p>
+
+<p>这阶段,你应该尝试分析应用市场,看看那些应用受欢迎,并且应用数量不多,还有让你的软件能生存的空间(当然也要考虑自己目前的水平问题,太难的程序在刚开始应该是写不出来的,除非你就是传说当中的那个万中无一的绝世高手)。</p>
+
+<pre><code>分析确定好开发什么应用之后,就要开始着手干活了。先话2,3个星期写一款软件出来,然后发到各大应用市场,看看市场反应。然后根据用户使用的反馈信息,进行程序完善和bugfix。通过反复的修改及调试程序,可以学会界面布局、资源管理、logcat、调试、对activity、service、intentFilter等有一定的了解。这个时期最好的帮手是SDK目录下的doc、百度及google、破解工具(apktool、dex2jar、jd-gui,可以提取目标apk的资源及反编译源代码,这里反编译不是为了干坏事,而是从别人那里学习技术,了解别人的程序界面设计,资源光流等等。你并不能完全的得到一个好程序的破解代码,但你可以通过代码片段来获取信息学习或者进行搜索从而学到各种技术),这个阶段你就要多看别人的代码多动手了,你要开始熟悉和使用android的类库。</code></pre>
+
+<p>5. 开始赚钱</p>
+
+<pre><code>经过上面的阶段,你应该开发出了第一款准备面向市场的手机应用了,这个时候,你就可以考虑怎样用你的程序来赚钱了。先来介绍下android下的常用的赚钱方法:</code></pre>
+
+<p>1. 收费应用</p>
+
+<p>在国内,可以通过移动MM、机锋网的金币、支付宝等各种渠道进行付费,目前也有不少软件提供免费使用,然后在部分高级功能中需要付费开通功能,通常都是用支付宝提供进行支付,然后根据支付宝提供的接口知道用户是否付费成功了。</p>
+
+<p>中国人就是有那种吃免费午餐的习惯,收费软件在中国是很难赚钱的。而且直接收费容易让用户恶评软件。</p>
+
+<p>2. 免费应用 + 广告</p>
+
+<p>这是目前国内个人开发者最普遍的赚钱方式,你可以利用嵌入国内外数十家移动广告平台的sdk、并在各渠道发布你的应用来获取展示广告,从而利用用户对广告的点击而获取收入。但需要注意的是,身为开发者你最好不要以不正当等方式来获得用户点击,别破坏市场环境(比如现在很多应用所有功能都要求用户下载广告应用获取积分而得到使用,特别是一些情、色的应用)。</p>
+
+<p>3. 应用内容的商业合作</p>
+
+<p>这种模式需要你的应用有影响力,能让商家为你买单。例如UC浏览器首页的导航栏中的那几十个链接(如新浪、腾讯、搜狐、各种手机软件网站等)都不是白放上去的,没有给UC大量的广告费,是不肯能在上面取得一席之地的。</p>
+
+<p>android广告平台介绍:</p>
+
+<p>广告模式: 广告条:最普遍的广告模式,嵌入在应用界面内,用户点击行为会带来收入。 积分墙:应用通过限制功能、去广告等引导用户进入积分墙页面下载广告应用得到积分来换取使用的模式,用户安装完推荐广告软件后开发者才有收入,该模式会被一些市场和发布渠道拒绝应用上架。 推送:通过类似短信通知的模式展示广告,此模式用户点击率奇高,所以也是最受市场排挤的模式,像应用汇、安智市场、安卓市场、N多网等等都拒绝发布带推送广告的软件。</p>
+
+<p>我用过的一些广告平台介绍: 1. 万普平台 我个人觉得最给力的广告平台,广告单价最高,扣量也不多。其主要广告为广告条、积分墙、推送3种模式,主要以CPA广告为主。开发者注册地址:http://www.waps.cn/?f=zhaostudy3,这是我的推荐地址。数据每1个小时更新一次左右,收入周结算,可以添加多个成员,人均收入低于800每月的,不收任何税费。超过的提现税率为6%。万普的收入明显比其他广告平台高很多、很多&#8230;。但是像应用汇、安智市场、安卓市场等大市场都拒绝带万普广告的应用。</p>
+
+<p>2.多盟 广告条模式,CPC单价0.21元左右,广告填充率很高很高。还算比较靠谱,实时数据、数据每2个小时更新一次左右,收入周结算,可以添加多个成员,人均收入低于800每月的,不收任何税费。超过的部分提现税率为20%。最近多盟系统升级,每次升级后,我的软件广告点击率都大幅下降,2月份点击率为1%,3月份降到了0.5%一下,太黑了,只有我自己统计的40%左右。不过其他广告平台都一样扣量。 注册地址:http://www.domob.cn/</p>
+
+<p>3.腾讯广告 广告条模式,CPC单价0.1.3元左右,展示和扣量方面都也还可以,每天能查询昨天的数据每月16-20号结算收入,腾讯要收走30%的分成。虽然单价低,但是腾讯的广告都是热门的腾讯软件,点击率很好,我的软件的腾讯广告点击率大概为1.3%。是多盟的2.5倍-3倍的点击率。 注册地址:http://dev.app.qq.com/loginInit.action</p>
+
+<p>4.百度联盟 广告条模式,CPC单价动态计费,所以具体单价未知了,收入还行。百度审核周期很长,而且审核很严格的,经常因各种问题二通不过审核。 地址:http://munion.baidu.com/</p>
+
+<p>5. 哇棒(个人感觉:扣量很严重,广告很少,收入奇低)</p>
+
+<p>我只用过这5个广告平台,其他的广告平台不好评论,不过上面4个都是网评最高的,所以我才选用了。</p>
+
+<p>下面分享一下最近一个月,我的软件在万普的收入数据:</p>
+
+<p>累计用户 新增用户 启动次数 推荐列表 推送广告 互动广告 自定义广告 总收入 总计 148747 93784 254465 ¥2194.90 ¥1150.45 ¥54.70 ¥0.00 ¥3400.05</p>
+
+<p>高手进阶: 引用知乎上的 “唐泽宇” 和 “周昌” 两位开发者的话:</p>
+
+<ol>
+<li>android是基于linux,所以要熟悉linux系统,特别是嵌入式linux系统。</li>
+
+<li>android平台的程序都是通过Java语言开发的,所以要熟悉java语言。</li>
+
+<li>android系统级的程序或者底层调用NDK开发,需要用到C/C++。</li>
+
+<li>大多数android应用都是客户端应用,所以对UI的设计及界面开发也要有足够的了解。</li>
+
+<li>高手有很多种,比如做ROM、开发系统应用、一般的WEB手机端应用、Android游戏。。。</li>
+</ol>
+
+<p>Android开发上有三个层次技术: 1. 第一个层次和传统的嵌入式Linux最接近,主要涉及的是CPU、GPU以及外设的驱动以及使能方面。多需要熟悉Linux内核,Android框架定义中驱动的接口规范等等,这部分开源社区的力量最大。这个层次技术主要需求方是是各种CPU和Android设备解决方案供应商。</p>
+
+<ol>
+<li>
+<p>第二个层次主要是涉及Android框架中间件部分,如多媒体/3D框架,Java虚拟机等等,这部分Google控制的是最严格的,因为他要控制 Android各种feature以及捆绑自己的移动互联网应用,必须规范中间件。这部分所涉及的软件技术也最多,从各种C/C++库,Java虚拟机性 能,用户体验抽象到数据库设计等等很大的内涵。开发的一般也是选择一个方向发力。另外深度定制Android ROM重点也是这个层次。</p>
+</li>
+
+<li>
+<p>第三个层次就是App开发层次,这个层次主要就是利用Android SDK开发了。很多C/C++出身的觉得是用Java开发,其实Java就是啥都是指针的C++,外带try/catch以及垃圾收集,上手其实是很快的。Android程序最重要一点是理解生命周期概念,将一个Activity和Linux进程关系搞清楚,啥时候这个进程启动,啥时候睡眠,啥时候退出,后台的事件循环如何运行的,最后时刻要提醒自己虚拟机在运行,垃圾收集在运行。Google Code上有还多参考代码,在看中学,体会很快的。</p>
+</li>
+</ol>
+
+<p>另外,本人采用了一种特别的模式来进行Android程序开发:Java只负责界面,用NDK来做各种复杂的业务和数据处理,Java与NDK之间设计好API以及事件传递方式(Android SDK 中Localsocket就可以很好用做事件发送)。这种方式适合C/C++背景的开发人员上手Android,Java无需达到熟练即可。</p>
+
+<p>我本人也正在朝这个方向发展,希望有朝一日我也能被称上高手。</p>
+
+<p>喜欢这篇文章请投一下“精华帖” 或 “良好贴”,不喜欢请关闭此页面。这几天不知谁那么无良投了我几个“隐藏贴”,好伤心啊,早知道这样我就在CSDN上原创首发了。</p>
+
+<p>http://www.iteye.com/topic/1121899</p></html>
+</body>
View
209 Android/Android盈利.md
@@ -0,0 +1,209 @@
+http://www.iteye.com/topic/1126990
+
+花了几个月研究了android下赚钱的几个方式,总结如下
+
+1.免费应用+广告
+
+这个方式一般是android最普遍的一种方式,从广告主那边赚钱。
+ 这是目前国内个人开发者最普遍的赚钱方式,你可以利用嵌入国内和国外的几十家移动广告平台的sdk、并在各渠道发布你的应用来获取展示广告,从而利用用户对广告的点击而获取收入。需要注意的是:广告条的位子很大程度上主导了用户体验度,因此如何设置广告条是所有开发者都应该斟酌考虑的问题。
+
+这种方式看上去比较美好,大实际给开发者带来的收益很有限。
+
+
+2.收费应用
+ 国内移动MM、机锋网的金币、支付宝等各种渠道支付使用费,目前来看这种模式很难获取可观的收入。
+
+ 这种方式下,依据话费作为支付工具最具有优势,应为首先一点支付方便,一般一二步就能完成,二是移动营运商是支付的监管者,所以对消费者有利;三充值方便,三大营运上的营业厅已经铺盖到乡镇以及,传统的支付方式不具备这个天然优势。
+
+3.应用内容的商业合作
+ 这种模式需要你的应用有影响力,能让商家为你买单。
+
+ 这种方式和第一种很类似,简单一句话,就是把付费的内容推到第一为,作付费推广。
+
+应用内付费平台介绍
+
+ 1,alipay,财付通,网银。这些传统的互联网支付工具,早已经进入移动互联网领域。他们本身有强大的用户基础,
+
+资金和技术都很雄厚,资金结算都是很可靠的。
+
+2,营运商支付体系
+
+ 三家营运商都从事应用内支付业务,非手机支付业务。用户支付方便,简单,无风险。草根用户都是比较喜欢这种支
+
+付方式,对用户要求地;对于开发者来说完全受控于营运商,超过投诉点,基本上帐就很难接回。还有就是小公司或个人很难接进去。且目前三家是各自为政,一个app需要植入三个sdk比较麻烦。
+
+三家的计费收到有短信和wap方式
+
+ 移动:目前使用的有短信计费(移动把2g时代的计费代码都收回了,然后他们再下方给内容合作方);
+
+ wap计费方式kjava,手机网游,手机网页游戏,android都是用wap计费方式。可以参考网址如下
+
+ http://dev.10086.cn/iap,http://g.10086.cn/
+
+ 电信:在计费方式上,相对移动来说比较弱些,目前只有个对外的sdk计费包,听说里面使用还是发短信计费 参考网址:
+
+http://game.189.cn/
+
+ 联通:目前只提供短信,wap方式在市面上没找到。
+
+
+3,微派 听说是上海一个公司,目前也在作应用内支付,他们的网站http://www.wiipay.cn 大家可以进去了解下。
+
+ 具我了解:他们也是基于电话费的一种支付体系,这大概和他们几个创始人的从业经验有关,他们原来都是从事无线
+
+事业的的,然后他们整合营运商的资源,做出一款更适合市场的sdk出来,据说sdk包含了三家营运商的应用内计费功能,那么开发者只要接入一个sdk,三家营运商都搞定呢!
+
+
+
+
+第三方广告平台介绍:
+
+说实话,经常有朋友向我抱怨,广告收入很少,经常还不结算。其实,无线广告业在中国还没爆发出来,目前确实不能给开发者带来收益尤其没有好的app的开发者。
+
+国内广告模式
+
+广告条:最普遍的广告模式,嵌入在应用界面内,用户点击行为会带来收入。
+积分墙:应用通过限制功能、去广告等引导用户进入积分墙页面下载广告应用得到积分来换取使用的模式,用户安装完推荐广告软件后开发者才有收入,该模式会被一些市场和发布渠道拒绝应用上架。
+推送:通过类似短信通知的模式展示广告,此模式用户点击率奇高,所以也是最受市场排挤的模式。
+
+1.admob
+ 广告条模式,CPC动态单价,google旗下,适合国外应用使用,本人看到的最低单价0.005最高0.24(美元),不需要审核,有请求后即激活。实时数据,但结算很麻烦,因此从一开始就放弃了
+
+2.万普平台
+ 这个平台是目前为止收入最高的一个平台,其主要广告为广告条、积分墙、推送3种模式,主要以CPA广告为主。我的结算周期基本不超过1个月,打款最低100元,行业通用规则。不过关于扣量问题也是众所周知的,论坛里早已经讨论了不要讨论。近期,感觉自己的应用被限制上架很多,可能与各大市场的新规有关系。
+
+3.有米广告
+ 国内最早的广告平台,最早是只有广告条模式,最近加入了积分墙,也是最遭人骂的平台。因为该平台最早的点击单价为0.21元,有最低的时候为2分没点击,也是对点击扣量(即平台所计算的有效点击)最严重的,刚开始还不错,特别是积分墙,经常有0.8-1.0元的应用供下载,目前我的应用平均单价还是只有1毛左右。实时数据,但没其他平台详尽,半月结算,提现税率6% 有米收益是半月结一次,扣6%的税,有发票不扣。扣量问题和万普差不多,
+
+4.多盟
+ 广告条模式,CPC单价0.24元左右,CPC各方面都还算不错,实时数据、月结算、提现税率(大于800部分20%)
+
+
+
+
+
+
+前言:
+ 2011年11月份我开始学习android软件开发(本人有良好的java基础、web开发基础、c++基础),2011年12月份开始开发第一款手机软件(软件名字就不透露了),2012年1月份第一款android应用在优亿、机锋、木蚂蚁正式上线。
+
+ 2012年2月份,本人陆续又开发了3款手机应用,并且各个应用也逐渐发布到了更多的市场,如应用汇、91、腾讯应用中心、163应用中心、搜应用、爱卓网、安卓星空等等近10个应用市场。软件用户量大幅度上涨。 广告收入也随之增长,从1月份的每天3-10块钱,涨到了2月份的每天50-100元。
+
+ 到了3月份,累计在线用户超过了10万人,每天启动用户在6500人左右,广告收入也涨到了100-140一天。(鉴于本人还是个学生,学业繁忙,没有时间开发新产品,所以在3月份用户量和收入保存平稳状态,没有什么增长)
+
+
+
+android开发学习:
+
+ android学习的前提是java基础。如果你没有好的java基础,那就赶紧补充,我在这里不做介绍。
+
+ android是基于linux的,如果你要做底层的东西,可以买一些关于linux c开发和linux内核的书来补充一下基础。这里只介绍应用开发,linux底层的就不讨论了。
+
+ android应用开发方面的书,我建议《android应用开发详解》、《android疯狂讲义》、《android技术内幕:系统卷》,开发工具通常使用Eclipse,装上ADT插件就可以开发android程序了。
+
+ android应用开发学习流程简介:
+
+ 1. 搭建环境。
+
+ 包括Java、Eclipse、模拟器、web开发环境(可选)。真机运行速度是模拟器的几十倍,建议一定要买台android的手机来用,也不一定要很贵,我前期学android开发时用过的1100左右的索爱x8也挺不错的,至少可以流程地运行我的程序。另外,这里提到了web开发环境,因为我们大部分的程序都是要联网的、要从服务器获取数据,为用户提供更丰富的体验。如果你要做单机版的软件,那就可以不用搭建web开发环境。这样提醒一下:我的软件都是可单机可联网使用的,联网时可以得到在线的数据。我的服务器是在好空间网络上租的,几百块钱一年,很便宜,但也经常故障死机。通常,服务器一旦死机,当天我的收入就会直接减少40%以上。而且,好空间网络的服务器出问题之后,基本上是拖很久都解决不了的。建议钱多的话,到其他地方买个更好的服务器。
+
+ 前期使用eclipse就能完成程序打包、签名等任务,后期要学习一下android的工具tools和adb命令,让我们更深入了解android的程序结构。
+
+ 2. android基础学习。
+
+ 环境搭好之后,要学习 Android应用的界面开发、事件处理、Activity、Service、使用Intent和IntentFilter进行通信、 图形与图像处理、数据存储和IO(包括文件系统、SQlite数据库)、Broadcast Receiver、多媒体等基础知识。有了这些基础知识后,你就可以开发一些简单的android应用了。
+
+ 然后要扩展一下基础,学习OpenGL与3D应用开发、Widget手机桌面的应用、网络应用(包括xml数据通信、json数据通信、http网络知识)、重力感应相关知识、GPS应用开发知识、google map等基础扩展知识。
+
+ 建议:学好java 基础, 多看SDK下的DEMO、API文档,多写学习总结、项目总结,多去官方网站develop.android.com,guide下有很多内容,多去eoe论坛 。
+
+ 3. 知识水平提高提高
+
+ 要成为一个专业的android程序员(我自己还远没有达到),还应该具备linux底层的一些知识,java JNI方面的知识。熟悉一直web开发知识,让你能够自己搭建一个完整的android软件系统。
+
+ 4. 动手干活
+
+ 这阶段,你应该尝试分析应用市场,看看那些应用受欢迎,并且应用数量不多,还有让你的软件能生存的空间(当然也要考虑自己目前的水平问题,太难的程序在刚开始应该是写不出来的,除非你就是传说当中的那个万中无一的绝世高手)。
+
+ 分析确定好开发什么应用之后,就要开始着手干活了。先话2,3个星期写一款软件出来,然后发到各大应用市场,看看市场反应。然后根据用户使用的反馈信息,进行程序完善和bugfix。通过反复的修改及调试程序,可以学会界面布局、资源管理、logcat、调试、对activity、service、intentFilter等有一定的了解。这个时期最好的帮手是SDK目录下的doc、百度及google、破解工具(apktool、dex2jar、jd-gui,可以提取目标apk的资源及反编译源代码,这里反编译不是为了干坏事,而是从别人那里学习技术,了解别人的程序界面设计,资源光流等等。你并不能完全的得到一个好程序的破解代码,但你可以通过代码片段来获取信息学习或者进行搜索从而学到各种技术),这个阶段你就要多看别人的代码多动手了,你要开始熟悉和使用android的类库。
+
+ 5. 开始赚钱
+
+ 经过上面的阶段,你应该开发出了第一款准备面向市场的手机应用了,这个时候,你就可以考虑怎样用你的程序来赚钱了。先来介绍下android下的常用的赚钱方法:
+
+ 1. 收费应用
+
+ 在国内,可以通过移动MM、机锋网的金币、支付宝等各种渠道进行付费,目前也有不少软件提供免费使用,然后在部分高级功能中需要付费开通功能,通常都是用支付宝提供进行支付,然后根据支付宝提供的接口知道用户是否付费成功了。
+
+ 中国人就是有那种吃免费午餐的习惯,收费软件在中国是很难赚钱的。而且直接收费容易让用户恶评软件。
+
+ 2. 免费应用 + 广告
+
+ 这是目前国内个人开发者最普遍的赚钱方式,你可以利用嵌入国内外数十家移动广告平台的sdk、并在各渠道发布你的应用来获取展示广告,从而利用用户对广告的点击而获取收入。但需要注意的是,身为开发者你最好不要以不正当等方式来获得用户点击,别破坏市场环境(比如现在很多应用所有功能都要求用户下载广告应用获取积分而得到使用,特别是一些情、色的应用)。
+
+ 3. 应用内容的商业合作
+
+ 这种模式需要你的应用有影响力,能让商家为你买单。例如UC浏览器首页的导航栏中的那几十个链接(如新浪、腾讯、搜狐、各种手机软件网站等)都不是白放上去的,没有给UC大量的广告费,是不肯能在上面取得一席之地的。
+
+
+
+android广告平台介绍:
+
+广告模式:
+ 广告条:最普遍的广告模式,嵌入在应用界面内,用户点击行为会带来收入。
+ 积分墙:应用通过限制功能、去广告等引导用户进入积分墙页面下载广告应用得到积分来换取使用的模式,用户安装完推荐广告软件后开发者才有收入,该模式会被一些市场和发布渠道拒绝应用上架。
+ 推送:通过类似短信通知的模式展示广告,此模式用户点击率奇高,所以也是最受市场排挤的模式,像应用汇、安智市场、安卓市场、N多网等等都拒绝发布带推送广告的软件。
+
+我用过的一些广告平台介绍:
+1. 万普平台
+ 我个人觉得最给力的广告平台,广告单价最高,扣量也不多。其主要广告为广告条、积分墙、推送3种模式,主要以CPA广告为主。开发者注册地址:http://www.waps.cn/?f=zhaostudy3,这是我的推荐地址。数据每1个小时更新一次左右,收入周结算,可以添加多个成员,人均收入低于800每月的,不收任何税费。超过的提现税率为6%。万普的收入明显比其他广告平台高很多、很多...。但是像应用汇、安智市场、安卓市场等大市场都拒绝带万普广告的应用。
+
+2.多盟
+ 广告条模式,CPC单价0.21元左右,广告填充率很高很高。还算比较靠谱,实时数据、数据每2个小时更新一次左右,收入周结算,可以添加多个成员,人均收入低于800每月的,不收任何税费。超过的部分提现税率为20%。最近多盟系统升级,每次升级后,我的软件广告点击率都大幅下降,2月份点击率为1%,3月份降到了0.5%一下,太黑了,只有我自己统计的40%左右。不过其他广告平台都一样扣量。 注册地址:http://www.domob.cn/
+
+
+3.腾讯广告
+ 广告条模式,CPC单价0.1.3元左右,展示和扣量方面都也还可以,每天能查询昨天的数据每月16-20号结算收入,腾讯要收走30%的分成。虽然单价低,但是腾讯的广告都是热门的腾讯软件,点击率很好,我的软件的腾讯广告点击率大概为1.3%。是多盟的2.5倍-3倍的点击率。 注册地址:http://dev.app.qq.com/loginInit.action
+
+4.百度联盟
+ 广告条模式,CPC单价动态计费,所以具体单价未知了,收入还行。百度审核周期很长,而且审核很严格的,经常因各种问题二通不过审核。 地址:http://munion.baidu.com/
+
+5. 哇棒(个人感觉:扣量很严重,广告很少,收入奇低)
+
+ 我只用过这5个广告平台,其他的广告平台不好评论,不过上面4个都是网评最高的,所以我才选用了。
+
+ 下面分享一下最近一个月,我的软件在万普的收入数据:
+
+
+
+
+累计用户 新增用户 启动次数 推荐列表 推送广告 互动广告 自定义广告 总收入
+总计 148747 93784 254465 ¥2194.90 ¥1150.45 ¥54.70 ¥0.00 ¥3400.05
+
+
+
+高手进阶:
+引用知乎上的 “唐泽宇” 和 “周昌” 两位开发者的话:
+
+1. android是基于linux,所以要熟悉linux系统,特别是嵌入式linux系统。
+2. android平台的程序都是通过Java语言开发的,所以要熟悉java语言。
+3. android系统级的程序或者底层调用NDK开发,需要用到C/C++。
+4. 大多数android应用都是客户端应用,所以对UI的设计及界面开发也要有足够的了解。
+5. 高手有很多种,比如做ROM、开发系统应用、一般的WEB手机端应用、Android游戏。。。
+
+Android开发上有三个层次技术:
+1. 第一个层次和传统的嵌入式Linux最接近,主要涉及的是CPU、GPU以及外设的驱动以及使能方面。多需要熟悉Linux内核,Android框架定义中驱动的接口规范等等,这部分开源社区的力量最大。这个层次技术主要需求方是是各种CPU和Android设备解决方案供应商。
+
+2. 第二个层次主要是涉及Android框架中间件部分,如多媒体/3D框架,Java虚拟机等等,这部分Google控制的是最严格的,因为他要控制 Android各种feature以及捆绑自己的移动互联网应用,必须规范中间件。这部分所涉及的软件技术也最多,从各种C/C++库,Java虚拟机性 能,用户体验抽象到数据库设计等等很大的内涵。开发的一般也是选择一个方向发力。另外深度定制Android ROM重点也是这个层次。
+
+3. 第三个层次就是App开发层次,这个层次主要就是利用Android SDK开发了。很多C/C++出身的觉得是用Java开发,其实Java就是啥都是指针的C++,外带try/catch以及垃圾收集,上手其实是很快的。Android程序最重要一点是理解生命周期概念,将一个Activity和Linux进程关系搞清楚,啥时候这个进程启动,啥时候睡眠,啥时候退出,后台的事件循环如何运行的,最后时刻要提醒自己虚拟机在运行,垃圾收集在运行。Google Code上有还多参考代码,在看中学,体会很快的。
+
+
+另外,本人采用了一种特别的模式来进行Android程序开发:Java只负责界面,用NDK来做各种复杂的业务和数据处理,Java与NDK之间设计好API以及事件传递方式(Android SDK 中Localsocket就可以很好用做事件发送)。这种方式适合C/C++背景的开发人员上手Android,Java无需达到熟练即可。
+
+
+我本人也正在朝这个方向发展,希望有朝一日我也能被称上高手。
+
+喜欢这篇文章请投一下“精华帖” 或 “良好贴”,不喜欢请关闭此页面。这几天不知谁那么无良投了我几个“隐藏贴”,好伤心啊,早知道这样我就在CSDN上原创首发了。
+
+
+http://www.iteye.com/topic/1121899
View
31 Android/Android短信监听.html
@@ -0,0 +1,31 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<pre><code> Intent intent = new Intent(&quot;android.provider.Telephony.SMS_RECEIVED&quot;);
+ List&lt;ResolveInfo&gt; infos = getPackageManager().queryBroadcastReceivers(intent, 0);
+ for (ResolveInfo info : infos) {
+ Log.d(&quot;HELLO&quot;,&quot;Receiver name:&quot; + info.activityInfo.name + &quot;; priority=&quot; + info.priority);
+ }</code></pre>
+
+<p>输出日志:</p>
+
+<pre><code>12-18 20:45:58.077: D/HELLO(4714): Receiver name:cn.com.fetion.android.receivers.FetionReceiver; priority=2147483647
+12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.qq.AppService.MainReceiver; priority=2147483647
+12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.tencent.qqphonebook.component.remote.SmsReceiver; priority=2147483647
+12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.wandoujia.phoenix2.receivers.SmsReceivedReceiver; priority=2147483647
+12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.OnTheWay2.MyReceiver; priority=2147483647
+12-18 20:45:58.077: D/HELLO(4714): Receiver name:info.linxiangyu.autosms.SMSReceiver; priority=2147483647
+12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.ti.bluetooth.map.SmsEventReceiver; priority=0
+12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.android.mms.transaction.PrivilegedSmsReceiver; priority=0
+12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.htc.usage.receiver.MessageReceiver; priority=0
+12-18 20:45:58.077: D/HELLO(4714): Receiver name:net.hidroid.hinet.receiver.SmsReceiver; priority=0</code></pre>
+
+<p>reciver里面写一个 abortBroadcast();// 中止发送 就能终止发送</p>
+
+<p>拦截<a href='http://www.eoeandroid.com/thread-148381-1-1.html'>http://www.eoeandroid.com/thread-148381-1-1.html</a></p></html>
+</body>
View
31 Android/Android短信监听.md
@@ -0,0 +1,31 @@
+
+
+ Intent intent = new Intent("android.provider.Telephony.SMS_RECEIVED");
+ List<ResolveInfo> infos = getPackageManager().queryBroadcastReceivers(intent, 0);
+ for (ResolveInfo info : infos) {
+ Log.d("HELLO","Receiver name:" + info.activityInfo.name + "; priority=" + info.priority);
+ }
+
+
+输出日志:
+
+
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:cn.com.fetion.android.receivers.FetionReceiver; priority=2147483647
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.qq.AppService.MainReceiver; priority=2147483647
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.tencent.qqphonebook.component.remote.SmsReceiver; priority=2147483647
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.wandoujia.phoenix2.receivers.SmsReceivedReceiver; priority=2147483647
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.OnTheWay2.MyReceiver; priority=2147483647
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:info.linxiangyu.autosms.SMSReceiver; priority=2147483647
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.ti.bluetooth.map.SmsEventReceiver; priority=0
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.android.mms.transaction.PrivilegedSmsReceiver; priority=0
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:com.htc.usage.receiver.MessageReceiver; priority=0
+ 12-18 20:45:58.077: D/HELLO(4714): Receiver name:net.hidroid.hinet.receiver.SmsReceiver; priority=0
+
+
+
+reciver里面写一个
+abortBroadcast();// 中止发送
+就能终止发送
+
+
+拦截<http://www.eoeandroid.com/thread-148381-1-1.html>
View
75 Android/Android网络.html
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>检测网络情况</p>
+
+<pre><code>public void myClickHandler(View view) {
+
+ ConnectivityManager connMgr = (ConnectivityManager)
+ getSystemService(Context.CONNECTIVITY_SERVICE);
+ NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
+ if (networkInfo != null &amp;&amp; networkInfo.isConnected()) {
+ // fetch data
+ } else {
+ // display error
+ }
+
+}
+
+
+
+import android.content.Context;
+import android.net.ConnectivityManager;
+import android.net.NetworkInfo;
+import android.util.Log;
+
+public class CheckNet {
+ public static boolean checkNetwork(Context context) {
+ try {
+ ConnectivityManager connectivity = (ConnectivityManager) context
+ .getSystemService(Context.CONNECTIVITY_SERVICE);
+
+ if (connectivity != null) {
+
+ NetworkInfo info = connectivity.getActiveNetworkInfo();
+
+ if (info == null || !info.isAvailable())
+ return false;
+ else
+ return true;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return false;
+ }
+}
+
+
+
+private static final String DEBUG_TAG = &quot;NetworkStatusExample&quot;;
+...
+ConnectivityManager connMgr = (ConnectivityManager)
+ getSystemService(Context.CONNECTIVITY_SERVICE);
+NetworkInfo networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
+boolean isWifiConn = networkInfo.isConnected();
+networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
+boolean isMobileConn = networkInfo.isConnected();
+Log.d(DEBUG_TAG, &quot;Wifi connected: &quot; + isWifiConn);
+Log.d(DEBUG_TAG, &quot;Mobile connected: &quot; + isMobileConn);
+
+
+
+
+public boolean isOnline() {
+ ConnectivityManager connMgr = (ConnectivityManager)
+ getSystemService(Context.CONNECTIVITY_SERVICE);
+ NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
+ return (networkInfo != null &amp;&amp; networkInfo.isConnected());
+} </code></pre></html>
+</body>
View
4 Android/Android菜单md.html
@@ -6,6 +6,10 @@
</html>
<html>
<body>
+<p>侧滑菜单</p>
+
+<p><a href='http://stackoverflow.com/questions/8657894/android-facebook-style-slide'>http://stackoverflow.com/questions/8657894/android-facebook-style-slide</a></p>
+
<p>Activity中按Menu显示的菜单:</p>
<pre><code>  @Override
View
2  Android/Android菜单md.md
@@ -1,4 +1,6 @@
+侧滑菜单
+<http://stackoverflow.com/questions/8657894/android-facebook-style-slide>
View
10 Android/Android音频.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>JetCreater</p></html>
+</body>
View
1  Android/Android音频.md
@@ -0,0 +1 @@
+JetCreater
View
54 Android/GPS.html
@@ -0,0 +1,54 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<pre><code> &lt;uses-permission android:name=&quot;android.permission.ACCESS_FINE_LOCATION&quot; /&gt;</code></pre>
+<hr />
+<pre><code> LocationManager locMan = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
+ Location loc = locMan.getLastKnownLocation(LocationManager.GPS_PROVIDER);
+ if (loc != null) {
+ double lat = loc.getLatitude();
+ long x = loc.getTime();
+ Log.d(&quot;LXY&quot;, &quot;latitude: &quot; +x);
+ }
+
+ locMan.requestLocationUpdates(LocationManager.GPS_PROVIDER, 60000, 10,
+ new LocationListener() {
+ //分别是更新的时间(毫秒),距离
+
+ @Override
+ public void onStatusChanged(String provider, int status, Bundle extras) {
+ // TODO Auto-generated method stub
+
+
+ }
+
+ @Override
+ public void onProviderEnabled(String provider) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void onProviderDisabled(String provider) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void onLocationChanged(Location location) {
+ // TODO Auto-generated method stub
+ if (location != null) {
+ double lat = location.getLatitude();
+ Log.d(&quot;LXY&quot;, &quot;latitude: &quot; + lat);
+
+ }
+
+ }
+ });
+}</code></pre></html>
+</body>
View
10 Android/Untitled.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+</html>
+</body>
View
0  Android/Untitled.md
No changes.
View
6 Android/service.html
@@ -35,5 +35,9 @@
}
}
-}</code></pre></html>
+}</code></pre>
+
+<p>将组件放入独立的进程中,可以通过配置文件的 process 参数来实现,代码如下: // 在service配置信息中,增加process <pre class='markdown-html-error' style='border: solid 3px red; background-color: pink'>REXML could not parse this XML/HTML:
+&lt;service android:name=&quot;SimpleService&quot;
+ android:process=&quot;:a_unique_process_name&quot;/&gt;</pre> 但这样的方式会增加进程开销。因此,另一种可行的策略是在服务组件中另起一个 独立的线程,将那些耗时又费力的操作交给它来打理。</p></html>
</body>
View
10 Android/service.md
@@ -31,4 +31,12 @@
}
}
- }
+ }
+
+
+
+将组件放入独立的进程中,可以通过配置文件的 process 参数来实现,代码如下:
+
+ // 在service配置信息中,增加process
+
+ <service android:name="SimpleService"
View
47 AndroidNotes/ GreenDroid- Library For Android UI Devlopment.html
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p><a href='http://greendroid.cyrilmottier.com/'>Green Droid</a> is a great open source library for Android UI Devlopment. And it&#8217;s under Apache License, you can use it in commercial product.</p>
+
+<p>Use the library is samlpe:</p>
+
+<ol>
+<li>
+<p>Under your project directory: <code>git clone git://github.com/cyrilmottier/GreenDroid.git</code></p>
+</li>
+
+<li>
+<p>Open Eclipese, <code>New -&gt; Android Project from Existing Code</code><code>, chose the directory of GreenDroid</code></p>
+</li>
+
+<li>
+<p>You may need to fix some error. Becouse Eclipese will treat the GreenDroid-GoogleApis as Android Project and not link the Google API Library automatically. Chose the project&#8217;s properties and select Android Tab, Change Project Build Path to Google APIs.</p>
+</li>
+
+<li>
+<p>Create a new Android Application Project</p>
+</li>
+
+<li>
+<p>In your AndroidManifest.xml, go to the application tag and add <code>android:theme=&quot;@style/Theme.GreenDroid&quot;</code> as a new attribute.</p>
+</li>
+
+<li>
+<p>create you activity inheritiing from GDActivity and Put this code in you activity</p>
+
+<pre><code>protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setActionBarContentView(R.layout.main);
+}</code></pre>
+</li>
+
+<li>
+<p>Run it !</p>
+</li>
+</ol></html>
+</body>
View
25 AndroidNotes/ GreenDroid- Library For Android UI Devlopment.md
@@ -0,0 +1,25 @@
+[Green Droid](http://greendroid.cyrilmottier.com/) is a great open source library for Android UI Devlopment. And it's under Apache License, you can use it in commercial product.
+
+Use the library is samlpe:
+
+1. Under your project directory: `git clone git://github.com/cyrilmottier/GreenDroid.git`
+
+2. Open Eclipese, `New -> Android Project from Existing Code``, chose the directory of GreenDroid
+
+3. You may need to fix some error. Becouse Eclipese will treat the GreenDroid-GoogleApis as Android Project and not link the Google API Library automatically. Chose the project's properties and select Android Tab, Change Project Build Path to Google APIs.
+
+4. Create a new Android Application Project
+
+5. In your AndroidManifest.xml, go to the application tag and add `android:theme="@style/Theme.GreenDroid"` as a new attribute.
+
+6. create you activity inheritiing from GDActivity and Put this code in you activity
+
+
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setActionBarContentView(R.layout.main);
+ }
+
+7. Run it !
+
+
View
BIN  AndroidNotes/.DS_Store
Binary file not shown
View
164 AndroidNotes/Some Open Source Library of Android Development.html
@@ -0,0 +1,164 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<h2 id='utility'>Utility</h2>
+
+<ul>
+<li>Droid-fu(ignition)</li>
+
+<li>android-screenshot-library</li>
+
+<li>android-alarm-database</li>
+
+<li>OpenIntents</li>
+
+<li>ACRA</li>
+
+<li>AndroidAnnotations</li>
+
+<li>AndroidAsync</li>
+
+<li><a href='http://loopj.com/android-async-http/'>Android Asynchronous Http Client</a></li>
+</ul>
+
+<h2 id='persistance'>Persistance</h2>
+
+<ul>
+<li>
+<p>Simple XML Serialization Library (with Android Instructions)</p>
+</li>
+
+<li>
+<p>GSON JSON Serialization Library (with Android Instructions)</p>
+</li>
+
+<li>
+<p><a href='http://ormlite.com/'>OrmLite - Lightweight Object Relational Mapping (ORM) Java Package</a></p>
+</li>
+
+<li>
+<p><a href='http://greendao-orm.com/'>greenDAO - an open source project to help Android developers working with data stored in SQLite.</a></p>
+</li>
+
+<li>
+<p><a href='https://www.activeandroid.com/'>ActiveAndroid - Active record style SQLite persistence for Android</a></p>
+</li>
+</ul>
+
+<h2 id='network'>Network</h2>
+
+<ul>
+<li>Ganymed SSH2</li>
+
+<li>oauth-signpost</li>
+</ul>
+
+<h2 id='barcodeqrcodeimage_processing'>Barcode/QR-Code/Image Processing</h2>
+
+<ul>
+<li>
+<p><a href='http://code.google.com/p/zxing/'>zxing: Multi-format 1D/2D barcode image processing library with clients for Android, Java</a></p>
+</li>
+
+<li>
+<p>jjil (Image Processing)</p>
+</li>
+
+<li>
+<p>OpenASURF (Image Processing)</p>
+</li>
+</ul>
+
+<h2 id='contactssocial_network'>Contacts/Social Network</h2>
+
+<ul>
+<li>AndroidLibs</li>
+
+<li>Jackcess (MS Access) (small Android FIX)</li>
+
+<li>Twitter4J</li>
+
+<li>Facebook Android SDK</li>
+</ul>
+
+<h2 id='ui_stuff'>UI stuff</h2>
+
+<ul>
+<li>android-wheel</li>
+
+<li>GreenDroid</li>
+
+<li>android-actionbar</li>
+</ul>
+
+<h2 id='mixedallround'>Mixed/Allround</h2>
+
+<ul>
+<li>CWAC (CommonsWare Android Components)</li>
+
+<li>libs-for-android</li>
+
+<li>android-misc-widgets</li>
+</ul>
+
+<h2 id='maps'>Maps</h2>
+
+<ul>
+<li>android-mapviewballoons</li>
+
+<li>osmdroid</li>
+
+<li>mapsforge</li>
+</ul>
+
+<h2 id='game_engines3d_stuff'>Game Engines/3D stuff</h2>
+
+<ul>
+<li>libgdx</li>
+
+<li>forget3d</li>
+
+<li>min3d</li>
+
+<li>Angle</li>
+
+<li>AndEngine</li>
+
+<li>jMonkeyEngine</li>
+</ul>
+
+<h2 id='image_processing_and_graphics'>Image Processing and Graphics</h2>
+
+<ul>
+<li>OpenCV for Android</li>
+</ul>
+
+<h2 id='translation'>Translation</h2>
+
+<ul>
+<li>Google Translate API - Java (Not specific for Android, but works)</li>
+</ul>
+
+<h2 id='testing'>Testing</h2>
+
+<ul>
+<li>Borachio (Android Instructions)</li>
+</ul>
+
+<h2 id='tts__stt'>TTS / STT</h2>
+
+<ul>
+<li>Eyes Free (A TTS Library)</li>
+</ul>
+
+<h2 id='other_lists'>Other Lists</h2>
+
+<ul>
+<li><a href='http://www.openintents.org/en/libraries'>OpenIntents List of Useful Libraries</a></li>
+</ul></html>
+</body>
View
86 AndroidNotes/Some Open Source Library of Android Development.md
@@ -0,0 +1,86 @@
+## Utility
+
+- Droid-fu(ignition)
+- android-screenshot-library
+- android-alarm-database
+- OpenIntents
+- ACRA
+- AndroidAnnotations
+- AndroidAsync
+- [Android Asynchronous Http Client](http://loopj.com/android-async-http/)
+
+## Persistance
+
+- Simple XML Serialization Library (with Android Instructions)
+- GSON JSON Serialization Library (with Android Instructions)
+- [OrmLite - Lightweight Object Relational Mapping (ORM) Java Package](http://ormlite.com/)
+- [greenDAO - an open source project to help Android developers working with data stored in SQLite. ](http://greendao-orm.com/)
+- [ActiveAndroid - Active record style SQLite persistence for Android](https://www.activeandroid.com/)
+
+
+
+## Network
+
+- Ganymed SSH2
+- oauth-signpost
+
+## Barcode/QR-Code/Image Processing
+
+- [zxing: Multi-format 1D/2D barcode image processing library with clients for Android, Java](http://code.google.com/p/zxing/)
+
+- jjil (Image Processing)
+- OpenASURF (Image Processing)
+
+## Contacts/Social Network
+
+- AndroidLibs
+- Jackcess (MS Access) (small Android FIX)
+- Twitter4J
+- Facebook Android SDK
+
+##UI stuff
+
+- android-wheel
+- GreenDroid
+- android-actionbar
+
+## Mixed/Allround
+
+- CWAC (CommonsWare Android Components)
+- libs-for-android
+- android-misc-widgets
+
+## Maps
+
+- android-mapviewballoons
+- osmdroid
+- mapsforge
+
+## Game Engines/3D stuff
+
+- libgdx
+- forget3d
+- min3d
+- Angle
+- AndEngine
+- jMonkeyEngine
+
+## Image Processing and Graphics
+
+- OpenCV for Android
+
+## Translation
+
+- Google Translate API - Java (Not specific for Android, but works)
+
+## Testing
+
+- Borachio (Android Instructions)
+
+## TTS / STT
+
+- Eyes Free (A TTS Library)
+
+## Other Lists
+
+- [OpenIntents List of Useful Libraries](http://www.openintents.org/en/libraries)
View
18 AndroidNotes/Some Open Source UI Library of Android Development.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p><a href='https://github.com/thiagolocatelli/android-uitableview'>UITableView for Android</a> <img alt='' src='https://a248.e.akamai.net/camo.github.com/0a19f695fcf2fb967fdbd8ab485be02ff07932aa/687474703a2f2f74686961676f2e6772656d2e696f2f696d672f6769746875622f75697461626c652d76696577332e706e67' /></p>
+
+<p><a href='https://github.com/nostra13/Android-Universal-Image-Loader'>Universal Image Loader for Android</a> <img alt='' src='https://github.com/nostra13/Android-Universal-Image-Loader/raw/master/UniversalImageLoader.png' /></p>
+
+<p><a href='https://github.com/chrisbanes/Android-PullToRefresh'>Pull To Refresh Views for Android</a> <img alt='' src='https://github.com/chrisbanes/Android-PullToRefresh/raw/master/header_graphic.png' /></p>
+
+<p><a href='http://viewpagerindicator.com/'>Android ViewPagerIndicator</a> <img alt='' src='https://raw.github.com/JakeWharton/Android-ViewPagerIndicator/master/sample/screens.png' /></p>
+
+<p><a href='https://github.com/jfeinstein10/SlidingMenu'>SlidingMenu</a></p></html>
+</body>
View
17 AndroidNotes/Some Open Source UI Library of Android Development.md
@@ -0,0 +1,17 @@
+[UITableView for Android](https://github.com/thiagolocatelli/android-uitableview)
+![](https://a248.e.akamai.net/camo.github.com/0a19f695fcf2fb967fdbd8ab485be02ff07932aa/687474703a2f2f74686961676f2e6772656d2e696f2f696d672f6769746875622f75697461626c652d76696577332e706e67)
+
+[Universal Image Loader for Android](https://github.com/nostra13/Android-Universal-Image-Loader)
+![](https://github.com/nostra13/Android-Universal-Image-Loader/raw/master/UniversalImageLoader.png)
+
+
+
+[Pull To Refresh Views for Android](https://github.com/chrisbanes/Android-PullToRefresh)
+![](https://github.com/chrisbanes/Android-PullToRefresh/raw/master/header_graphic.png)
+
+
+
+[Android ViewPagerIndicator](http://viewpagerindicator.com/)
+![](https://raw.github.com/JakeWharton/Android-ViewPagerIndicator/master/sample/screens.png)
+
+[SlidingMenu](https://github.com/jfeinstein10/SlidingMenu)
View
69 AndroidNotes/Start Libgdx Game Engine.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p><a href='http://libgdx.badlogicgames.com'>Libgdx</a> is a popular crossplatform game engine.</p>
+
+<p>Project Setup:</p>
+
+<ol>
+<li>
+<p>Downland files from <a href='http://code.google.com/p/libgdx/downloads/list'>http://code.google.com/p/libgdx/downloads/list</a></p>
+</li>
+
+<li>
+<p>Go to the project folder on the file system and create a subfolder named libs. From the nightly zip, place gdx-backend-android.jar and the armeabi and armeabi-v7a folders in the libs folder. In Eclipse, right click the project -&gt; Refresh. Right click again -&gt; Properties -&gt; Java Build Path -&gt; Libraries -&gt; Add JARs, select gdx-backend-android.jar and click OK.</p>
+</li>
+
+<li>
+<p>Create a Game</p>
+
+<p>Creating a game In your main project, create a new class: right click the project -&gt; New -&gt; Class. Name it &#8220;Game&#8221; and specify a package (eg, &#8220;com.gamename&#8221;). Next to Interfaces, click Add, choose ApplicationListener, and click OK. It will look like this:</p>
+
+<pre><code>import com.badlogic.gdx.ApplicationListener;
+
+public class Game implements ApplicationListener {
+ public void create () {
+ }
+
+ public void render () {
+ }
+
+ public void resize (int width, int height){
+ }
+
+ public void pause () {
+ }
+
+ public void resume () {
+ }
+
+ public void dispose () {
+ }
+ }</code></pre>
+</li>
+
+<li>
+<p>Running the game</p>
+</li>
+</ol>
+
+<p>Open the Activity class in the Android project that was automatically created and make it look like this:</p>
+
+<pre><code> import com.badlogic.gdx.backends.android.AndroidApplication;
+
+ public class AndroidGame extends AndroidApplication {
+ public void onCreate (android.os.Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ initialize(new Game(), false);
+ }
+ }</code></pre>
+
+<p>And just Run it!</p>
+
+<p>More details see <a href='http://code.google.com/p/libgdx/wiki/ProjectSetup'>http://code.google.com/p/libgdx/wiki/ProjectSetup</a></p></html>
+</body>
View
54 AndroidNotes/Start Libgdx Game Engine.md
@@ -0,0 +1,54 @@
+[Libgdx](http://libgdx.badlogicgames.com) is a popular crossplatform game engine.
+
+Project Setup:
+
+1. Downland files from <http://code.google.com/p/libgdx/downloads/list>
+2. Go to the project folder on the file system and create a subfolder named libs. From the nightly zip, place gdx-backend-android.jar and the armeabi and armeabi-v7a folders in the libs folder.
+In Eclipse, right click the project -> Refresh. Right click again -> Properties -> Java Build Path -> Libraries -> Add JARs, select gdx-backend-android.jar and click OK.
+3. Create a Game
+
+ Creating a game
+In your main project, create a new class: right click the project -> New -> Class. Name it "Game" and specify a package (eg, "com.gamename"). Next to Interfaces, click Add, choose ApplicationListener, and click OK. It will look like this:
+
+ import com.badlogic.gdx.ApplicationListener;
+
+ public class Game implements ApplicationListener {
+ public void create () {
+ }
+
+ public void render () {
+ }
+
+ public void resize (int width, int height){
+ }
+
+ public void pause () {
+ }
+
+ public void resume () {
+ }
+
+ public void dispose () {
+ }
+ }
+
+4. Running the game
+
+Open the Activity class in the Android project that was automatically created and make it look like this:
+
+ import com.badlogic.gdx.backends.android.AndroidApplication;
+
+ public class AndroidGame extends AndroidApplication {
+ public void onCreate (android.os.Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ initialize(new Game(), false);
+ }
+ }
+
+And just Run it!
+
+More details see <http://code.google.com/p/libgdx/wiki/ProjectSetup>
+
+
+
+
View
39 Android获取手机信息.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>在android系统中获取imei号和其他手机信息 如果需要通过android SDK获取手机相关信息。需要通过如下方式获取:</p>
+
+<pre><code> TelephonyManager telephonyManager=(TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
+String imei=telephonyManager.getDeviceId();</code></pre>
+
+<p>不过,光这么写,会有类似如何查看android产生的异常的报错,主要是因为android的权限需要打开,在AndroidManifest.xml文件中增加:</p>
+
+<pre><code> &lt;uses-permission android:name=&quot;android.permission.READ_PHONE_STATE&quot; /&gt;</code></pre>
+
+<p>就可以拿到手机的imei号了。</p>
+
+<p>TelephonyManager还有其他方法可以调用,获取手机的其他信息。</p>
+
+<p>比如获取手机号码,可以这样:</p>
+
+<pre><code>telephonyManager.getLine1Number();</code></pre>
+
+<p>不过在g1手机上测试,使用移动全球通的sim卡,无法得到手机号码,是个空字符串。</p>
+
+<p>获取手机的sim卡号:</p>
+
+<pre><code>telephonyManager.getSimSerialNumber();</code></pre>
+
+<p>这个可以在上述环境下得到。</p>
+
+<p>获取客户id,在gsm中是imsi号:</p>
+
+<pre><code>telephonyManager.getSubscriberId();</code></pre>
+
+<p>这个也能在商户环境得到。</p></html>
+</body>
View
30 Android获取手机信息.md
@@ -0,0 +1,30 @@
+在android系统中获取imei号和其他手机信息
+如果需要通过android SDK获取手机相关信息。需要通过如下方式获取:
+
+ TelephonyManager telephonyManager=(TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
+ String imei=telephonyManager.getDeviceId();
+不过,光这么写,会有类似如何查看android产生的异常的报错,主要是因为android的权限需要打开,在AndroidManifest.xml文件中增加:
+
+ <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+就可以拿到手机的imei号了。
+
+
+TelephonyManager还有其他方法可以调用,获取手机的其他信息。
+
+比如获取手机号码,可以这样:
+
+ telephonyManager.getLine1Number();
+
+不过在g1手机上测试,使用移动全球通的sim卡,无法得到手机号码,是个空字符串。
+
+获取手机的sim卡号:
+
+ telephonyManager.getSimSerialNumber();
+
+这个可以在上述环境下得到。
+
+获取客户id,在gsm中是imsi号:
+
+ telephonyManager.getSubscriberId();
+
+这个也能在商户环境得到。
View
30 CPA.html
@@ -0,0 +1,30 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>我不懂经管财会专业的东西。但是我在网上搜集资料的能力或许强一点,以前看过一些杂七杂八的东西,分享一下。</p>
+
+<p>以前看到过的文章,已经写的非常详细了。</p>
+
+<p><a href='http://www.douban.com/note/184336979/'>微谈: 在校大学生考注册会计师(CPA)之一:注册会计师证书(CPA)价值</a></p>
+
+<p>这个论坛汇聚了挺多的经管类的资源</p>
+
+<p><a href='http://bbs.pinggu.org/'>人大经济学论坛</a></p>
+
+<p>另外有个考证介绍</p>
+
+<p><a href='http://www.douban.com/note/162053571/'>金融职称介绍(CIIA、CHFP、AFP、CFP、EFP、RFP、CFA</a></p>
+
+<p>类似于CFA(三级全过),CPA之类的证书,还是很有含金量的。至少可以保证你毕业的收入大大超出平均水平。</p>
+
+<p>CPA之类网上资源很多,所有教材,笔记都能在网上找到。还有网校资源,专门在网上搞相关培训的,教学视频网上也有。</p>
+
+<p>虽然教材比较中规中矩,乏味一点,内容也比较多。但是,章节条理很清楚,自学没问题。</p>
+
+<p>我也就没事做的时候看看税法,研究共产党如何一层层重复收税。。你买个百十来块的进口化妆品,价格里面包含关税+奢侈品税+营业税+XX税。。。。(所以你看美国的很多东西折算成人民币会便宜好多)。。。看看经济法。。懂点法律。。。以后找不到工作去当农民工,就不用爬到楼顶,用威胁跳楼的方法来讨薪了。。</p></html>
+</body>
View
34 CPA.md
@@ -0,0 +1,34 @@
+
+
+
+
+我不懂经管财会专业的东西。但是我在网上搜集资料的能力或许强一点,以前看过一些杂七杂八的东西,分享一下。
+
+
+以前看到过的文章,已经写的非常详细了。
+
+[微谈: 在校大学生考注册会计师(CPA)之一:注册会计师证书(CPA)价值](http://www.douban.com/note/184336979/)
+
+
+这个论坛汇聚了挺多的经管类的资源
+
+[人大经济学论坛](http://bbs.pinggu.org/)
+
+
+另外有个考证介绍
+
+[金融职称介绍(CIIA、CHFP、AFP、CFP、EFP、RFP、CFA](http://www.douban.com/note/162053571/)
+
+类似于CFA(三级全过),CPA之类的证书,还是很有含金量的。至少可以保证你毕业的收入大大超出平均水平。
+
+CPA之类网上资源很多,所有教材,笔记都能在网上找到。还有网校资源,专门在网上搞相关培训的,教学视频网上也有。
+
+虽然教材比较中规中矩,乏味一点,内容也比较多。但是,章节条理很清楚,自学没问题。
+
+我也就没事做的时候看看税法,研究共产党如何一层层重复收税。。你买个百十来块的进口化妆品,价格里面包含关税+奢侈品税+营业税+XX税。。。。(所以你看美国的很多东西折算成人民币会便宜好多)。。。看看经济法。。懂点法律。。。以后找不到工作去当农民工,就不用爬到楼顶,用威胁跳楼的方法来讨薪了。。
+
+
+
+
+
+
View
16 CSS.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>CSS框架</p>
+
+<p><a href='http://www.blueprintcss.org/'>http://www.blueprintcss.org/</a> <a href='http://alexdunphy.github.com/refineslide/'>http://alexdunphy.github.com/refineslide/</a> <a href='http://compass-style.org/'>http://compass-style.org/</a></p>
+
+<p>图标</p>
+
+<p><a href='http://fortawesome.github.com/Font-Awesome/'>http://fortawesome.github.com/Font-Awesome/</a></p></html>
+</body>
View
10 CSS.md
@@ -0,0 +1,10 @@
+
+CSS框架
+
+<http://www.blueprintcss.org/>
+<http://alexdunphy.github.com/refineslide/>
+<http://compass-style.org/>
+
+图标
+
+<http://fortawesome.github.com/Font-Awesome/>
View
3  MacDev.txt
@@ -0,0 +1,3 @@
+
+
+<http://codevarium.gameka.com.br/how-to-create-your-own-beautiful-dmg-files/>
View
16 Web开发资源.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>CSS框架</p>
+
+<p><a href='http://www.blueprintcss.org/'>http://www.blueprintcss.org/</a></p>
+
+<p>图标</p>
+
+<p><a href='http://fortawesome.github.com/Font-Awesome/'>http://fortawesome.github.com/Font-Awesome/</a></p></html>
+</body>
View
8 Web开发资源.md
@@ -0,0 +1,8 @@
+
+CSS框架
+
+<http://www.blueprintcss.org/>
+
+图标
+
+<http://fortawesome.github.com/Font-Awesome/>
View
16 Web资源.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>CSS框架</p>
+
+<p><a href='http://www.blueprintcss.org/'>http://www.blueprintcss.org/</a></p>
+
+<p>图标</p>
+
+<p><a href='http://fortawesome.github.com/Font-Awesome/'>http://fortawesome.github.com/Font-Awesome/</a></p></html>
+</body>
View
8 Web资源.md
@@ -0,0 +1,8 @@
+
+CSS框架
+
+<http://www.blueprintcss.org/>
+
+图标
+
+<http://fortawesome.github.com/Font-Awesome/>
View
38 bootstrap.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>doitian 1楼, 2天前 喜欢 block 没设定宽度是不能 margin auto 来居中的,一个简单的办法是 display: table</p>
+
+<p>PS:</p>
+
+<p>display: table width: auto margin-left: auto margin-right: auto</p>
+
+<p>panywhang 2楼, 2天前 喜欢 <center /></p>
+
+<p>QueXuQ 3楼, 2天前 喜欢</p>
+
+<h1 id='2_panywhang_'>2楼 @panywhang 二楼什么状况??</h1>
+
+<h1 id='1_doitian_span12divdisplay_table'>1楼 @doitian 哦。是在span12里面的div设置为display: table吗?</h1>
+
+<p>QueXuQ 4楼, 2天前 喜欢 哥们,本贴出现bug了。@Rei @huacnlee</p>
+
+<p>serco 5楼, 2天前 喜欢</p>
+
+<h1 id='4_mquexuq__bug'>4楼 m@QueXuQ 我来测试下新功能 原来真是bug。。。</h1>
+
+<p>doitian 6楼, 1天前 喜欢</p>
+
+<h1 id='3_quexuq__class'>3楼 @QueXuQ 可以加个 class</h1>
+
+<p>.center { width: auto; display: table; margin-left: auto; margin-right: auto; } .text-center { text-align: center; }</p>
+<div class='center'>
+ pla pla pla
+</div>
+<p>chucai 7楼, 1天前 喜欢 这里有一个居中的实列 http://twitter.github.com/bootstrap/examples/marketing-narrow.html</p></html>
+</body>
View
48 bootstrap.md
@@ -0,0 +1,48 @@
+doitian 1楼, 2天前 喜欢
+block 没设定宽度是不能 margin auto 来居中的,一个简单的办法是 display: table
+
+PS:
+
+display: table
+width: auto
+margin-left: auto
+margin-right: auto
+
+panywhang 2楼, 2天前 喜欢
+<center></center>
+
+
+QueXuQ 3楼, 2天前 喜欢
+#2楼 @panywhang 二楼什么状况??
+#1楼 @doitian 哦。是在span12里面的div设置为display: table吗?
+
+
+QueXuQ 4楼, 2天前 喜欢
+哥们,本贴出现bug了。@Rei @huacnlee
+
+
+serco 5楼, 2天前 喜欢
+#4楼 m@QueXuQ 我来测试下新功能 原来真是bug。。。
+
+
+doitian 6楼, 1天前 喜欢
+#3楼 @QueXuQ 可以加个 class
+
+.center {
+ width: auto;
+ display: table;
+ margin-left: auto;
+ margin-right: auto;
+}
+.text-center {
+ text-align: center;
+}
+
+
+<div class="center">
+ pla pla pla
+</div>
+
+chucai 7楼, 1天前 喜欢
+这里有一个居中的实列
+http://twitter.github.com/bootstrap/examples/marketing-narrow.html
View
10 cocos2d.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p><a href='http://www.supersuraccoon-cocos2d.com/zh/2012/11/14/introduction-to-some-great-ios-gesture-recognition-libraries-cocos2d/'>手势库</a></p></html>
+</body>
View
1  cocos2d.md
@@ -0,0 +1 @@
+[手势库](http://www.supersuraccoon-cocos2d.com/zh/2012/11/14/introduction-to-some-great-ios-gesture-recognition-libraries-cocos2d/ )
View
2  eclipese.md
@@ -1,4 +1,4 @@
## Auto Complete
-最简单的修改方式是:Windows——>Preferences——>Java-->Editor-->Content Asist,在Auto activation triggers for Java后面的文本框里只有一个“.”。现在你将其改为“.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ”即可。然后你再试试,会发现,现在的补全功能跟VS差不多了。你还可以在Advanced和Favorite里进行高级的设置。
+最简单的修改方式是:Windows——>Preferences——>Java-->Editor-->Content Asist,在Auto activation triggers for Java后面的文本框里只有一个“.”。现在你将其改为“.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ”即可。然后你再试试,会发现,现在的补全功能跟VS差不多了。你还可以在Advanced和Favorite里进行高级的设置。````
View
1  fq.md
@@ -0,0 +1 @@
+Snova和APJP
View
4 heroku.html
@@ -42,5 +42,9 @@
<li>
<p>http://www.ruanyifeng.com/blog/2011/08/list_of_cloud_platforms.html</p>
</li>
+
+<li>
+<p><a href='http://rdegges.com/heroku-isnt-for-idiots'>http://rdegges.com/heroku-isnt-for-idiots</a></p>
+</li>
</ul></html>
</body>
View
3  heroku.md
@@ -11,4 +11,5 @@
- https://devcenter.heroku.com
- [Getting Started with iOS Mobile Development and a Sinatra API](https://devcenter.heroku.com/articles/getting-started-ios-development-sinatra-cedar)
-- http://www.ruanyifeng.com/blog/2011/08/list_of_cloud_platforms.html
+- http://www.ruanyifeng.com/blog/2011/08/list_of_cloud_platforms.html
+- <http://rdegges.com/heroku-isnt-for-idiots>
View
48 idea.html
@@ -0,0 +1,48 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<h2 id='id36'>一双</h2>
+
+<p>韩寒搞了一个,我搞一双</p>
+
+<p>左手程序右手诗</p>
+
+<p>Web + iOS + Android 一个人看花多少…</p>
+
+<p>后台技术用Ruby</p>
+
+<p>内容:豆瓣, hacknews</p>
+
+<h2 id='id37'>摇摇乐</h2>
+
+<h2 id='id38'>读书应用</h2>
+
+<h2 id='id39'>监控</h2>
+
+<h2 id='id40'>近况</h2>
+
+<h2 id='id41'>阅读应用</h2>
+
+<p>调用API</p>
+
+<h2 id='id42'>人人应用</h2>
+
+<h2 id='id43'>笔记</h2>
+
+<p>Markdown github</p>
+
+<h2 id='id44'>传统软件地优化</h2>
+
+<p>进销存、会计</p>
+
+<h2 id='id45'>在线学习社区</h2>
+
+<h2 id='id46'>小孩撒尿游戏</h2>
+
+<p>比利时的小孩撒尿。。。传感器控制撒尿浇灭东西。加入各种模式,比如救火,恶搞。。。下一个愤怒的小鸟?</p></html>
+</body>
View
37 idea.md
@@ -1 +1,36 @@
-小孩撒尿游戏
+
+## 一双
+韩寒搞了一个,我搞一双
+
+左手程序右手诗
+
+Web + iOS + Android 一个人看花多少…
+
+后台技术用Ruby
+
+内容:豆瓣, hacknews
+
+
+## 摇摇乐
+## 读书应用
+## 监控
+## 近况
+
+
+## 阅读应用
+调用API
+
+## 人人应用
+
+
+## 笔记
+Markdown github
+
+## 传统软件地优化
+进销存、会计
+
+## 在线学习社区
+
+## 小孩撒尿游戏
+
+比利时的小孩撒尿。。。传感器控制撒尿浇灭东西。加入各种模式,比如救火,恶搞。。。下一个愤怒的小鸟?
View
2  index.html
@@ -6,5 +6,5 @@
</html>
<html>
<body>
-<ui><li><a href=.//Android/AndroidRecipes.html>AndroidRecipes </a></li><li><a href=.//Android/Android屏幕常亮.html>Android屏幕常亮 </a></li><li><a href=.//Android/Android菜单md.html>Android菜单md </a></li><li><a href=.//Android/Application.html>Application </a></li><li><a href=.//Android/IntentAndActivity.html>IntentAndActivity </a></li><li><a href=.//Android/data.html>data </a></li><li><a href=.//Android/dev_tools.html>dev_tools </a></li><li><a href=.//Android/game/FullWindows.html>FullWindows </a></li><li><a href=.//Android/listview.html>listview </a></li><li><a href=.//Android/mobile_dev.html>mobile_dev </a></li><li><a href=.//Android/service.html>service </a></li><li><a href=.//Android/system.html>system </a></li><li><a href=.//Android/thread.html>thread </a></li><li><a href=.//Android/touch.html>touch </a></li><li><a href=.//Cloud Foundry.html>Cloud Foundry </a></li><li><a href=.//JavaScript.html>JavaScript </a></li><li><a href=.//ProgrammingLanguage.html>ProgrammingLanguage </a></li><li><a href=.//WebAPI/mobileAPI.html>mobileAPI </a></li><li><a href=.//ZhenFang.html>ZhenFang </a></li><li><a href=.//about/10-7.html>10-7 </a></li><li><a href=.//about/2012-9.html>2012-9 </a></li><li><a href=.//about/resume.html>resume </a></li><li><a href=.//book.html>book </a></li><li><a href=.//cocoa-for-mac-os-note.html>cocoa-for-mac-os-note </a></li><li><a href=.//cpp.html>cpp </a></li><li><a href=.//cs_resource.html>cs_resource </a></li><li><a href=.//eclipese.html>eclipese </a></li><li><a href=.//fav/1.html>1 </a></li><li><a href=.//game.html>game </a></li><li><a href=.//git.html>git </a></li><li><a href=.//heroku.html>heroku </a></li><li><a href=.//hfrails.html>hfrails </a></li><li><a href=.//how-to-study-computer.html>how-to-study-computer </a></li><li><a href=.//html.html>html </a></li><li><a href=.//http.html>http </a></li><li><a href=.//ios/cocos-iPhone.html>cocos-iPhone </a></li><li><a href=.//ios/game.html>game </a></li><li><a href=.//ios/ios_dev.html>ios_dev </a></li><li><a href=.//ios/memory.html>memory </a></li><li><a href=.//ios/objective-c.html>objective-c </a></li><li><a href=.//ios.html>ios </a></li><li><a href=.//java.html>java </a></li><li><a href=.//linux.html>linux </a></li><li><a href=.//lua.html>lua </a></li><li><a href=.//mobile_game_dev.html>mobile_game_dev </a></li><li><a href=.//osx_config.html>osx_config </a></li><li><a href=.//php.html>php </a></li><li><a href=.//plan/mobile.html>mobile </a></li><li><a href=.//post/learn-c.html>learn-c </a></li><li><a href=.//post/learn-cs.html>learn-cs </a></li><li><a href=.//post/the_newbie's_guide_to_the_internet.html>the_newbie's_guide_to_the_internet </a></li><li><a href=.//proxy_rb.html>proxy_rb </a></li><li><a href=.//rack.html>rack </a></li><li><a href=.//rails.html>rails </a></li><li><a href=.//redis.html>redis </a></li><li><a href=.//ruby_study.html>ruby_study </a></li><li><a href=.//ruby部署.html>ruby部署 </a></li><li><a href=.//sinatra/sinatra.html>sinatra </a></li><li><a href=.//sql.html>sql </a></li><li><a href=.//sqlite.html>sqlite </a></li><li><a href=.//start/linux.html>linux </a></li><li><a href=.//sublime.html>sublime </a></li><li><a href=.//suisuinian/1.html>1 </a></li><li><a href=.//teacher/1.html>1 </a></li><li><a href=.//teacher/start.html>start </a></li><li><a href=.//todo.html>todo </a></li><li><a href=.//tumblr/10-14-a-note-of-start-rails.html>10-14-a-note-of-start-rails </a></li><li><a href=.//tumblr/11-23-my-computer-study-experience.html>11-23-my-computer-study-experience </a></li><li><a href=.//tumblr/11-27-learning-by-build-own-application.html>11-27-learning-by-build-own-application </a></li><li><a href=.//tumblr/11-30-improve-efficiency.html>11-30-improve-efficiency </a></li><li><a href=.//tumblr/9-28-plan-of-fisrt-semseter.html>9-28-plan-of-fisrt-semseter </a></li><li><a href=.//which_to_study.html>which_to_study </a></li><li><a href=.//xcode.html>xcode </a></li></ui></html>
+<ui><li><a href=.//API解决方案.html>API解决方案 </a></li><li><a href=.//Android/Android SDK接入.html>Android SDK接入 </a></li><li><a href=.//Android/Android UI界面.html>Android UI界面 </a></li><li><a href=.//Android/AndroidRecipes.html>AndroidRecipes </a></li><li><a href=.//Android/Android下载.html>Android下载 </a></li><li><a href=.//Android/Android反编译.html>Android反编译 </a></li><li><a href=.//Android/Android学习.html>Android学习 </a></li><li><a href=.//Android/Android客户信息.html>Android客户信息 </a></li><li><a href=.//Android/Android屏幕常亮.html>Android屏幕常亮 </a></li><li><a href=.//Android/Android测试.html>Android测试 </a></li><li><a href=.//Android/Android消息推送.html>Android消息推送 </a></li><li><a href=.//Android/Android盈利.html>Android盈利 </a></li><li><a href=.//Android/Android短信监听.html>Android短信监听 </a></li><li><a href=.//Android/Android网络.html>Android网络 </a></li><li><a href=.//Android/Android菜单md.html>Android菜单md </a></li><li><a href=.//Android/Android音频.html>Android音频 </a></li><li><a href=.//Android/Application.html>Application </a></li><li><a href=.//Android/GPS.html>GPS </a></li><li><a href=.//Android/IntentAndActivity.html>IntentAndActivity </a></li><li><a href=.//Android/Untitled.html>Untitled </a></li><li><a href=.//Android/data.html>data </a></li><li><a href=.//Android/dev_tools.html>dev_tools </a></li><li><a href=.//Android/game/FullWindows.html>FullWindows </a></li><li><a href=.//Android/listview.html>listview </a></li><li><a href=.//Android/mobile_dev.html>mobile_dev </a></li><li><a href=.//Android/service.html>service </a></li><li><a href=.//Android/system.html>system </a></li><li><a href=.//Android/thread.html>thread </a></li><li><a href=.//Android/touch.html>touch </a></li><li><a href=.//AndroidNotes/ GreenDroid- Library For Android UI Devlopment.html> GreenDroid- Library For Android UI Devlopment </a></li><li><a href=.//AndroidNotes/Some Open Source Library of Android Development.html>Some Open Source Library of Android Development </a></li><li><a href=.//AndroidNotes/Some Open Source UI Library of Android Development.html>Some Open Source UI Library of Android Development </a></li><li><a href=.//AndroidNotes/Start Libgdx Game Engine.html>Start Libgdx Game Engine </a></li><li><a href=.//Android获取手机信息.html>Android获取手机信息 </a></li><li><a href=.//CPA.html>CPA </a></li><li><a href=.//CSS.html>CSS </a></li><li><a href=.//Cloud Foundry.html>Cloud Foundry </a></li><li><a href=.//JavaScript.html>JavaScript </a></li><li><a href=.//ProgrammingLanguage.html>ProgrammingLanguage </a></li><li><a href=.//WebAPI/mobileAPI.html>mobileAPI </a></li><li><a href=.//Web开发资源.html>Web开发资源 </a></li><li><a href=.//Web资源.html>Web资源 </a></li><li><a href=.//ZhenFang.html>ZhenFang </a></li><li><a href=.//about/10-7.html>10-7 </a></li><li><a href=.//about/2012-9.html>2012-9 </a></li><li><a href=.//about/resume.html>resume </a></li><li><a href=.//book.html>book </a></li><li><a href=.//bootstrap.html>bootstrap </a></li><li><a href=.//cocoa-for-mac-os-note.html>cocoa-for-mac-os-note </a></li><li><a href=.//cocos2d.html>cocos2d </a></li><li><a href=.//cpp.html>cpp </a></li><li><a href=.//cs_resource.html>cs_resource </a></li><li><a href=.//eclipese.html>eclipese </a></li><li><a href=.//fav/1.html>1 </a></li><li><a href=.//game.html>game </a></li><li><a href=.//git.html>git </a></li><li><a href=.//heroku.html>heroku </a></li><li><a href=.//hfrails.html>hfrails </a></li><li><a href=.//how-to-study-computer.html>how-to-study-computer </a></li><li><a href=.//html.html>html </a></li><li><a href=.//http.html>http </a></li><li><a href=.//idea.html>idea </a></li><li><a href=.//ios/cocos-iPhone.html>cocos-iPhone </a></li><li><a href=.//ios/game.html>game </a></li><li><a href=.//ios/iOS发布.html>iOS发布 </a></li><li><a href=.//ios/iOS开源库.html>iOS开源库 </a></li><li><a href=.//ios/iOS部署.html>iOS部署 </a></li><li><a href=.//ios/ios_dev.html>ios_dev </a></li><li><a href=.//ios/memory.html>memory </a></li><li><a href=.//ios/objective-c.html>objective-c </a></li><li><a href=.//ios.html>ios </a></li><li><a href=.//java.html>java </a></li><li><a href=.//linux.html>linux </a></li><li><a href=.//lua.html>lua </a></li><li><a href=.//mobile_game_dev.html>mobile_game_dev </a></li><li><a href=.//nodejs.html>nodejs </a></li><li><a href=.//osx_config.html>osx_config </a></li><li><a href=.//php.html>php </a></li><li><a href=.//plan/mobile.html>mobile </a></li><li><a href=.//post/learn-c.html>learn-c </a></li><li><a href=.//post/learn-cs.html>learn-cs </a></li><li><a href=.//post/the_newbie's_guide_to_the_internet.html>the_newbie's_guide_to_the_internet </a></li><li><a href=.//proxy_rb.html>proxy_rb </a></li><li><a href=.//pygame.html>pygame </a></li><li><a href=.//python.html>python </a></li><li><a href=.//rack.html>rack </a></li><li><a href=.//rails.html>rails </a></li><li><a href=.//redis.html>redis </a></li><li><a href=.//ruby_study.html>ruby_study </a></li><li><a href=.//ruby部署.html>ruby部署 </a></li><li><a href=.//sinatra/sinatra.html>sinatra </a></li><li><a href=.//sinatra/爬虫.html>爬虫 </a></li><li><a href=.//sql.html>sql </a></li><li><a href=.//sqlite.html>sqlite </a></li><li><a href=.//start/linux.html>linux </a></li><li><a href=.//sublime.html>sublime </a></li><li><a href=.//suisuinian/1.html>1 </a></li><li><a href=.//teacher/1.html>1 </a></li><li><a href=.//teacher/2.html>2 </a></li><li><a href=.//teacher/3.html>3 </a></li><li><a href=.//teacher/start.html>start </a></li><li><a href=.//todo.html>todo </a></li><li><a href=.//tumblr/10-14-a-note-of-start-rails.html>10-14-a-note-of-start-rails </a></li><li><a href=.//tumblr/11-23-my-computer-study-experience.html>11-23-my-computer-study-experience </a></li><li><a href=.//tumblr/11-27-learning-by-build-own-application.html>11-27-learning-by-build-own-application </a></li><li><a href=.//tumblr/11-30-improve-efficiency.html>11-30-improve-efficiency </a></li><li><a href=.//tumblr/12-21-back-into-finding-original-dream.html>12-21-back-into-finding-original-dream </a></li><li><a href=.//tumblr/9-28-plan-of-fisrt-semseter.html>9-28-plan-of-fisrt-semseter </a></li><li><a href=.//which_to_study.html>which_to_study </a></li><li><a href=.//xcode.html>xcode </a></li><li><a href=.//实习.html>实习 </a></li><li><a href=.//教育.html>教育 </a></li><li><a href=.//服务器设计.html>服务器设计 </a></li><li><a href=.//编译原理.html>编译原理 </a></li><li><a href=.//词典.html>词典 </a></li></ui></html>
</body>
View
BIN  ios/.DS_Store
Binary file not shown
View
10 ios/iOS发布.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p><a href='http://testflightapp.com'>http://testflightapp.com</a></p></html>
+</body>
View
1  ios/iOS发布.md
@@ -0,0 +1 @@
+<http://testflightapp.com>
View
16 ios/iOS开源库.html
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+<p>jdg / MBProgressHUD</p>
+
+<p>enormego / EGOTableViewPullRefresh</p>
+
+<p>rs / SDWebImage</p>
+
+<p>AFNetworking / AFNetworking</p></html>
+</body>
View
9 ios/iOS开源库.md
@@ -0,0 +1,9 @@
+jdg / MBProgressHUD
+
+enormego / EGOTableViewPullRefresh
+
+rs / SDWebImage
+
+AFNetworking / AFNetworking
+
+
View
10 ios/iOS部署.html
@@ -0,0 +1,10 @@
+<!DOCTYPE HTML>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
+ <link rel="stylesheet" type="text/css" href="http://wiki.ktmud.com/style.css">
+<html>
+</html>
+<html>
+<body>
+</html>
+</body>
View
0  ios/iOS部署.md
No changes.
View
14 ios/objective-c.html
@@ -17,7 +17,7 @@ <h2 id='cocoa'>Cocoa</h2>
<p><a href='
http://blog.devtang.com/blog/2012/08/05/use-modern-objective-c/'>Objective-C新特性</a></p>
-<h2 id='id36'>面向对象</h2>
+<h2 id='id47'>面向对象</h2>
<p>ObjC的实例变量只能通过方法访问。</p>
@@ -27,7 +27,7 @@ <h2 id='id36'>面向对象</h2>
<p>id是可以指向任何对象的。ObjC是同态类型,对象类型也是可以动态绑定的。</p>
-<h2 id='id37'>内存管理</h2>
+<h2 id='id48'>内存管理</h2>
<p>ObjC内存管理有三种形式</p>
@@ -39,7 +39,7 @@ <h2 id='id37'>内存管理</h2>
<li>Garbage collection 垃圾收集。iOS设备不支持。</li>
</ul>
-<h2 id='id38'> 消息传递</h2>
+<h2 id='id49'> 消息传递</h2>
<p>ObjC的面向对象继承自SmallTalk,是比较独特的消息传递方式而不是常见的方法调用。消息传递的表达式是:</p>
@@ -59,7 +59,7 @@ <h2 id='id38'> 消息传递</h2>
<p>方法调用可以嵌套,同时也可以用<code>.</code>操作符来访问可以访问的属性·</p>
-<h2 id='id39'>动态绑定</h2>
+<h2 id='id50'>动态绑定</h2>
<p>方法调用和消息传递的区别在于,方法调用在编译的时候混合进代码里,而消息传递在运行的时候才确定</p>
@@ -92,7 +92,7 @@ <h2 id='dot'>dot操作符</h2>
<p>点操作符是<code>[]</code>的语法糖。</p>
-<h2 id='id40'>构造函数和析构函数</h2>
+<h2 id='id51'>构造函数和析构函数</h2>
<p>构造函数要自己显示调用,析构函数<code>delloc</code>会在对象销毁的时候自动调用</p>
@@ -202,7 +202,7 @@ <h3 id='gcd'>GCD</h3>
<h3 id='kvc_kvo'>KVC KVO</h3>
-<h2 id='id41'>宏</h2>
+<h2 id='id52'>宏</h2>
<p>小技巧</p>
@@ -223,5 +223,5 @@ <h2 id='exception'>Exception</h2>
<h3 id='nserror'>NSError</h3>
-<h2 id='id42'>多线程 </h2></html>
+<h2 id='id53'>多线程 </h2></html>
</body>
View
8 linux.html
@@ -10,5 +10,11 @@
<p>Ubunut中文论坛</p>
-<p>alias - 关闭端口:使用 lsof -i :端口号 来得到该端口的PID,然后用 kill -9 PID 杀之.</p></html>
+<p>alias - 关闭端口:使用 lsof -i :端口号 来得到该端口的PID,然后用 kill -9 PID 杀之.</p>
+
+<pre><code>wget -r -p -np -k http://developer.chrome.com/extensions/
+-r, --recursive(递归) specify recursive download.(指定递归下载)
+-k, --convert-links(转换链接) make links in downloaded HTML point to local files.(将下载的HTML页面中的链接转换为相对链接即本地链接)
+-p, --page-requisites(页面必需元素) get all images, etc. needed to display HTML page.(下载所有的图片等页面显示所需的内容)
+-np, --no-parent(不追溯至父级) don&#39;t ascend to the parent directory</code></pre></html>
</body>
View
8 linux.md