1. android操作sqlite資料庫需要new一個新thread嗎
不需要,如果sqlite查詢很耗時的話可以使用thread非同步查詢。
SQLite是輕量級嵌入式資料庫引擎,它支持 SQL 語言,並且只利用很少的內存就有很好的性能。此外它還是開源的,任何人都可以使用它。許多開源項目((Mozilla, PHP, Python)都使用了 SQLiteSQLite 由以下幾個組件組成:SQL 編譯器、內核、後端以及附件。SQLite 通過利用虛擬機和虛擬資料庫引擎(VDBE),使調試、修改和擴展 SQLite 的內核變得更加方便。
Android 集成了 SQLite 資料庫 Android 在運行時(run-time)集成了 SQLite,所以每個 Android 應用程序都可以使用 SQLite 資料庫。
資料庫存儲在 data/< 項目文件夾 >/databases/ 下。 Android 開發中使用 SQLite 資料庫 Activites 可以通過 Content Provider 或者 Service 訪問一個資料庫。
Android 提供了 SQLiteOpenHelper 創建一個資料庫,只要繼承 SQLiteOpenHelper 類,就可以輕松的創建資料庫。SQLiteOpenHelper 類根據開發應用程序的需要,封裝了創建和更新資料庫使用的邏輯。
SQLiteOpenHelper 的子類,至少需要實現三個方法:
1 構造函數,調用父類 SQLiteOpenHelper 的構造函數。這個方法需要四個參數:上下文環境(例如,一個 Activity),資料庫名字,一個可選的游標工廠(通常是 Null),一個代表你正在使用的資料庫模型版本的整數。
2 onCreate()方法,它需要一個 SQLiteDatabase 對象作為參數,根據需要對這個對象填充表和初始化數據。
3 onUpgrage() 方法,它需要三個參數,一個 SQLiteDatabase 對象,一個舊的版本號和一個新的版本號,這樣就可以清楚如何把一個資料庫從舊的模型轉變到新的模型。
2. 在安卓手機裡面可以搭建資料庫嗎
搭建資料庫的目的就是數據的存儲,android手機可以使用嵌入式資料庫sqlite,還可以使用api訪問雲服務提供的數據,內部使用json來存儲解析
3. 學習Android嵌入式需要做哪些准備
說幾句:
1. 第一張圖中有「基礎」和「高級」部分,大可不要在意。看看自己想走哪個層面的開發,或者想先從哪一部分入手,確定後,學習對應的知識即可,嗯,我說得很寬泛不具體。
2. 既然有培訓基礎,那麼應該對應用層很熟悉。
3. Android是OS,GUI/APP/庫/框架等的集合。因此,這方面和我們平常的Ubuntu/Windows沒有什麼區別,可以不懂硬體。底層的Kernel,和Android「沒有什麼關系」,就算做linux驅動開發也不需要太多的硬體基礎,看得懂原理圖即可,大二大三學的數電模電和組成原理足夠了。
做App的話,直接Android手機就足夠了。如果搞Linux 驅動開發,那麼用的最廣,資料最多的S3C2440晶元的開發板是第一推薦。
4. android嵌入式開發大綱
課程安排 課程簡介
第一階段
Linux 操作和編程基礎
預備營階段主要講解 Linux 的基本命令和linux培訓基礎編程知識,包括Linux的文件操作和目錄操作命令,VI編輯器,GCC編譯器,GDB調試器和 Make 項目管理工具等知識。
該階段學生可以通過學習Linux下編程方法,完成實現一個簡單的游戲編程,例如五子棋、俄羅斯方塊、貪吃蛇等。此項任務完成後,學員的編碼量可以達到1000行,能夠進行基本程序開發。
第二階段
嵌入式環境開發核心技能
初級營階段主要講解在嵌入式開發編程中C語言的重要概念和編程技巧中的重點難點,以復習串講和實例分析的形式,重點介紹包括函數與程序結構,指針、數組和鏈表,庫函數的使用等知識。
該階段學員會進行大量的編碼練習,主要包括整數演算法訓練,遞歸和棧編程訓練,位操作訓練,指針訓練,字元串訓練,鏈表和二叉樹訓練、掌握常用C庫
函數編程介面實踐,函數指針、動態內存分配,程序預處理、鏈接原理,ELF文件格式,標准I/O庫等核心技能,強化學員對嵌入式開發環境下基本編程開發的
理解和編碼調試的能力。
該階段學員在完成上述編碼練習任務後,將獨立完成「快譯通」寶典項目開發,實現一個類「金山詞霸」字典功能的實用程序開發。該項目完成後,學員的
編碼量可以達到5000-8000行,具備初級程序員開發能力,能夠勝任企業一般開發編碼類的任務要求。
第三階段
嵌入式Linux環境高級
編程和項目開發實踐
中級營階段主要講解包括系統編程(信號/系統調用/管道/FIFO/消息隊列/共享內存等),文件I
/O編程(文件描述符/文件讀寫介面/原子操作/阻塞與非阻塞IO等),多任務和多線程編程(進程標識/用戶標識/fork與vfork/多線程概念/線
程同步等),網路編程(網路基本概念/套介面編程/網路位元組次序/ Client/Server 結構/ UDP
編程);掌握Linux下Socket編程的開發流程,熟悉網路編程的調用介面函數和相關數據結構,使學員初步具備在Linux上進行系統編程開發的能
力。同時還會講解搭建嵌入式 Linux
開發環境,包括嵌入式Linux基本概念和開發流程、內核裁減配置和交叉編譯、根文件系統製作、網路編程等知識。
該階段學員將綜合之前所學內容和編程技術,以小組為單位進行一個團隊合作項目的開發,完成一個嵌入式產品「數碼相框」的設計和實現,涉及技術內容
包括文件I/O編程,多線程編程,網路編程和項目文檔編寫。該項目完成後,學員的編碼量可以達到10000-15000行,具備中級程序員開發能力,能夠
勝任企業項目開發和產品開發類的任務要求。
第四階段
嵌入式Linux開發方向 Android開發方向
(2選1)
高級營課程將按照學員興趣和特長,選擇2個專業選修方向進行深入學習,包括:
·嵌入式ARM硬體開發(公共部分)
·嵌入式Linux開發方向
·Android手機開發方向
該階段完成後,學員的編碼量可以達到和超過20000行,具備獨立開發項目,完成嵌入式產品軟體設計和實現的能力。
以下為這2個方向的詳細描述:
嵌入式ARM硬體開發
(公共部分)
該部分學習的內容包括ARM體系結構、指令集、裸板開發等等,該階段要求學員完成從0開始的Bootloader項目:
·Bootloader項目(從0啟動硬體,載入Linux內核)
該項目主要涉及
ARM體系結構及其基本編程知識,包括指令分類,定址方式、指令集、存儲系統、異常中斷處理、ARM匯編語言以及C和匯編語言的混合編程,ARM開發板啟
動代碼的框架分析等知識。同時要求結合ARM嵌入式開發板硬體設計原理圖分析各種外設的工作原理和驅動機制,並自己動手實踐完成一個ARM開發板上的
Bootloader編程大作業。
嵌入式Linux開發方向
—上層應用開發
該部分主要針對上層應用開發,學習的內容包括C++面向對象編程基礎、QT圖形界面開發、網頁腳本語言、SQLite資料庫等知識。
該階段要求學員設計並實現1個真實完整的嵌入式項目開發流程,該方向的項目選題可以從以下項目案例中任選:
·廣告機項目(互動式多媒體網路系統)
·飛鴿傳書項目(區域網文件共享系統)
·QQ聊天室項目(多客戶登錄即時通訊系統)
·數據採集和遠程式控制制項目(Web遠程式控制制系統)
以上項目開發,涉及到文件I/O編程、資料庫編程、網路通訊、以及圖形界面開發等多種嵌入式Linux編程技術,要求學員建立起團隊開發和協同工
作的企業項目開發模式的概念和流程,強化學員對編寫項目概要設計文檔和詳細設計文檔的理解,為就業的職業技能和素質訓練做好充分准備。
嵌入式Linux開發方向
—底層驅動開發
該部分主要針對底層驅動開發, Linux設備驅動程序開發規范、USB協議規范、LCD液晶屏/TS觸摸屏/網卡/AC97音效卡等硬體驅動開發知識。
該階段要求學員實現2-5個真實的硬體設備驅動,該方向的項目選題可以從以下項目案例中任選:
·CS8900網卡驅動
·USB驅動
·LCD液晶屏驅動
·TS觸摸屏驅動
·AC97音效卡驅動
·串口驅動
上述項目主要涉及嵌入式 Linux
上驅動程序開發規范,包括設備驅動程序概念、字元設備驅動程序、塊設備與網路設備、網卡驅動以及常用嵌入式設備驅動開發等知識。要求學員獨立實現至少2種
嵌入式設備驅動程序的編寫,包括驅動模塊的調試和載入以及完整的項目開發文檔的編寫。
專業選修方向二
Android開發方向
該方向主要為了滿足人才合作單位對Android高端技術人才的需求而設,基於對市場最前沿高端平板電腦產品方案的研發實踐,使學員系統全面地掌握多核Android平台上的開發技術,滿足企業對有實際開發經驗的Android高端工程師的需求。
該階段要求學員學習Android系統框架、Android系統移植優化和Android應用開發等知識,完成2個商業級android項目。該方向的項目選題可以從以下項目案例中任選:
·mp3/mp4播放器(實現各種媒體格式的播放功能)
·雲點閱讀器(能夠瀏覽epub、txt等文檔)
·點菜系統(酒店點菜系統, 實現菜單瀏覽,下單)
·游戲引擎(開發完整的android平台游戲引擎)
上述項目均採用最新Android高端硬體平台:NVIDIA Tegra2雙核1GHz,3D、flash、高清硬體加速,基於ARM Cortex-A9內核,支持重力感測,WiFi無線網路,3G上網,HDMI高清介面。
5. android中的資料庫怎麼去寫如何建表,希望有具體代碼參考啊!
android 中的資料庫操作 android 中的應用開發很難避免不去使用資料庫, 聊聊 android 中的數據 庫操作,我發給你 word 貼不下
一、android 內的資料庫的基礎知識介紹
1.用了什麼資料庫
android 中採用的資料庫是 SQLite 這個輕量級的嵌入式開源資料庫,它是用 c 語言構建的。相關簡介可以從鏈接查看。
2.資料庫基本知識觀花
對於一些和我一樣還沒有真正系統學習資料庫技術的同學來說,把 SQL92 標 准中的一些基本概念、基本語句快速的了解一下,是很有必要的,這樣待會用 Android 的 database 相關方法去執行一些資料庫語句時就不會茫然了。
①資料庫的基本結構——表格
表格是資料庫中儲存資料的基本架構。表格被分為欄位 (column) 及列位 (row)。每 一列代表一筆資料,而每一欄代表一筆資料的一部份。舉例來說,如果我們有一個記載顧客 資料的表格,那欄位就有可能包括姓、名、地址、城市、國家、生日..等等。每一個表格 . 擁有一個獨一無二的名字(Table Name)以便能夠讓用戶定位到它上面。一個典型的表格結 構如下:
Store_Information 表格
store_name Sales Date Los Angeles $1500 Jan-05-1999 San Diego $250 Jan-07-1999 Los Angeles $300 Jan-08-1999 Boston $700 Jan-08-1999 該表格的表格名字為 Store_Information, 一共有三個欄位, 分別為 store_name , Sales , Data , 已經錄入了四筆數據所以有四個列位。
②關於數據類型
和其他的資料庫不同的是,sqlite 是無類型的。也就是當你創建一個表格時,無需對 每一個欄位要存儲的數據的類型進行聲明,當你在給表格增加數據條目時,sqlite 會自動找 到存入的數據的類型。
SQLite 允許忽略數據類型,但是,仍然建議在 Create Table 語句中指定數據類型, 因為數據類型有利於增強程序的可讀性。SQLite 支持常見的數據類型,如 VARCHAR、 NVARCHAR、TEXT、INTEGER、FLOAT、BOOLEAN、CLOB、BLOB、TIMESTAMP、 NUMERIC、VARYING、CHARACTER、NATl0NAI, VARYINGCHARACTER。這些數據類 型都是 SQL92 標准中規定的標准資料庫數據類型,想要有更近一步了解,請參看下錶。
SQL 資料庫數據類型詳解 數據類型 類型 描 述 bit 整型 bit 數據類型是整型,其值只能是 0、1 或空值。這種數據類型用於存儲只有兩 種可能值的數據,如 Yes 或 No、True 或 Fa lse 、On 或 Off int 整型 int 數據類型可以存儲從- 231(-2147483648)到 231 (2147483 647)之間的整數。存 儲到資料庫的幾乎所有數值型的數據都可以用這種數據類型。 這種數據類型在資料庫里佔用 4 個位元組 smallint 整型 smallint 數據類型可以存儲從- 215(-32768)到 215(32767)之間的整數。這種 數據類型對存儲一些常限定在特定范圍內的數值型數據非常有用。 這種數據類型在資料庫里 佔用 2 位元組空間 tinyint 整型 tinyint 數據類型能存儲從 0 到 255 之間的整數。 它在你只打算存儲有限數目 的數值時很有用。 這種數據類型在資料庫中佔用 1 個位元組 numeric 精確數值型 numeric 數據類型與 decimal 型相同 decimal 精確數值型 decimal 數據類型能用來存儲從-1038-1 到 1038-1 的固定精度和范圍 的數值型數據。使用這種數據類型時,必須指定范圍和精度。 范圍是小數點左右所能存儲