我有一個程序的C源代碼,該程序根據用戶在shell中給出的參數生成圖像。它需要參數,然後生成位圖圖像並將其保存到本地磁盤。我想修改它,以便我可以從Java調用圖像生成函數,並以某種方式訪問生成的bmp文件。我可以在Android上調用一個從Java內部生成圖像的C程序嗎?
如何訪問生成的圖像文件? C程序能保存到某種類型的android本地磁盤嗎?我可以將圖像文件存入內存中的Java對象嗎?
我有一個程序的C源代碼,該程序根據用戶在shell中給出的參數生成圖像。它需要參數,然後生成位圖圖像並將其保存到本地磁盤。我想修改它,以便我可以從Java調用圖像生成函數,並以某種方式訪問生成的bmp文件。我可以在Android上調用一個從Java內部生成圖像的C程序嗎?
如何訪問生成的圖像文件? C程序能保存到某種類型的android本地磁盤嗎?我可以將圖像文件存入內存中的Java對象嗎?
您可以在Android上使用此類運行程序。 http://developer.android.com/reference/java/lang/Runtime.html
您想使用版本Runtime.exec
的其中一個版本。您需要使用NDK編譯您的C程序並將其包含在您的APK中。
是的,但除非存在許可問題,否則強烈傾向於將程序編譯爲庫並從JNI包裝中調用它,而不是從必須明確部署的可執行文件執行新進程。 –
@ChrisStratton問題標題爲「我可以調用C程序...」。不是「你能給我一個解決我的問題的強烈偏好的方式嗎?」 –
請注意「我想**修改**以便我可以**調用** Java的圖像生成函數」這個問題的措辭(強調添加),並告訴我如果您認爲聽起來更像啓動一個可執行文件,或調用一個函數?另外,即使啓動一個可執行文件的目的是,我們也沒有限制指出更好的方法,特別是發佈* comment *而不是* answer *時。 –
Android提供應用私人文件配置單元,請參閱http://developer.android.com/guide/topics/data/data-storage.html#filesInternal。你得到它在Java中的完整路徑Context.getFilesDir(),並且你從can從本地代碼中找到這條路徑。
是的,android有一個文件系統,請參閱開發人員文檔。 –