當我運行android Runtime.getRuntime().exec
方法時出現問題。如何將環境變量添加到android Runtime.getRuntime()。exec命令?
我有一個本機二進制文件在Android上運行,我用java方法Runtime.getRuntime().exec
啓動它。但是運行這個本地二進制文件需要添加一個環境變量。當我檢查了環境變量與命令
envSetCmd = {"sh", "-c", "export LD_LIBRARY_PATH="+excBinFilepath+":$LD_LIBRARY_PATH"}.
它不工作: sh
,-c
,echo $LD_LIBRARY_PATH
所以我執行此命令。
我認爲原因是當我設置環境變量時,我啓動了一個shell,當我用命令「echo」檢查它時,另一個shell啓動了。所以環境變量在我檢查的shell中不起作用。
我認爲有兩種方法可以解決這個問題。一個是在一個shell中運行兩個命令。所以我試圖用命令:
{"sh", "-c", "export LD_LIBRARY_PATH="+excBinFilepath+":$LD_LIBRARY_PATH", "-c", "echo $LD_LIBRARY_PATH"}.
不幸的是它是非法的。另一個是我將環境變量添加到android用戶啓動文件。我試圖迴應$PATH
,我看到/system/bin/
和其他路徑在android的啓動時加載。
所以我認爲必須有一個文件,就像linux中的~/.bashrc
那樣可以設置用戶的環境。
任何人都可以給我一些關於我上面列出的方式的線索?順便說一句,我不應該根植電話!
歡迎SO!由於您是新手,您可能需要查看此[鏈接](http://meta.stackexchange.com/a/5235/187716)。 – fferri