我正在給Android編程世界的第一步。這是一個初學者問題。瞭解Android應用程序執行
如何完成,使用c或C++編寫的庫來操作例如相機或揚聲器在一個Android應用程序中的過程?
我們使用允許訪問攝像頭等組件的硬件服務。 此硬件服務使本地調用(JNI)?它是否正確?
Dalvik VM執行一個dex文件。這個dex文件是否包含所有這些被翻譯成機器碼的入侵?
我有點困惑
我正在給Android編程世界的第一步。這是一個初學者問題。瞭解Android應用程序執行
如何完成,使用c或C++編寫的庫來操作例如相機或揚聲器在一個Android應用程序中的過程?
我們使用允許訪問攝像頭等組件的硬件服務。 此硬件服務使本地調用(JNI)?它是否正確?
Dalvik VM執行一個dex文件。這個dex文件是否包含所有這些被翻譯成機器碼的入侵?
我有點困惑
作爲Android的架構圖提及Android有最庫,使用Java Native Interface(JNI)能在Linux內核調用本機(C/C++),這樣的當你編寫調用攝像頭的代碼時,你的java代碼調用一些庫函數中的一些函數,稱爲媒體框架,它處理硬件併爲你打開攝像頭並使用它來操作,這裏有一些層次來解釋這個想法:
Android應用程序 | Android應用程序 | Java本地接口 | C/C++本地庫
餵我回任何組件不明顯你
那麼,一切都是JNI?或者只是我們想在我們的Android應用程序(NDK) – adcosta
10中使用的自定義c,C++庫,請參閱此圖 http://soulbuzz.net/wp-content/uploads/2010/05/android_native_service.png 該框架(API)用JNI編寫,處理使用NDK編寫的C/C++庫時,我充當庫部分並直接處理硬件 反饋給我的任何組件對您來說都不是顯而易見的。 –
如果你有C/C++庫,您可以與NDK使用它們:
看看這個視頻。 http://www.youtube.com/watch?v=G-36noTCaiA – Varun