發表文章

目前顯示的是 2008的文章

Android Porting Note

整理一些網路文章 安裝 Android 應用程式(apk)至 Neo FreeRunner 對Android啟動過程的進一步研究 Android Porting On Real Target Android on OMAP

什麼是RTOS ?

RTOS(Real-time operating system) 近來流行的 ARM + RTOS 幾乎已經變成 Embedded System 的代名詞。 來看一下他的相關介紹吧:) wiki : Real-time operating system A Real-Time Operating System (RTOS; generally pronounced as "R-toss") is a multitasking operating system intended for real-time applications. Such applications include embedded systems (programmable thermostats, household appliance controllers), industrial robots, spacecraft, industrial control (see SCADA), and scientific research equipment. 各種 RTOS 優劣 ? 學習 RTOS 和評估使用那一個 RTOS 是兩回事. 以學習 RTOS 來說, 初學者先得瞭解什麼是 real-time system, 她和 PC/Server 有何不同. 再瞭解 programming for RTOS 和一般 programming 的差異, 她的 multi-tasking scheduling 的方式, task 間彼此 synchronize/communication 的方式等等. 以鍛鍊上述基本功夫來說, uC/OS-II 確實是一個理想的學習工具. 她夠單純, 但 RTOS 該有的基本機制她都有. 她和藹可親, 初學者很快就可以與她打成一片. 她身材纖細苗條, 只要 32K bytes 的 flash 就可以存放了. 至於如何為產品選擇 RTOS, 則需要對專案有全局的瞭解才能挑出適用之材, 例如產品規格需求, 軟硬體發展時程, 預算多寡, 人員訓練等等. 因為許多時候 RTOS 是產品成敗的關鍵. 舉個例子, 如 linux, 有些公司只著眼在她是免費的, 忽略了客戶 real-time 的需求, 或是用了 uc/OS-II 才發現需要 file syst

extern 與 extern "C"

圖片
整理一下看網友blog的文章筆記: 關於 extern : 1. 在function外定義的變數就叫外部變數,相反的在function內就叫內部變數。 2. 外部變數的視野是從定義的開始那行到本身檔案結束的最後一行(此稱自然視野)。 3. 若外在變數要被其他的檔案所用,那就要在別的檔案那裡宣告extern,以表它定義在別的檔上(此稱視野擴展)。 1. extern的用法 想用外部變數的時候,在變數前面前面加extern。 2. C++ extern 全域變數正確用法 提到應該在.h檔內宣告變數為全域變數, extern int i; 但是還要在cpp檔中重新定義一次。 int i; 要注意的是一定要配合.h檔,在相同名稱的.cpp內重新定義,不然會出現linker error。 也可以這樣用, -- 關於 extern "C" {} extern "C"的用法 c 語言static與extern的用法

Memory Allocation

Memory Allocation : "g_new() #define g_new(struct_type, n_structs) Allocates n_structs elements of type struct_type. The returned pointer is cast to a pointer to the given type. If n_structs is 0 it returns NULL. Since the returned pointer is already casted to the right type, it is normally unnecessary to cast it explicitly, and doing so might hide memory allocation errors. struct_type : the type of the elements to allocate n_structs : the number of elements to allocate Returns : a pointer to the allocated memory, cast to a pointer to struct_type g_new0() #define g_new0(struct_type, n_structs) Allocates n_structs elements of type struct_type, initialized to 0's. The returned pointer is cast to a pointer to the given type. If n_structs is 0 it returns NULL. Since the returned pointer is already casted to the right type, it is normally unnecessary to cast it explicitly, and doing so might hide memory allocation errors. struct_type : the type of the el

Doubly-Linked Lists

Doubly-Linked Lists : "GList typedef struct { gpointer data; GList *next; GList *prev; } GList; The GList struct is used for each element in a doubly-linked list. gpointer data; holds the element's data, which can be a pointer to any kind of data, or any integer value using the Type Conversion Macros. GList *next; contains the link to the next element in the list. GList *prev; contains the link to the previous element in the list."

Spawning Processes

Spawning Processes : "g_spawn_async_with_pipes () gboolean g_spawn_async_with_pipes (const gchar *working_directory, gchar **argv, gchar **envp, GSpawnFlags flags, GSpawnChildSetupFunc child_setup, gpointer user_data, GPid *child_pid, gint *standard_input, gint *standard_output,"

Shell-related Utilities

Shell-related Utilities : "g_shell_parse_argv () gboolean g_shell_parse_argv (const gchar *command_line, gint *argcp, gchar ***argvp, GError **error); Parses a command line into an argument vector, in much the same way the shell would, but without many of the expansions the shell would perform (variable expansion, globs, operators, filename expansion, etc. are not supported). The results are defined to be the same as those you would get from a UNIX98 /bin/sh, as long as the input contains none of the unsupported shell expansions. If the input does contain such expansions, they are passed through literally. Possible errors are those from the G_SHELL_ERROR domain. Free the returned vector with g_strfreev(). command_line : command line to parse argcp : return location for number of args

Memory Allocation

Memory Allocation : "g_new0() #define g_new0(struct_type, n_structs) Allocates n_structs elements of type struct_type, initialized to 0's. The returned pointer is cast to a pointer to the given type. If n_structs is 0 it returns NULL. Since the returned pointer is already casted to the right type, it is normally unnecessary to cast it explicitly, and doing so might hide memory allocation errors. struct_type : the type of the elements to allocate. n_structs : the number of elements to allocate. Returns : a pointer to the allocated memory, cast to a pointer to struct_type."

好用的sprintf

sprintf - C++ Reference 但今天要介紹的是 g_sprintf 以及 g_strdup_printf g_sprintf () gint g_sprintf (gchar *string, gchar const *format, ...); An implementation of the standard sprintf() function which supports positional parameters, as specified in the Single Unix Specification. g_strdup_printf () gchar* g_strdup_printf (const gchar *format ...); Similar to the standard C sprintf() function but safer, since it calculates the maximum space required and allocates memory to hold the result. The returned string should be freed when no longer needed.

什麼是RAID ?

圖片
RAID中文叫作磁碟陣列。 比較簡單清楚的說明請看 Toshiba硬碟達人開講之RAID應用篇 要看完整專業可以參考 wiki : RAID 磁碟陣列

什麼是OpenGL ES ?

圖片
OpenGL ES (OpenGL for Embedded Systems) is a subset of the OpenGL 3D graphics API designed for embedded devices. OpenGL ES 官方網頁 簡單說明OpenGL ES - The Standard for Embedded Accelerated 3D Graphics wiki : OpenGL ES 新聞 : 次世代高階多媒體 API「OpenMAX」多家大廠研發中 「OpenGL ES」是以跨平台電腦繪圖 API「OpenGL」子集合為基礎,以應用於可攜式裝置、家電或遊樂器等嵌入式系統為主要訴求而制定的新一代 3D 繪圖 API,目前已發表 1.0 版,後續預計推出 1.1 版與 2.0 版。 「OpenGL ES」初期的 1.0 版將主要以手機等不具備硬體 3D 加速功能的系統應用為主,主要以軟體方式來執行各種 3D 繪圖所需運算,1.1 版預定拓展到具備硬體加速設計的平台上,最終目標是將目前應用於 PC 上的高階可程式化著色語言拓展到各種嵌入式系統產品之上,以單一的 API 統合各廠商不同硬體平台,達成高效率的程式開發與執行環境。 由於「OpenGL ES」與完全被微軟把持的 DirectX API 不同,是一個與作業系統平台無關的跨平台開放性標準,並承襲了目前最具影響力的跨平台 3D 繪圖 API「OpenGL」的優良設計,所以成功獲得全球各大行動通訊、電子電機資訊、3D 電腦繪圖以及家電廠商的支持,並由這些廠商分工進行相關標準的制定與對應產品的研發。除了「OpenGL ES」之外,Khronos Group 還制定了包括動態影像處理的「OpenML」與向量繪圖處理的「OpenVG」等標準。

什麼是OpenMAX ?

圖片
OpenMAX 官方網頁 上的介紹: OpenMAX - The Standard for Media Library Portability wiki : OpenMax OpenMAX is a royalty-free cross-platform set of C-language programming interfaces that provides abstractions for routines especially useful for audio, video, and still images. 沒看到什麼中文新聞 次世代高階多媒體 API「OpenMAX」多家大廠研發中 (2004)  美國 Khronos Group 主席 Neil Trevett,在國際電腦圖學的重要發表會「SIGGRAPH 2004」中,宣布由該集團所提倡的新一代多媒體應用程式介面(API)標準「OpenMAX」,正分為六大部門,由全球各大通訊電子資訊廠商進行標準制定與研發的工作。 --  而本次所發表的「OpenMAX」則是新一代的泛用多媒體 API,與專門針對 3D 繪圖處理的「OpenGL ES」標準不同,涵蓋了所有的多媒體處理需求,將統合所有多媒體所需運算處理的 API,架構一個高階的應用程式介面,簡化多媒體應用程式開發的工作,目前共分為六大部門進行研發: (1) 靜態圖像:包括 JPEG 與 JPEG2000 等格式的靜態影像處理 (2) 動態影像:包括 MPEG-4 與 H.264 等動態影像壓縮解壓縮處理 (3) 3D 繪圖:包括 3D 繪圖相關處理 (4) 音訊處理:包括語音與音樂音效等相關處理 (5) Java:包括 Java 應用程式執行所需的相關處理 (6) 統合層(Integration Layer):統合 OpenMAX 各種 API 介面

什麼是Open Embeded

圖片
Open Embeded (縮寫為 OE) Open Embeded官方網站 關網介紹 : Welcome to Openembedded, your best-in class cross-compile environment. Openembedded allows developers to create a complete Linux Distribution for embedded systems. Some of the OE advantages include: * support for many hardware architectures * multiple releases for those architectures * tools for speeding up the process of recreating the base after changes have been made * easy to customize * runs on any Linux distribution * cross-compiles 1000's of packages including GTK+, Xwindows, Mono, Java, and about anything else you might ever need

什麼是語音辨識 Speech recognition ?

圖片
What is Speech recognition ? 語音辨識 Speech recognition , 比爾.蓋茲先生很重視的一個應用 蓋茲談語音辨識與MultiTouch(上) 蓋茲談語音辨識與MultiTouch(下)

java script 對話方式

圖片
java script 對話方式 alert("message") 顯示含有給定message的"JavaScript Alert"對話框。 confirm("message") 顯示含有給定message的"Confirm"對話方塊(有一個OK按鈕和一個Cancel按鈕)。如果User單擊OK返回true,否則返回false。 prompt("message") 顯示一個"prompt"對話方塊,要求User根據顯示message給予相應輸入。 open("URL","name") 打開一個新視窗,給予一個指定的名字。 close() 關閉當前視窗。

Android 網路資源

圖片
最近在找些討論Android的Blog 結果連日文Blog都順便逛逛了 throw Life Walkin' On The Spiral. Let's see, if that's true or not. 參考參考嚕~ -- 若是要找有關Android Market上的軟體可以到 Cyrket Android Application Browser: Now you can keep up with new T-Mobile G1 apps from the comfort of your desk! http://www.cyrket.com/

JDK 6 跟你想的不一樣

圖片
其實很久沒寫JAVA一直都還在JDK 5。 今天赫然發現JDK 6 可以跟Java Script整合, 為自己的Lag 覺得很囧 Orz 相關閱讀; Use Javascript in Java 6 Run JavaScript and get the result by using Java 純種Java與JavaScript的結合 1. 在Script中使用Java物件 2. 使用Java呼叫JavaScript Method,並取得其回傳值 3. 在Script中使用Java API Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag Lag

一生順遂與命途乖舛

圖片
部門同事經過經驗法則說出了所有來面試的人可以分成兩種 : 1. 一生順遂。 2. 命途乖舛。 部門很多命途乖舛,不外乎研究所考試考了兩三次,而我被分到一生順遂的標籤。 想了很久,才想寫一下心得。

我只知道一件事就是我一無所知

圖片
我只知道一件事就是我一無所知,

什麼是Ping ? 什麼是 Trackback ?

什麼是Ping ? 什麼是 Trackback ? wiki : ping In blogging, ping is an XML-RPC-based push mechanism by which a weblog notifies a server that its content has been updated. An XML-RPC signal is sent to one or more "ping servers," which can then generate a list of blogs that have new material. Many blog authoring tools automatically ping one or more servers each time the blogger creates a new post or updates an old one. 總之就是通知某Server(像是個大BSP),部落格有更新。 wiki : trackback A trackback is one of three types of linkbacks, methods for Web authors to request notification when somebody links to one of their documents. This enables authors to keep track of who is linking, and so referring, to their articles. 就是所謂的引用連結?總之就是幫助你知道誰連結到了你的文章。 結果多了一個要看的, wiki : Linkback A Linkback is a method for Web authors to obtain notifications when other authors link to one of their documents. This enables authors to keep track of who is linking to, or referring to their articles. The three method

android uses-permission

圖片
android 在sdk-0.9_beta版後,對安全控管提升, 因此若要使用網路、藍芽以及相機等等 需要許可授權後才可正常使用。 如果要授權使用網路,需要在在AndroidManifest.xml裡,加入以下程式碼 < uses-permission android:name="android.permission.INTERNET" />

系統開發 談什麼是toolchain

wiki: toolchain In software, a toolchain is the set of computer programs (tools) that are used to create a product (typically another computer program or system of programs). The tools may be used in a chain, so that the output of each tool becomes the input for the next, but the term is used widely to refer to any set of linked development tools.  wiki: GNU toolchain The GNU toolchain is a blanket term for a collection of programming tools produced by the GNU Project. These tools form a toolchain (suite of tools used in a serial manner) used for developing applications and operating systems.  相關應用:  做embedded system是需要toolchain。但當編譯某些Library或是open source的程式時,若遇到廠商所提供的toolchain版本過舊而產生錯誤,就要自己建力特定版本的toolchain來解決問題。   以下是一些網友的介紹:   自己做toolchain     在ubuntu上建立arm toolchain     建立Toolchain   另外推薦CodeSourcery http://www.codesourcery.com/ 據說CodeSourcery的幾個員工都是領導 GCC 發展的大人物,所以CodeSourcery 出品的 toolchain品質有保證。 除了Embedded System 以下是一些常見的 toolchain 組合: Web 開發:HTML/CSS/JavaScript + React

IT邦幫忙與Android

IT邦幫忙 是一個問答系統,主要針對資訊科技相關問題。IT邦幫忙與Android本來是沒有關係的,因為有了lucius大,而把這兩者結合起來。 第一屆IT邦幫忙鐵人賽 -> 挑戰連續三十天發文 其中一位lucius大,決定寫三十篇Android文! 參閱 lucius 的IT邦檔案 其他Android 開發文章請見:  Android開發豆知識

第一個免費且實用 T-Mobile G1 應用程式 - 台灣天氣資訊

圖片
在看blog的時候看到的 " 第一個免費且實用T-Mobile G1應用程式台灣天氣資訊 ", 手腳真快 :P 來試用看看吧 :)

How to decompile .dex file on Android

圖片
探究 Android 系統應用程式的祕密 引述 ysl大說的 : .dex 就是 Java 編譯後的 classes 檔。目前還沒有工具可以直接將 .dex 檔轉成 .class 或 .java 格式,不過倒是有個 dexdump,可以幫你列印出 Java VM 的 machine code。

set Android error log on Eclipse

圖片
在 Android 中,想要追蹤 Log 訊息的話, 可以使用 android.util.Log 類別下的函式。 在Eclipse中要打開LogCat請按照 Window > Customize Perspective > Shortcuts > Submenus : Show View > Categories : Android > 勾選 LogCat 即可。 接著由 Window > Show View > 執行 LogCat 打開LogCat View 預設 LogCat View 只有一個頁籤叫做 Log, 可以按下綠色加號,自行新增一個 filter 來篩選出我們自訂的訊息。 在 LogCat View 中,還可細分不同level的訊息紀錄, 其中包括了DEBUG、INFO、WARN、ERROR等。 -- Android Debug Bridge (ADB) 也是個很好的工具 Eclipse 相關文章: set Android error log on Eclipse linux(ubuntu)環境下開發 Android 所遇到的Eclipse 設定問題 Android tutorial : Before HelloWorld ]... [ ]... 也會顯示出訊息 :)

開心的談戀愛吧

最近在看 求婚大作戰 ,但是有點看不太下去。 原因就是男主角太苦悶了。 就跟東京愛情故事裡面的完治一樣,討厭 ++ 談戀愛的時候請開心點。 所以我喜歡東京愛情故事的莉香。 喜歡戀愛世代裡面的松隆子。 喜歡長假裡面的山口智子。 開心的談戀愛吧 ^____________^ 2020更新: 東京愛情故事要有2020年版 啦 不知道求婚大作戰會不會有?

How to Uninstall APK Files from Android Device Emulator

圖片
之前的文章中有提到如何產生apk檔,以及如何安裝進模擬器。 ( Creating an Android Project without Eclipse ) 這篇是要談談如何將安裝的檔案移除掉。 基本上安裝進模擬器的apk檔是放置在data/app這個目錄下。 所以可以利用以下指令移除: $adb shell rm data/app/Your.apk -- 而由於sdk 1.0發佈了,有更新的作法 $ adb install [-l] [-r] - push this package file to the device and install it ('-l' means forward-lock the app) ('-r' means reinstall the app, keeping its data) $ adb uninstall [-k] - remove this app package from the device ('-k' means keep the data and cache directories)

GtkTreeModel 解釋

GtkTreeModel GtkTreeModel : "One can convert a path to an iterator by calling gtk_tree_model_get_iter(). These iterators are the primary way of accessing a model and are similar to the iterators used by GtkTextBuffer. They are generally statically allocated on the stack and only used for a short time. The model interface defines a set of operations using them for navigating the model."

GTK 如何傳遞signal ?

圖片
GTK 如何傳遞signal  ? GTK透過GDK來處理事件,GDK會將每個接受到的XEvent轉換為GdkEvent,然後傳播給GtkWidget,引發一個與事件相對應的事件Signal,再透過Callback函式處理事件。 from 良葛格GTK學習筆記  GDK 事件結構

Android 模擬器測試SD卡

圖片
要在Android 模擬器測試SD卡,只要在Andoird_Sdk目錄下, 下指令; Andoird_Sdk> mksdcard 1024M test_SD Andoird_Sdk> emulator –sdcard test_SD 就可以模擬出一張叫做 test_SD大小是1024M的SD卡。 相關連結: android tool mksdcard From Something about China 有了這個,就可以測試camera :) 相關連結: CameraPreview.java

利用telnet 寄email

圖片
In this document, we: * shall use Telnet to connect to the SMTP server. * shall give commands to the server, then type our e-mail, and finally tell the server, 'Okay, the e-mail is done. Send it. * can then send more mails, or disconnect from the server. The steps are quite similar to what you do when you send an e-mail from - for instance - Outlook Express. We are going to use the SMTP server of monitortools.com with the ID 'webmaster'.

什麼是IDF ? 雜想

今天在看新聞的時候突然看到: 英特爾引爆MID商機 仁寶、廣達獲訂單11月開始出貨  2008/10/22 - IT - 陳玉娟/台北 英特爾(Intel)台北IDF重頭戲行動上網裝置(Mobile Internet Device;MID)登場,不過相較8月下旬舊金山場次,並無太多研發進展,僅增加軟體內容應用及由廣達、仁寶及環電等代工的數款新機展示,預計11月起會陸續出貨。 看到IDF熊熊反應不過來@@ 原來是 Intel Developer Forum wiki : Intel Developer Forum IDF還真多意義, 如果是國高中會直接想到我國戰機,被戲稱為I Don't Fly 如果是研究所的時候,IDF就是inverse document frequency wiki : inverse document frequency

Android is finally open

http://source.android.com/

什麼是gpio ?

圖片
wiki : gpio General (GPIO) is a acronym of General Purpose Input/Output. A microprocessor, microcontroller or interface device may have one or more GPIO connections, to interface with the outside world. //中文介紹有點拗口,當然也跟我不了解內地語法有關係@@ wiki : 通用型之輸入輸出 GPIO,通用型之輸入輸出(General Purpose I/O)的簡稱,功能類似8051的P0—P3,其接腳可以供使用者由程式控制自由使用,PIN腳依現實考量可作為通用輸入(GPI)或通用輸出(GPO)或通用輸入與輸出(GPIO),如當clk generator, chip select等。 既然一个引脚可以用于输入、输出或其他特殊功能,那么一定有寄存器用来选择这些功能。对于输入,一定可以通过读取某个寄存器来确定引脚电平的高低;对于输出,一定可以通过写入某个寄存器来让这个引脚输出高电平或者低电平;对于其他特殊功能,则有另外的寄存器来控制它们。

什麼是memory mapping ? 談 mmap

圖片
wiki : mmap In computing, mmap is a POSIX-compliant Unix system call that maps files or devices into memory. It is a method of memory-mapped file I/O. It naturally implements demand paging, because initially file contents are not entirely read from disk and don't use physical RAM at all. Linux允許將檔案對映到記憶體中。如此可以產生一個在檔案資料及記憶體資料一對一的對映。 其中新的記憶體可以透過利用/dev/zero來產生全零的檔案。而可把檔案當成記憶體,直接使用指標來操作。而mapped memory 透過shared file 做訊息的傳遞;而將 shared file mapping 到 process address space 的 system call 為叫做mmap()。 ps. wiki : POSIX wiki : demand paging 相關閱讀 : 小談 mmap() 與 VMA 記憶體對映mmap

Threadless & LOGOless

圖片
介紹兩個網站; Threadless " Nude No More " http://www.threadless.com/ LOGOless " 一起讓好設計發生 " http://www.logoless.com.tw 這兩個網站都是讓使用者上傳自己設計的Tshirt。 然後可以訂購:) 一個在國外,一個是台灣本土。 今天不是來討論clone問題(參見; [MMDays 論壇] Clone 無罪!? 利益至上!? (更新讀者觀點) ),只是推薦網站而已。 wiki: Threadless LOGOless沒有維基Orz,另外Threadless 比較social一點,可以在facebook、myspace、twitter看到,宣傳力量比較大。 看了些網友的經驗談,LOGOless圖片上傳刷卡後第四天就可以收到;而Threadless下了訂單後,約兩個星期後收到。 推薦Tshirt 還有 Sambafruit衣 相關閱讀: 沒品牌也可以有好設計的 LOGOless.com.tw 平面設計的革命浪潮 - Threadless, Crowdsource與Web 2.0

什麼是 ioctl (Input/output control) ?

圖片
wiki : ioctl ioctls are typically employed to allow userspace code to communicate with hardware devices or kernel components. ioctl是應用程式用來和驅動程式溝通的function,讓應用程式可以對某個裝置下命令 在unix/linux環境中, 裝置的存取和檔案是一樣的,一般會先用open()來取得對裝置的一個控制權,其中,open會傳回一個handle值。 ioctl(handle, command, ...) 前面handle跟command是必須的,後面的參數則視情況而定。 其中handle就是open函式傳回來的值而command就是一個command code。command code每個值所代表的命令會因裝置而不同,完全由驅動程式來解釋command code的意義。若是有的command code還需要傳進其他參數時,就會使用第3、第4...個參數了。 因此使用ioctl之前, 要先看是要對那個裝置下命令,再去查那個裝置的驅動程式支援那些command code讓應用程式使用。 而當應用程式呼叫 ioctl時, 相對應的驅動程式會有一個callback function被呼叫到。這個callback function專門用來處理 ioctl command code。你呼叫ioctl時可以傳那些command code以及要傳那些參數都和此callback function有關。 相關閱讀: Linux 驅動程式的 I/O, #1: 基本概念 Linux 驅動程式的 I/O, #2: I/O 存取相關函數 Linux 驅動程式的 I/O, #3: kernel-space 與 user-space 的「I/O」 Linux 驅動程式的 I/O, #4: fops->ioctl 實作

什麼是GSM ?

圖片
wiki : 全球行動通訊系統 Global System for Mobile communications GSM,是當前應用最為廣泛的移動電話標準。全球超過200個國家和地區超過10億人正在使用GSM電話。GSM標準的廣泛使用使得在移動電話運營商之間簽署「漫遊協定」後用戶的國際漫遊變得很平常。GSM 較之它以前的標準最大的不同是他的信令和語音信道都是數位的,因此GSM被看作是第二代(2G)移動電話系統。GSM標準當前由3GPP組織負責制定和維護。 相關閱讀: 從GSM到LTE技術的長期演進

什麼是ODM (Original Design Manufacturer) ? OEM 以及 JDM

wiki : ODM ODM是英語 Original Design Manufacturer 的縮寫,指由採購方委託製造方,由製造方從設計到生產一手包辦,而由採購方負責銷售的生產方式,採購方通常會授權其品牌,允許製造方生產貼有該品牌的產品 相關閱讀: 什麼是OEM,ODM,EMS與CMMS? 中國OEM急速壯大,威脅台灣ODM ps 什麼是OEM ? wiki : OEM OEM是 Original Equipment Manufacturer 的縮寫, 通常翻譯成「貼牌生產」或「原始設備製造」。 原指由採購方提供設備和技術,由製造方提供人力和場地,採購方負責銷售,製造方負責生產的一種現代流行生產方式,但是經常由採購方提供品牌和授權,允許製造方生產貼有該品牌的產品。

台灣手機代工龍頭 華寶通訊

圖片
來介紹一下台灣手機代工龍頭華寶通訊,先來看看 華寶通訊在104的簡介 : 華寶通訊股份有限公司 創立於西元1999 年,為仁寶電腦之關係企業,係一群在手機多年開發經驗的技術團隊所成立,看好無線通訊產業在全球市場的發展潛力,投入 GSM 、智慧型手機等高科技產品之研發設計與生產。

什麼是 i2c (Inter - Integrated Circuit) ?

圖片
From Something about Taiwan wiki : i2c I²C (Inter - Integrated Circuit)是 內部整合電路 的稱呼,是一種串列通訊匯流排,使用多主從架構,由 飛利浦 公司在1980年代為了讓 主機板 、 嵌入式系統 或 手機 用以連接低速週邊裝置而發展。I²C的正確讀法為"I-squared-C" ,而"I-two-C"則是另一種錯誤但被廣泛使用的讀法,在大陸地區則多以"I方C"稱之。 在 Linux 中,I²C已經列入了核心模組的支援了,更進一步的說明可以參考核心相關的文件及位於 /usr/include/linux/i2c.h 的這個 標頭檔 。 OpenBSD 則在最近的更新中加入了I²C的架構(framework)以支援一些常見的主控端控制器及感應器。 相關閱讀: I2C原理及應用實例 I2C (Inter-Integrated Circuit) Bus Technical Overview and Frequently Asked Questions (FAQ)

如何不讓路人甲訂閱到自己的文章

如何不讓路人甲訂閱到自己的文章 話說現在blog資訊這麼多一定要愛用rss訂閱才可以收到最新消息。 如果想要特定族群收看,如何不讓路人甲看到自己的文章 那通常就是要設群組(無名VIP可以)或是設密碼(PIXNET 一般用戶就可以了)。 而今天要講的"如何不讓路人甲訂閱到自己的文章",其實是剛剛不小心發現的。 會發現是因為個人的習慣, 由於愛用google toolbar,裡面有個"傳送到"的功能, 可以直接傳送到gmail或是blogger,方便邊看網頁邊寫一些筆記。 通常是把想要的資訊框起來, 按一下傳送到就可以弄到blogger然後暫存成草稿, 有空再來整理。 blogger跟pixnet可以調整發佈的時間,由於看到一堆草稿然後整理一下發佈的時候, 才發現如果時間沒有設成最新的時間,那這樣在rss訂閱器上就不會被看到了XD。 所以這篇文章就變成 "如何不讓路人甲訂閱到自己的文章" XD 另外如何不讓路人甲搜尋到自己的文章, 那就要在blogger設定的地方選擇不要讓搜尋引擎搜尋到。 以上,殺時間的小心得文,等開飯中 Orz

簡單介紹 GNU Debugger (GDB)

圖片
wiki : gdb GNU 除錯器 (GNU Debugger,縮寫: GDB ),它是 GNU 軟體系統中的標準除錯器,此外GDB也是個具有移攜性的除錯器,經過移攜需求的調修與重新編譯,如今許多的 類UNIX 作業系統上都可以使用GDB,而現有GDB所能支援除錯的程式語言有 C 、 C++ 、Pascal、 Ada以及 FORTRAN 。 只要採用的編譯器 來自 gnu ,就可以拿 gdb 來除錯。 使用方式如下: 想要針對helloworld這個執行檔就: $ gdb ./helloworld 接著就執行一下 (gdb) run 然後就可以backtrace (gdb) bt 相關閱讀: 使用GDB來進行除錯 Linux 除錯利器 - GDB 簡介 官方網站 GDB: The;;::; GNU Project Debugger

What is V4L(Video4Linux) ?

圖片
wiki : Video4Linux Video4Linux or V4L is a  video   capture API   for  Linux . about v4l + v4l2 v4l is the original video capture/overlay API of the linux kernel. It appeared late the 2.1.x development cycle in the linux kernel. v4l是原本的 linux kernel就有包含的有關 video 的api,在2.1.x版本都還可以看到。 如果想要看V4L規格的話,請參閱 /usr/src/linux/Documentation/video4linux/API.html 或 http://linuxtv.org/downloads/video4linux/API/V4L1_API.html v4l2 is the second generation of the video4linux API which fixes a number of design bugs of the first version. It was integrated into the standard kernel in 2.5.x. v4l2則是第二代的video相關api,解決了前一代的一些小問題,整合在linux2.5.x之中。 如果想要看V4L2規格的話,請參閱 http://v4l2spec.bytesex.org/ Althrough v4l2 is integrated into the standard kernel a number of drivers don't support the new v4l2 API yet, so we'll likely see v4l and v4l2 coexist for some time. 不過目前還不是很多驅動程式都支援v4l2,所以目前還會看到兩者共存的情形。 相關連結: v4l maintainer withdraw announcement video4linux mailing list v4l wiki: main p

Android 原始碼發佈嚕

圖片
平常只有注意到 http://code.google.com/android/ 有無更新sdk 但是剛發現如果點進去google code 的project 會發現已經有Source Code在上面提供下載了。 http://code.google.com/p/android/downloads/list 因為 Android 已經發行,Google已經公開了對 kernel 的修改, 其原始碼在 http://git.android.com/ 。 關於Android相關介紹,推薦Mr. Holiday所寫的系列文: Android 淺探(一) Android 淺探(二):系統架構 繼續努力。

簡單說明 pthread (POSIX Threads)

圖片
基本介紹可以參考 wiki; POSIX Threads 而在 Linux下的多线程编程 文中提到; Linux 系统下的多线程遵循POSIX线程接口,称为pthread。编写Linux下的多线程程序,需要使用头文件pthread.h,连接时需要使用库 libpthread.a。顺便说一下,Linux下pthread的实现是通过系统调用clone()来实现的。clone()是Linux所特有的系 统调用,它的使用方式类似fork,关于clone()的详细情况,有兴趣的读者可以去查看有关文档说明。 ps. wiki : POSIX 要如何產生pthread? 請看 pthread_create - thread creation -- pthread_create(pthread_t* _thread, pthread_attr_t* _attr, (void*) _function, (void *) _data); _thread = Thread ID returned _attr = The Thread Attribute _function = The Function Pointer _data = the pointer of the data passed to the child process -- 相關閱讀; [Linux] 關於 pthread_create 問題 Linux pthread_create 如何设置 线程的detach 状态

What is YCbCr ?

圖片
wiki : YCbCr 做有關影像處理的時候多是以RGB值表示,但是若想用JPEG壓縮那就要換成以YCbCr表示。 Y'CbCr is not an absolute color space , it is a way of encoding RGB information.

What is Framebuffer ? 名詞解釋 Framebuffer

What is Framebuffer ? wiki : Framebuffer A framebuffer is a video output device that drives a video display from a memory buffer containing a complete frame of data. Framebuffer 的架構,是利用 mmap 向 kernel 映射出 "顯示記憶體"區塊(註一、其他memory access的方式 ),讓linux的user可以透過framebuffer device(而不需要透過底層的driver)直接對display memory進行讀寫操作。 The information in the buffer typically consists of color values for every pixel (point that can be displayed) on the screen. Framebuffer裡主要是顯示資訊。 Color values are commonly stored in 1-bit monochrome , 4-bit palettized , 8-bit palettized, 16-bit highcolor and 24-bit truecolor formats. An additional alpha channel is sometimes used to retain information about pixel transparency. 以上是Color values的格式 Orz 不是很懂。 The total amount of the memory required to drive the framebuffer depends on the resolution of the output signal, and on the color depth and palette size. 而所會用到的記憶體大小就看你要顯示的多清楚了! 註一、其他memory access的方式; Mapping the entire framebuffer to a given mem

網路社交媒體 夯?

圖片
話說 紐約時報推出社交網站TimesPeople 感覺社交網站還是一樣活力十足, 但是也有些社交網站隕落 ex. 微軟支持的社交網站Wallop關門了 其實在試用了很多社交網站之後,真的會有點厭倦。 也許曾有些新奇的玩意出現, 但是新奇了一陣子,就又會變成各大網站必備。 像是"誰來我家" 以及 twitter-like 等功能。 而用了越多社交網站,那一次可以發佈訊息到各大網站的服務也就陸續推出; 現在我有在用的有 ; HelloTxt : 一次更新你所有微網誌的狀態 而另外還有 switchAbit : 一次發佈內容到你所有的網誌與微網誌 這些都只是在 社交網站收集與研究 (MMDays) 有提到的, 而在MMDays介紹之外,不知道又有多少網站。 突發奇想,話說金融海嘯是因為過度膨脹信用, 會不會有天Web2.0也跟著來了個全球海嘯 ? 畢竟搞不好每個新網站的 first 1000 儘是些重複的人們, 這些人也許在重複的衝鋒、重複的發佈、重複的棄置到最後厭倦了? 而開始拿起筆記本默默的寫給自己看的日記。 也許該好好看看這篇新聞: "網路社交媒體 夯!「我們什麼時候開始相信陌生人?」 Yahoo!奇摩 更新日期:'2008/10/15 18:56' 特約記者薛怡青/專題報導" 寫Blog跟寫日記的差別?我想寫Blog是在期待別人的回應, 什麼時候開始在乎路人的看法而不再只是單純的跟自己對話而已呢? -- 其他不相關文章: 中文托福考題分析 對上Orange Caramel 只能派出謝金燕了 ! Acer Net 宏碁微巨電子化服務 - 無微不至、巨細靡遺 公保年金化,台灣希臘化!

相當實用的程式設計師的格言

圖片
網路上看到的程式設計師的格言,原文請點以下連結 http://www2.biglobe.ne.jp/~oni_page/other/etc/pr03.html (翻譯beta r2 by but=HO) 中文請點這裡: http://buttaiwan.wordpress.com/2008/10/12/programmers_rule/ 譯註: PG = Programmer (剛進去只負責聽命寫程式的) SE = System Engineer (日本說的 SE 算是 team leader ? 還是工程師不過自己不寫 code) 前三條就很經典了 @@ -- 1 每天有24小時。 所謂的「今天之內」,是指到明天早上為止。 2 程式不會照自己所想的跑。只會照所寫的跑。 3 需求規格在程式寫完後才會敲定。 基本規格要客戶看到成品後才會決定。 詳細規格要使用者用過後才會確定。 --

We need Iacocca ! 面對亂世,我們需要艾科卡

最近金融風暴越演越烈,看到新聞: 通用汽車可能破產 員工憂心忡忡 合併案未定之天 覺得很憂心,不知道台灣會受到怎樣程度的波及。 我想在目前的困境之中,除了看股神 巴菲特 (Warren Edward Buffett)如何展現投資功力。 巴菲特超人 比政府還神 巴菲特取代比爾蓋茲 成為美國首富 我想更需要的是每個企業的負責人努力的力挽狂瀾。 而不是政府出資,直接挹注快倒的公司。 除了之前一直提到的郭董之外,今天要介紹的是 艾科卡 (Lido Anthony Lee Iacocca)。 艾科卡是美國企業家。前「福特汽車」(Ford Motor Company)、「克萊斯勒」(Chrysler Corporation)總裁。世界名車「福特野馬」(Ford Mustang)的開發負責人。素有『美國產業界英雄』的稱號。 近年來,亦開始常用「艾科卡」來比喻成:『將公司經營轉虧為盈的企業家』。 推薦書籍: 永不妥協的艾科卡  . 帶領克萊斯勒反敗為勝,一年內創下公司60年利潤總合! 相關連結: 1924年10月15日 美国汽车大王艾科卡诞辰

嵌入式系統入門

圖片
從網路上找到的好用資源: 嵌入式系統導覽 程式設計俱樂部 嵌入式系統 Embedded System Knowledge Base -- 推薦好書: 現代嵌入式系統開發專案實務-菜鳥成長日誌與專案經理的私房菜 -- 加油加油! --

2008 很好很強大的JQuery

2008 很好很強大的JQuery JQuery 越來越紅,現在最新版本是 1.2.6 , 最近新聞是 jQuery, Microsoft 及 Nokia 的合作 ! 已經不只是一個社群,因為功能很強大而逐漸被業界採納。

好書推薦 Linux 核心

圖片
Linux 核 心(The Linux Kernel) 是一本歷久彌新的書。正在慢慢摸索中Orz 感謝大大無私分享 ~ -- [中文繁體版版權聲明] 「 The Linux Kernel 」中文繁體版為 吳天健 及 許宏賓 同學翻譯自南京大學胡寧寧先生等之簡體版。這本書是可以自由的散佈的,你可在一特定的情形下複製或是重新散佈,但是請先讀一下 版權聲明 及重新散佈的情況。 原著: David A Rusling 編譯: 胡寧寧 畢昕 仲盛 趙振平 周笑波 李群 汲化 Gb碼轉Big5碼翻譯: 吳天健 許宏賓

英雄所見略同 Android小軟體介紹 wrru & hood

圖片
在看Android相關應用的時候,看到兩個有趣的軟體。 wrru "Where are You" service for Android platform Code License: GNU General Public License v2 hood Social geotagging for the Android platform Code License: Mozilla Public License 1.1 只能說英雄所見略同,不過雖然說方向類似但還是可以各有巧妙不同。 貼在blog做個紀錄之外,也是想要順便討論一下兩個Code License的不同之處。 改天來查 Orz

Android sdk 1.0 release

圖片
上星期Android sdk 1.0發佈了,相信已經變得相當完善,該可以多投入心血研究。畢竟如果sdk一直在變動,很有可能一改版之前的成果都要重新開始。1.0感覺有一個完整的版本的意義。 分享一下網路上有關開發Android的資源 ysl大 整理的: Android 程式開發相關連結 。 Android Shareware, Freeware 網站 。 以及gasolin大整理的: AndroidResource 開工嚕!

404 file note found

圖片
這圖還蠻有趣的 xD

Web2.0與閱讀:討論aNobii、羽毛、豆瓣以及Findbook等服務

Web2.0與閱讀:討論aNobii、羽毛、豆瓣以及Findbook等服務。颱風天很想看看書,看完書了之後想要做點紀錄,一時閱讀心得還沒有醞釀出來,接著又要還圖書館了,那當然就做點簡單的紀錄。原本想要連上最常用來搜尋書籍的Findbook,但是因為颱風天有點連線的問題Orz。 想了想以前有試用過的aNobii以及羽毛。就順便來寫篇文章記錄一下這些網路服務。 aNobii 羽毛 豆瓣?Douban Findbook 先看看blogger對於這些服務的討論:

好用 Findbook

圖片
推薦網路服務: Findbook ! 跟名字一樣,就是來幫忙找找書,但是特別的是可以幫忙比價。 看一下他網站的介紹: Findbook是一個大型的書籍資料庫(亦包括部分的以CD或DVD形式上市的出版品), 可以讓您快速的找到您所想要找的書,並且直接列出哪裡可以購買、租用、借閱。 http://findbook.tw/ 也有推出行動版: http://findbook.tw/m 其中書的 ISBN 可以只打後六碼~ 看一看其他blogger怎麼介紹Findbook : Findbook翻書客 書籍比價@Taiwan

Ubuntu 環境下開發 Android 所遇到的Eclipse 設定問題

Ubuntu 環境下開發 Android 所遇到的Eclipse 設定問題 Ubuntu上開發android出現一點問題,分享一下解決的過程。 若直接利用apt-get install eclipse 會安裝 eclipse 3.2.2-5ubuntu2。 但是官網推荐比較新的版本 http://code.google.com/android/intro/installing.html supported Development Environments: * Eclipse IDE o Eclipse 3.3 (Europa), 3.4 (Ganymede) 於是從善如流的到eclispe官網下載新版本。 而在前一篇文章有關  Upgrading the android sdk 有強調過  Not compatible with Gnu Compiler for Java (gcj) 所以推薦自己去sun官網下載,手動更新jdk, step by step教學在此 ! 接著很無腦的利用eclipse開發android(參考 android application in 5 minutes ),但是有別於windows上開發,我遇到一些問題。 eclispe顯示錯誤訊息: - myproject] Android Launch! - myproject] adb is running normally. - myproject] Could not find myproject.apk! 看來可能是 1. 沒有順利的產生.apk , 2. 沒有安裝到模擬器裏面, 經過一番嘗試,找到解法如下。 請先移除掉 ~/.android 這個目錄個人猜想是android的設定, 接著手動去建立myproject.apk。 (如何手動建立.apk請參考 Developing Android Applications with Other IDEs and Tools ,有空會寫個中文版分享。) 基本上是在 ~/android_sdk/tools/ ./activityCreator.py --out ~/workspace/myproject your.package.name.ActivityNam

Android Application in 5 minutes 新手開發Android app

基本上一android application可以分四部份: Activity Broadcast Intent Receiver Service Content Provider 每個都有不同的意思,也是種類的控制方式。 但對一個想快速上手的開發者而言,如同在 before helloworld 文中所提到的,只要先掌握好自己的myproject.java來控制流程(Controller),把res/layout/main.xml當作外觀(View)。然後再找到如何把Controller(*.java)以及View(main.xml)結合的方式,就可以作一簡單的Android Application。 不過這只是把java application假裝是Android Application而已。 如果要再多作些讓他像一點,那就要記得去改 AndroidManifest.xml ,在裡面把有用到的label以及activity註冊一下。就可以作成有點像的Android Application。 -- 以上是作弊的範圍,以下是小抄。 -- 首先在src\下面有myproject.java 當然就要看個人需求,看是要作九九乘法表還是萬年曆等常見資料結構題目。 想好要做的東西可以先去查一下有哪些view可以用,goolge整理好有外觀有對應的api,詳見下列網址。 http://code.google.com/android/reference/view-gallery.html 找到可以用的view widget 之後就直依需求接修改main.xml,在eclipse專案中直接refresh會發現到,在src\R.java也跟著作相對應的修改。這算是android開發時一個特點,會根據你放入res目錄下的東西自動對於 R.java做修改。(這裡有個很奧妙的地方,如果不是用eclipse開發要怎麼樣產生出R.java勒 ?) 如果有要放檔案的話,請放在res\assets\ 這個目錄下。R.java也會自動作對應的修改。 最後就是對AndroidManifest.xml作修改,用eclipse開發的時候會將每一個類別作成選單,只要跟著填入就好,相當方便。 要注意的activity,activity 通常是指一個單一的

Android tutorial : Before HelloWorld

圖片
由於google android 官網上推薦使用Eclipse,我們當然從善如流。 打開Eclipse後,直接 File->New->Project, 再選擇 Android Project! 就進入命名的部份,接著要填入4個名稱: Project Name、Package Name、Activity Name以及Application Name。 其中 Project Name及Package Name跟開發Java的習慣一樣,而新增的Activity是Android新增的一個介面來控制程式,之後會再講解,Application Name 則是顯示在應用程式上的標題。 確定之後就會建立一個簡單的project包含: src\myproject.java src\R.java res\drawable\icon.png res\layout\main.xml res\values\strings.xml AndroidManifest.xml -- src裏面的當然是我們主要的程式,但是其中我們只會修改到myproject.java,我們不需要動到,因為R.java是來幫助我們控制resource的程式,會自動因應res\目錄中的東西而有所更動。 icon.png 就是icon請不要懷疑。 res\layout\main.xml 則是主要來掌管外觀的設定,可以調用些android本身有的widget。在Eclipse下新增android project後會自動幫我們放入一個TextView來顯示文字。 res\values\strings.xml 則是讓我們定義些常數的檔案。在Eclipse下新增android project後會自動幫我們放入 < string name="hello"> Hello World, myproject </string> AndroidManifest.xml 則是相當奧妙的東西,負責來管理android各個activity之間的互動。由於我們根本除了設定名字之外什麼都沒做。 < application android:icon="@drawable/icon" android:label=

Creating an Android Project without Eclipse

Eclipse 是android推薦的開發環境,但是在linux久了,前輩一直說一定要自己手動做一遍才會知道到底做了哪些事情。於是也跟著看了 google android 說明文件中的 Developing Android Applications with Other IDEs and Tools android提供了一個好用的tool : activitycreator 可以用來幫助建立build.xml(for ant)。 以android sdk 裏面的sample Snake為例: 在tool目錄下執行activitycreator ./activityCreator.py --out ../samples/Snake com.android.snake.Snake 接著就是直接下ant 指令就可以在Snake/bin目錄下產生 Snake-debug.apk。 把Snake-debug.apk 複製到 tool 目錄下,就可以利用adb install 安裝進去模擬器啦。(別忘了要先開模擬器才能安裝唷@@) 但是還是要補充一篇: Get started with the Eclipse Platform 幫助大家上手!!! go go go ~ Eclipse 相關文章: set Android error log on Eclipse linux(ubuntu)環境下開發 Android 所遇到的Eclipse 設定問題 Android tutorial : Before HelloWorld 其他Android 開發文章請見:  Android開發豆知識

如何在文章中貼程式碼 ?

圖片
看了xdite大寫的 具版本控制的 nopaste - Gist ,驚覺自己的blog上面code或指令都是直接貼,不太好看。 於是就去搜尋一下有哪些方式來貼code。 近來很流行 windows live writer,我也想嘗試所以先找到了這篇 貼程式碼的好工具 (Windows Live Writer 外掛程式) ,試用的時候,發現一調整了blogger的設定 : [轉換換行符號 = 否],之前的文章也會跟著做修改,由於懶得再去調整之前文章的排版,就不用這招了。@@ 找到這篇 [筆記]在文章裡顯示優質的程式碼區 ,直接利用css建立code標籤,使用還蠻方便, 只需要用"code"以及"/code"標籤框住程式碼就好。 程式碼 以後再慢慢調整吧。 如果想要tag不要被執行就是把<>分別替換成< &gt,這樣就可以了:) 如果需要弄得更好看,讓程式碼彩色化,那請參考以下連結: http://duartes.org/iris/highlight.html

如何在linux平台升級java step by step

(不知道該用"linux"這個詞還是該講"ubuntu",因為首次接觸linux平台就是ubuntu,處在裡面久了也習慣了用ubuntu這個詞。這轉變有點像search => google 這樣的演化。)

Upgrading the android sdk

圖片
先來看看google 對於android sdk開發環境的說明。 System and Software Requirements http://code.google.com/android/intro/installing.html Supported Operating Systems: * Windows XP or Vista * Mac OS X 10.4.8 or later (x86 only) * Linux (tested on Linux Ubuntu Dapper Drake) Supported Development Environments: * Eclipse IDE o Eclipse 3.3 (Europa), 3.4 (Ganymede) + Eclipse JDT plugin (included in most Eclipse IDE packages) + WST (optional, but needed for the Android Editors feature; included in most Eclipse IDE packages) o JDK 5 or JDK 6 (JRE alone is not sufficient) o Android Development Tools plugin (optional) o Not compatible with Gnu Compiler for Java (gcj) * Other development environments or IDEs o JDK 5 or JDK 6 (JRE alone is not sufficient) o Apache Ant 1.6.5 or later for Linux and Mac, 1.7 or later for Windows o Not compatible with Gnu Compiler for Java (gcj) 以上粗體的部份,就是在linux上面開發要注意的問題,囧 需要自己抓一份jd

Android 0.9 SDK beta (r1) 發佈嚕:)

圖片
Android 0.9 SDK beta 發佈嚕:) 可以在以下連結下載 http://code.google.com/android/download.html window平台上前一個版本sdk是 android-sdk_m5-rc15_windows 最新版是: android-sdk-windows-0.9_beta (r1) 兩者的差異可以看releasenotes http://code.google.com/android/RELEASENOTES.html 目前最新建議的開發環境: Eclipse 3.4 (Ganymede) 需搭配 plugin ADT-0.7.1 (ADT, Android Development Tools) 個人測試過後,發現還是全都用新的吧。 之前遇到一個窘境,一開始我用 Eclipse 3.3 (Europa)開發, 然後用android-sdk_m5-rc15_windows 先是發現ADT更新,就傻傻的跟著更新,結果更新了ADT Eclispe回應說要更新sdk,就也跟著抓了新的sdk,發現無法正確啟動模擬器。 想說明明就只是跟著更新而已怎麼會錯呢,結果想要調整回m5-rc15的時候 Eclipse說m5-rc15不適用現在的ADT,把ADT換回前一個版本,照理說環境應該已經跟之前一樣了,舊的sdk舊的ADT,想不到Eclipse回應說需要更新ADT !! 於是就陷入了窘境:更新了ADT就要更新sdk,更新了sdk跑不動,想換回舊環境也不行。 接著就心一橫直接衝 Eclipse 3.4 (Ganymede) + ADT-0.7.1 + android-sdk-windows-0.9_beta 才又可以正常的開發 Orz 以上是window平台上開發android上的故事,在linux上又是另外個故事了 Orz Eclipse 相關文章: set Android error log on Eclipse linux(ubuntu)環境下開發 Android 所遇到的Eclipse 設定問題 Android tutorial : Before HelloWorld

GtkContainer 概念介紹

圖片
GtkContainer : "gtk_container_get_focus_vadjustment () GtkAdjustment* gtk_container_get_focus_vadjustment (GtkContainer *container); Retrieves the vertical focus adjustment for the container. See gtk_container_set_focus_vadjustment(). container : a GtkContainer Returns : the vertical focus adjustment, or NULL if none has been set. gtk_container_set_focus_vadjustment () void gtk_container_set_focus_vadjustment (GtkContainer *container, GtkAdjustment *adjustment); Hooks up an adjustment to focus handling in a container, so when a child of the container is focused, the adjustment is scrolled to show that widget. This function sets the vertical alignment. See gtk_scrolled_window_get_vadjustment() for a typical way of obtaining the adjustment and gtk_container_set_focus_hadjustment() for setting the horizontal adjustment. The adjustments have to be in pixel units and in the same coordinate system as the allo

GTK中對於Key Values的解釋

GTK中對於Key Values的解釋 Key Values : "gdk_keymap_get_entries_for_keyval () gboolean gdk_keymap_get_entries_for_keyval (GdkKeymap *keymap, guint keyval, GdkKeymapKey **keys, gint *n_keys);

Common Questions about GTK

Common Questions : "1.4. How does memory management work in GTK+? Should I free data returned from functions? See the documentation for GObject and GtkObject. For GObject note specifically g_object_ref() and g_object_unref(). GtkObject is a subclass of GObject so the same points apply, except that it has a 'floating' state (explained in its documentation). For strings returned from functions, they will be declared 'const' (using G_CONST_RETURN) if they should not be freed. Non-const strings should be freed with g_free(). Arrays follow the same rule. (If you find an exception to the rules, please report a bug to http://bugzilla.gnome.org.)"

何謂time granularity - Yahoo!奇摩知識+

圖片
何謂time granularity - Yahoo!奇摩知識+ : Time granularity 就是「時間粒度」,是指事情或現象發生的頻率、或發生時間之間的間隔。 時間粒度就是依所需把時間分解到不管是分、秒、日、月、甚至是毫秒等等時間單位,總之是儘量使分解程度到達對於該研究或作業來說適當的程度,因為分得太細會浪費不必要的人力與資源、分得太粗又會提高複雜性。 參考資料 * 2007-03-17 08:37:58 補充 關於時間粒度的解說有許多網頁: http://engine.cqvip.com/content/tp/92705x/2000/022/003/gc30_tp3_4823989.pdf 可自行輸入「時間粒度」查詢。

GtkListStore

圖片
GtkListStore : "Object Hierarchy GObject +----GtkListStore Implemented Interfaces GtkListStore implements GtkBuildable, GtkTreeModel, GtkTreeDragSource, GtkTreeDragDest and GtkTreeSortable."

Google Search

推薦內容橫式

本月熱門文章

鋼鐵韓粉站出來 讓韓國瑜每天唱歌喝酒好不好

捐款支持義大利靈醫會 一起來幫助他們 就像當初教士來台灣協助我們一樣 !!

北京故宮首訪,一窺清宮秘史 大玉兒 & 甄嬛

黑金? 不得不提前總統馬英九大姊馬以南 吳敦義 林益世

從台灣省長宋楚瑜到台北市長柯文哲,可以說 宋楚瑜 2.0 就是柯文哲

「港版國安法」,法律將會放在《基本法》附件三在港實施,而非就《基本法》23條立法

香港事件回顧 2020/08/10 前眾志成員周庭及壹傳媒創辦人黎智英被捕 今日累計10人被捕

返校場景之一 高雄黃埔新村

台灣與世界的不同 台灣:為什麼連續假日出去玩會塞車!