導航:首頁 > 操作系統 > android驅動開發環境

android驅動開發環境

發布時間:2022-09-08 21:26:55

Ⅰ 求助,首次搭建Qt for android開發環境是遇到的錯誤

雖然網路上很多人使用 Redhat 或者Fedora 作為上位機操作系統,但是我覺得使用Ubuntu最為方便,因為需要的軟體包大部分都可以通過 apt-get 方式來安裝,而不必從源代碼開始自己編譯。 雖然網路上很多人使用 Redhat 或者Fedora 作為上位機操作系統,但是我覺得使用Ubuntu最為方便,因為需要的軟體包大部分都可以通過 apt-get 方式來安裝,而不必從源代碼開始自己編譯。要知道,自己編譯源代碼可不是一件輕松的事,因為在編譯過程中經常會出現令人意外而且莫名其妙的錯誤。 我們使用的操作系統是 Ubuntu 8.04,使用目前最新版本的QT 4.4.0,安裝起來即為簡單,只要在命令編輯運行以下命令就行: sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer 注意在這個版本的軟體包中,qt4-dev-tools 包含了Qt Assistant及Qt Linguist等工具,因此不需要單獨安裝這兩個工具。其它的,qt4-doc 是幫助文檔,包含了Qt中各個類庫的詳細說明以及豐富的例子程序,可以使用Qt Assistant 工具來打開閱讀。qt4-qtconfig 是配置Qt環境的一個對話框,一般默認就行了,很少有必要去更改。qt4-demos 包含很多可以運行起來的可執行文件以及源代碼。qt4-designer是用來設計GUI界面的設計器。 為了連接MySQL資料庫,需要安裝連接MySQL的驅動程序: sudo apt-get install libqt4-sql-mysql 比起在Windows下安裝和配置Qt的MySQL驅動來說,簡直太方便了。如果還需要其它的沒有默認安裝的Qt庫,可以在命令行輸入 sudo apt-get install libqt4- 然後按tab鍵自動補全,就會列出所有以libqt4- 開頭的軟體包,如下圖所示: 這些都可以使用一個命令搞定,而不需要自己從源碼開始編譯。在記不準或不知道名字的情況下,使用tab鍵列出所有可選的軟體包是一個很實用的小技巧。 在我的項目中,還需要畫一些數據曲線和統計圖表等,而第三方的QWT庫提供了這些功能。同樣,只需要一個命令即可完成安裝: sudo apt-get install libqwt5-qt4 libqwt5-qt4-dev 這時,打開Qt Designer,就會發現左邊的Widget列表裡面多了「Qwt Widget」這一組。 最後,關於集成開發環境我覺得QDevelop很不錯,它跟Qt Designer結合的很好,而且有提示類成員函數的功能。運行以下命令安裝: sudo apt-get install qdevelop 這樣,使用Qdevelop編寫代碼和編譯、調試,使用Qt Designer設計界面,開發效率較高。

Ⅱ 安卓 eclipse 開發環境下能直接連接哪些網路資料庫

在Android工程中引入JDBC驅動,直接連接,大概常見有這么幾個

mysql,postgresql,oracle,Sybase,SQLServer

步驟一

在eclipse選擇工程,右鍵---->Properties---->在左側選項「java Build Path」---->切換到「Libraries」---->選擇「Add External JARs」---->選中jtds的jar包---->完畢

importnet.sourceforge.jtds.jdbc.Driver;
//1.MySQL(http://www.mysql.com)mm.mysql-2.0.2-bin.jar
Connectioncon=null;
Class.forName("org.gjt.mm.mysql.Driver");//載入驅動程序
con=DriverManager.getConnection("jdbc:mysql://DbComputerNameOrIPAddr:3306/DatabaseName",UserName,Password);


//2.PostgreSQL(http://www.de.postgresql.org)pgjdbc2.jar
Connectioncon=null;
Class.forName("org.postgresql.Driver");//載入驅動程序
con=DriverManager.getConnection("jdbc:postgresql://DbComputerNameOrIPAddr/DatabaseName",UserName,Password);


//3.Oracle(http://www.oracle.com/ip/deploy/database/oracle9i/)classes12.zip
Connectioncon=null;
Class.forName("oracle.jdbc.driver.OracleDriver");//載入驅動程序
con=DriverManager.getConnection("jdbc:oracle:thin:@DbComputerNameOrIPAddr:1521:DatabaseName",UserName,Password);


//4.Sybase(http://jtds.sourceforge.net)jconn2.jar
Connectioncon=null;
Class.forName("com.sybase.jdbc2.jdbc.SybDriver");//載入驅動程序
con=DriverManager.getConnection("jdbc:sybase:Tds:DbComputerNameOrIPAddr:2638/DatabaseName",UserName,Password);
//(Default-Username/Password:"dba"/"sql")


//5.MicrosoftSQLServer(http://jtds.sourceforge.net)
Connectioncon=null;
Class.forName("net.sourceforge.jtds.jdbc.Driver");//載入驅動程序
con=DriverManager.getConnection("jdbc:jtds:sqlserver://DbComputerNameOrIPAddr:1433/DatabaseName",UserName,Password);


//6.MicrosoftSQLServer(http://www.microsoft.com)
Connectioncon=null;
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//載入驅動程序
con=DriverManager.getConnection("jdbc:microsoft:sqlserver://DbComputerNameOrIPAddr:1433;databaseName=master",UserName,Password);

Ⅲ Android 驅動開發應該如何入門和學習成長

一.認識android的架構
Android其本質就是在標準的linux系統上增加了Java虛擬機Dalvik,並在Dalvik虛擬機上搭建了一個JAVA的application framework,所有的應用程序都是基於JAVA的application framework之上。
android分為四個層,從高層到低層分別是應用程序層、應用程序框架層、系統運行庫層和linux核心層。
二.搭建環境
搭建開發環境
對國內的開發者來說最痛苦的是無法去訪問android開發網站。為了更好的認識世界,對程序員來說,會翻牆也是的一門技術,帶你去領略牆外的世界,好了,不廢話了, 國內開發者訪問(androiddevtools) 上面已經有了所有你要的資源,同時可以下載到我們的主角framework
但是這樣的搭建只能去閱讀源代碼,我們無法去更進一步去實現自己的rom,我們看到錘子的系統在早期的開放rom是自己從新實現了framework的代碼,現在看起來他成功了,所以我們還要去搭建android系統的源碼編譯環境。
搭建源碼編譯環境

三.開始主題
在一開始寫c程序的時候都有一個運行的入口,比如
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
//這里的main就是應用的入口
int main(int argc, const char * argv[]){
return 0;
}
在計算機網路原理中我們用socket實現一個伺服器端,不斷的接聽客戶端的訪問,而且他的代碼是這樣實現的:
#include <winsock2.h>
#pragma comment(lib, "WS2_32.lib")
#include <stdio.h>
void main()
{
WORD wVersionRequested;//版本號
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD(2, 2);//2.2版本的套接字
//載入套接字型檔,如果失敗返回
err = WSAStartup(wVersionRequested, &wsaData);
if (err != 0)
{
return;
}
//判斷高低位元組是不是2,如果不是2.2的版本則退出
if (LOBYTE(wsaData.wVersion) != 2 ||
HIBYTE(wsaData.wVersion) != 2)
{
return;
}
//創建流式套接字,基於TCP(SOCK_STREAM)
SOCKET socSrv = socket(AF_INET, SOCK_STREAM, 0);
//Socket地址結構體的創建
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY);//轉換Unsigned long型為網路位元組序格
addrSrv.sin_family = AF_INET;//指定地址簇
addrSrv.sin_port = htons(6000);
//指定埠號,除sin_family參數外,其它參數都是網路位元組序,因此需要轉換
//將套接字綁定到一個埠號和本地地址上
bind(socSrv, (SOCKADDR*)&addrSrv, sizeof(SOCKADDR));//必須用sizeof,strlen不行
listen(socSrv, 5);
SOCKADDR_IN addrClient;//字義用來接收客戶端Socket的結構體
int len = sizeof(SOCKADDR);//初始化參數,這個參數必須進行初始化,sizeof
//循環等待接受客戶端發送請求
while (1)
{
//等待客戶請求到來;當請求到來後,接受連接請求,
//返回一個新的對應於此次連接的套接字(accept)。
//此時程序在此發生阻塞
SOCKET sockConn = accept(socSrv, (SOCKADDR*)&addrClient, &len);
char sendBuf[100];
sprintf(sendBuf, "Welcome %s to JoyChou",
inet_ntoa(addrClient.sin_addr));//格式化輸出
//用返回的套接字和客戶端進行通信
send(sockConn, sendBuf, strlen(sendBuf)+1, 0);//多發送一個位元組
//接收數據
char recvBuf[100];
recv(sockConn, recvBuf, 100, 0);
printf("%s\\n", recvBuf);
closesocket(sockConn);
}
}
他採用了一個while死循環去監聽客戶端的請求。

先上源代碼
public final class ActivityThread {
public static void main(String[] args) {
SamplingProfilerIntegration.start();
CloseGuard.setEnabled(false);
Environment.initForCurrentUser();
EventLogger.setReporter(new EventLoggingReporter());
Security.addProvider(new AndroidKeyStoreProvider());
final File configDir = Environment.getUserConfigDirectory(UserHandle.myUserId());
TrustedCertificateStore.setDefaultUserDirectory(configDir);
Process.setArgV0("<pre-initialized>");
Looper.prepareMainLooper();
//從中可以看到為app開辟了一個線程進入了looper之中
ActivityThread thread = new ActivityThread();
thread.attach(false);
if (sMainThreadHandler == null) {
sMainThreadHandler = thread.getHandler();
}
AsyncTask.init();
if (false) {
Looper.myLooper().setMessageLogging(new
LogPrinter(Log.DEBUG, "ActivityThread"));
}
Looper.loop();
throw new RuntimeException("Main thread loop unexpectedly exited");
}
}
看到源碼失望了,沒有一個while循環啊,其實用了他方法實現
//用一個looper的機制循環監聽響應
Looper.prepareMainLooper();
Looper.loop();
進一步深入代碼
public static void loop() {
final Looper me = myLooper();
if (me == null) {
throw new RuntimeException("No Looper; Looper.prepare() wasn't called on this thread.");
}
final MessageQueue queue = me.mQueue;
Binder.clearCallingIdentity();
final long ident = Binder.clearCallingIdentity();
// 在這里看到了一個循環監聽消息
for (;;) {
Message msg = queue.next(); // might block
if (msg == null) {
// No message indicates that the message queue is quitting.
return;
}
Printer logging = me.mLogging;
if (logging != null) {
logging.println(">>>>> Dispatching to " + msg.target + " " +
msg.callback + ": " + msg.what);
}
msg.target.dispatchMessage(msg);
if (logging != null) {
logging.println("<<<<< Finished to " + msg.target + " " + msg.callback);
}
// Make sure that ring the course of dispatching the
// identity of the thread wasn't corrupted.
final long newIdent = Binder.clearCallingIdentity();
if (ident != newIdent) {
Log.wtf(TAG, "Thread identity changed from 0x"
+ Long.toHexString(ident) + " to 0x"
+ Long.toHexString(newIdent) + " while dispatching to "
+ msg.target.getClass().getName() + " "
+ msg.callback + " what=" + msg.what);
}
msg.recycleUnchecked();
}
}

Ⅳ myeclipse怎麼搭建android開發環境

myeclipse搭建android開發環境安裝adt就可以。

工具/原料

eclipse

jdk

方法/步驟

  1. 從eclipse中選擇help下面的install new software

Ⅳ 如何件android中的命令移植到linux開發板上,想使用android中的一些命令,方便開發,比如logcat命令

本文用《Android深度探索(卷1):HAL與驅動開發》的隨書源代碼為例詳細說明如何配置Android驅動開發和測試環境,並且如何使用源代碼中的build.sh腳本文件在各種平台(UbuntuLinux、Android模擬器和S3C6410開發板)上編譯、安裝和測試Linux驅動。
建議讀者使用UbuntuLinux12.04或更高版本實驗本文的方法。
最好用root賬號登錄Linux。
一、安裝交叉編譯器
如果只是在UbuntuLinux上測試Linux驅動就不需要安裝交叉編譯器了,但要在Android模擬器或S3C6410開發板上進行測試,就必須安裝交叉編譯器。
首先下載交叉編譯器(分卷壓縮
下載後解壓,會發現有兩個tgz文件,可以將這兩個文件放到/root/compilers目錄中,在Linux終端進入該目錄,執行如下命令安裝交叉編譯器。
[plain]viewplain
#tarzxvfarm-linux-gcc-4.3.2.tgz-C/
#tarjxvfarm-none-linux-gnueabi-arm-2008q3-72-for-linux.tar.bz2-C/
二、編譯和測試Linux內核
這里的Linux內核有兩個,一個是goldfish,也就是Android模擬器使用的Linux內核、另外一個是S3C6410開發板使用的Linux內核(Linux2.6.36)。
讀者首先要下載這兩個Linux內核。
Android模擬器用的Linux內核源代碼(分卷壓縮)
用於S3C6410開發板的Linux內核源代碼(分卷壓縮)
分卷1
分卷2
由於隨書代碼中的word_count驅動已經在goldfish和linux2.6.36中分別建立了符號鏈接,以便在編譯linux內核時同時也會編譯word_count驅動,所以linux內核與源代碼目錄應與作者機器上的目錄相同。
也就是兩個linux內核目錄與源代碼目錄如下:
linux內核目錄
/root/kernel/goldfish
/root/kernel/linux_kernel_2.6.36
源代碼目錄
/root/drivers
注意/root/drivers目錄下就直接是每一章的源代碼了,例如/root/drivers/ch
06、/root/drivers/ch07
現在需要將/usr/local/arm/arm-none-linux-gnueabi/bin路徑加到Linux的PATH環境變數中(不會加的上網查,這是Linux的基本功)
最後進入/root/compilers/goldfish目錄,執行make命令編譯linux內核,如果完全編譯,大概20分鍾左右。
編譯完成後,會在/root/kernel/goldfish/arch/arm/boot目錄中生成一個zImage文件,代碼1.7MB,這就是用於Android模擬器的Linux內核文件。
三、編譯Linux驅動
現在來編譯隨書光碟的驅動程序,這里以word_count驅動為例。
在Linux終端進入/root/drivers/ch06/word_count目錄。
先別忙著編譯。
首先要設置打開/root/drivers/common.sh文件,修改第一行UBUNTU_KERNEL_PATH變數值為自己機器上安裝的UbuntuLinux內核路徑,只要執行「ls/usr/src」命令即可查看當前機器可用的linux內核。

Ⅵ android操作系統用什麼語言開發的

安卓官方開發語言:Kotlin 初探

Kotlin 是一種在 Java 虛擬機上執行的靜態型別編程語言,由 JetBrains 開發團隊所開發。該語言有幾個優勢。

它大大減少需要寫的樣板代碼的數量。避免空指針異常等整個類的錯誤。構建伺服器端程序、Android 應用程序或者在瀏覽器中運行的前端程序。通過 100% Java 互操作性,利用 JVM 既有框架和庫。

在Kotlin中變數聲明有兩種類型,val修飾變數是只讀變數即只能賦值一次,再次賦值時就會編譯錯誤,如果需要多次修改值就需要使用var。

(6)android驅動開發環境擴展閱讀:

The IntelliJ Kotlin 插件擴展了 Java 編譯器使得 Kotlin 代碼能夠得以編寫、編譯和調試。除此之外,關於基本的 Java 集合,已經有編寫好的幫助函數,可以更順暢地銜接將在 Java 8 中出現的集合擴展。

Kotlin,類似 Xtend 一樣,旨在提供一種更好的 Java 而非重建整個新平台。這兩種語言都向下編譯為位元組碼(雖然 Xtend 是首先轉換成相應的 Java 代碼,再讓 Java 編譯器完成繁重的工作),而且兩者都引入了函數和擴展函數(在某個有限范圍內靜態地增加一個新方法到某個已有類型的能力)。

Ⅶ android 驅動開發需要打開發環境

安卓的底層就是個linux,所以開發安卓的驅動也就是開發linux的驅動。而大部分的硬體設備在linux下的驅動都是現成的。如果實在需要開發的話找個linux的開發板就能做了。還有什麼問題可以追問。

Ⅷ 安卓開發需要學習什麼

學習分三個階段:

1,Android基礎階段:平台架構特性(JAVA/C) Market/應用程序組件 環境搭建與部署/打包與發布 AVD/DDMS/AAPT 調試與測試 相關資源訪問/資源製作 Activity/Service/Broadcast Receiver/Content Provider/原理(生命周期)及深層實現

2,Android進階初級:組件Widget/ 菜單Menu/ 布局Layout 詳解 Xml解析(Pull/Dom/Sax)/JNI 解析SQL資料庫原理,。

SQLite /SharedPreferences/File詳解 多媒體Audio/Video/Camera 詳解

3,Android進階高級:藍牙/WIFI SMS/MMS 應用實現 深層次解析GPS原理。

實現LocationManager/LocationProvider 進行定位/跟蹤/查找/趨近警告以及Geocoder正逆向編解碼等技術細節 2D圖形庫(Graphics/View)詳解 SDCARD/感測器/手勢 應用實現

(8)android驅動開發環境擴展閱讀:

知識體系

1、Unix/Linux平台技術:基本命令,Linux下的開發環境

2、企業級資料庫技術:SQL語言、SQL語句調優、Oracle資料庫技術

3、Java 語言核心技術:Java語言基礎、Java面向對象編程、JDK核心API、Java集合框架、Java網路編 程、JavaI/O編程、Java多線程編程、Java異常機制、Java安全、JDBC、XML

4、軟體工程和設計模式:軟體工程概述、配置管理及SVN、UML、基本設計模式

5、Android應用開發基礎:Android開發平台、Eclipse+ADT開發環境、AVD及感測模擬器調試、Android核心組件、Android常用組件、Android高級組件、文件及網路訪問、SQLite資料庫編程、後台服務編程

6、互聯網核心技術: HTML、CSS、JavaScript、JQuery、Ajax應用

7、Android高級應用開發:音頻視頻攝像頭、互聯網應用、GPS和位置服務、Google Map、2D3D繪制、感測器開發、游戲開發、電話及SMS服務、網路BluetoothWi-Fi等。

8、Android系統級開發:移植、驅動、NDK(C方向)。

9、JavaEE核心技術:Servlet核心技術、JSP核心技術、Struts、Spring、Hibernate框架。

Ⅸ Android手機代替Android虛擬機開發,手機上要裝什麼驅動

android手機代碼調式很簡單,只要你電腦裝了手驅動即可,手機需要做以下幾個設置:


1、首先將手機設置為調試模式

方法:設置——應用程序——開發——USB調試,打上√即可


2、用數據線連接至電腦,在電腦上安裝豌豆莢,此時豌豆莢會幫你安裝驅動,安裝好後豌豆莢就可以連接上手機了


3、用adb命令測試是否有裝置已連接

命令:adb devices

在這里就看到了我們的真機裝置了,選擇上面的真機OK即可在真機上運行程序了

Ⅹ 如何安裝配置驅動開發環境

安裝以上兩款軟體到電腦
2
打開vs2010
環境配置

3
新建VC 控制台項目(選擇為空項目)

配置屬性-常規
配置屬性-C/C++-常規

配置屬性-C/C++-預處理器

配置屬性-C/C++-代碼生成

配置屬性-C/C++-高級

配置屬性-鏈接器-常規
我們看到路徑是…\WXP\i386,意思就是針對Windows XP系統和i386架構CPU,如果想編譯其他系統,或者其他CPU的驅動,修改此路徑即可。

配置屬性-鏈接器-輸入

配置屬性-鏈接器-清單文件

配置屬性-鏈接器-系統

配置屬性-鏈接器-高級

閱讀全文

與android驅動開發環境相關的資料

熱點內容
谷歌web伺服器地址 瀏覽:896
安卓鎖屏圖片如何刪除 瀏覽:717
python3多進程編程 瀏覽:711
證明代碼是程序員寫的 瀏覽:392
演算法錯誤發現辦法 瀏覽:407
河南省醫院掛號是哪個app 瀏覽:627
冬日戀歌哪個APP能看 瀏覽:671
委內瑞拉加密貨 瀏覽:8
程序員寫日記哪個軟體好 瀏覽:106
加密機操作手冊 瀏覽:860
dos命令自動關閉 瀏覽:328
心田花開app在哪裡評價 瀏覽:449
求索記錄頻道哪個app可以看 瀏覽:730
金梅瓶pdf下載 瀏覽:985
機器軟體用什麼編程 瀏覽:845
java虛擬機指令 瀏覽:671
shell編程入門書籍 瀏覽:946
大連桶裝水溯源碼售價 瀏覽:302
php怎麼跳轉到電腦 瀏覽:414
如何在電腦上創建新網路連接伺服器 瀏覽:61