2012年3月28日 星期三

網路管理-專題

Invisible Man http://jay-fva.blogspot.com/2010/03/tcpdump.html

- - PHP - -

[轉貼]如何選擇CMS  Content Managerment Systemhttp://vbb.twftp.org/showthread.php?t=188

2011年國外最值得關注的10大網站   http://ten2.tw/blog/2011-web-trend/



Expect 基於Linux 上的 自動化工具http://zh.wikipedia.org/wiki/Expect


http://oreo.myweb.hinet.net/Part3.html MRTG圖形工具




---------------我從來不知道有這麼多名堂  by wiki

2012年3月20日 星期二

Python 旅途

蟒蛇論壇 http://www.chinesepython.org/pythonfoundry/marrpydoc/python2.htm

xml 簡要

XML 簡要    教學: http://yes.nctu.edu.tw/Lecture/Web/XML/Intro/index.htm
藍天工作室 語法: http://itzone.hk/article/article.php?aid=200406262309034162
宅學習                 : http://sls.weco.net/node/10554
XML 文件中,註解方式

<!-- 註解的文字與標記 -->



< 元素 屬性= "屬性值"> 


            元素內容


</元素>



空元素
            <intent-filter>

                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>


在intent-filter 中,可以清楚看到     action  跟  category  兩個本身就是空元素在標籤內只放 屬性跟屬性值,沒有放內容。

Andoriday 2 - Pure Source Code

1.  ----Android Manifest.xml-----

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="Lai_Yan.example"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="10" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".MY_BlueTooth_AppActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>


2.   src/Activity . java
package Lai_Yan.example;

import android.app.Activity;
import android.os.Bundle;

public class MY_BlueTooth_AppActivity extends Activity {
    /** Called when the activity is first created. */
 



@Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
        setContentView(R.layout.main);}
 
 
 
}

3./res/main.xml


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello" />

</LinearLayout>


4./res/String

<?xml version="1.0" encoding="utf-8"?>

<resources>
    <string name="hello">Hello World, MY_BlueTooth_AppActivity!</string>
    <string name="app_name">MY_BlueTooth_App</string>
</resources>




上面三個檔案存在的目的,只有一個原因,透過四者間的人機介面資料傳遞
讓Android 認得觸碰螢幕產生的事件,再透過Java Dalvik 跟Linux底層系統溝通從這裡開始讓
Android 系統 Working。

接下來開始就是 Android 系統 跟 程式架構上的問題了。


Android Manifest.xml  本身 是要描述 這個APP 本身所有的資訊
http://developer.android.com/guide/topics/manifest/manifest-intro.html

特別是在權限上的處理,有諸多描述,簡單說要跟Android系統要資源或權限
都要在這裡宣告才能跟系統溝通,不論使用系統內資源包、作業系統的多執行緒
或是存在Android 系統下的型態,簡單說就是APP本身要如何存在於Android都是要透過
Manifest 去描述,看來這個是非常複雜的東西,有機會才能深入,目前針對題目Bluetooth connect 來說的話應該是初淺便可。

2012年3月16日 星期五

Androiday 1 - hello android ~ WTF

在範例Hello world中  追蹤  /res/layout/main.xml   底下的宣告

標籤裡面夾的宣告叫做LinearLayout ,在layout 底下的main.xml 主要是用來做畫面佈局

而LinearLayout 又只是Android當中的其中一種方式Layout 畫面,所以我很好奇有幾種

Layout 方式可以在main.xml 中使用,但是我又去找資料:

http://developer.android.com/training/improving-layouts/optimizing-layout.html

裡面提到Layout 這個模型好像是屬於 widget 底下的東西,可是一開始在hello world.java中

也沒有宣告這種類別進來

package com.example.android.hellowworld ;   建立絕對參考路徑  專案用
import android.app.Activity ;                        
import android.os.Bundle ;

所以要了解 Layout 以外的模型,要去找widget 資料來看
同時也意味著,在/res 底下的很多東西,實際上要宣告
可以不用透過  /src/XXXXX.java  底下的code
我推測應該是直接在compiler的時候,系統可以直接去Android2.3.3/android.jar  直接去找
不需要額外作其他動作,也就是說,在xml檔中,可以直接去找要的資源
不需要顧慮太多引用的問題,起碼這個範例中是這樣


public class

LinearLayout

extends ViewGroup
java.lang.Object
   ↳android.view.View
   ↳android.view.ViewGroup
   ↳android.widget.LinearLayout
繼承 ViewGroup      http://developer.android.com/reference/android/widget/LinearLayout.html

剛剛又爬了一下文章http://developer.android.com/resources/tutorials/views/index.html

在 Hello view 中  清楚地了解到   LinearLayout 以外還有其他種 官方建議Layouts

在Layouts  部分有 六種

1.Linear Layout
2.Relative Layout
3.Table Layout
4.Grid View
5.Tab Layout
6.Lsit View
-------------
Widgets & Other Views   ;  widgets 加上其他非標準的版面Layout,有8種
1. Date Picker
2. Time Picker
3. Form Stuff
4. Spinner
5. Auto Complete
6. Gallery
7. Google Map View
8. Web View

-----------------目錄結構--------------------

1111
R.java這個東西真的很奇妙,把所以有xml 資源跟宣告檔打包好,再生成一個R.Java的資源檔
裡面內容都是變數跟記憶體的宣告,Android 是透過這種方式進行打包跟取用工程
最後,居然還可以在/src裡面直接在helloworld.java中取用
public class HelloWorld extends Activity {
    @Override                                                                    ;不知道@ Override 用來做啥 覆蓋 ??
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);  
       }
}                
R.layout.main  在 R資源底下有一個layout的目錄底下有一個main 參數或是方法,可以當作setContentView()  的傳入參數使用  . . ..    真是深奧