爲了我自己的目的,我想將其他應用程序的dex文件發送到遠程服務器並獲得答案。通過發佈請求發送.dex文件android studio
我已經使用了我在這裏找到的答案。我試着首先創建一個簡單的例子,只是連接到服務器並上傳dex文件。到目前爲止,我還沒有設法從其他應用程序中提取dex,所以我想使用我已有的dex文件。 正如我讀過的,不應該將常見文件存儲到「/ res/raw」或「assets」 我嘗試了許多方法將其作爲文件加載,但它們都沒有工作。我在所有情況下使用的路徑都是右鍵單擊文件 - >複製參考。
創建res文件夾下的/生
File f = new File("res/raw/filename.dex");
下/應用
File f = new File("filename.dex");
創建資源文件夾中創建一個新的資產文件夾下/主
File f = new File("main/assets/filename.dex");
等等。
我好不容易纔這樣做的唯一方法是使用的InputStream
Inputstream in = getResources().openRawResources(R.raw.filename_without_dex)
,但我無法施展它的文件,所以我放棄了這個solution.I想把它作爲一個文件導致以下POST請求必須是multipart/form。
在java中,「加載」文件的方式很簡單。爲什麼不在android中?
您不能打開它作爲一個文件,因爲它不是作爲文件系統中的文件存在。而你問題的最後部分是沒有意義的:「我想把它作爲一個文件因爲下面的POST請求必須是多部分/表單。」沒有理由通過讀入InputStream中的數據來做到這一點。 – JesusFreke
@JesusFreke我明白你的觀點。我試過這種方式[鏈接](https://developer.android.com/reference/java/net/HttpURLConnection.html)它使用InputStream,我沒有設法得到它的工作。你能舉一個正確使用InputStream到getOutputStream()的例子嗎? –
@JesusFreke我問的原因是,我發現很多使用'MultipartEntityBuilder'創建多部分/表單數據請求的例子,它需要'File',但沒有一個使用'HttpURLConnection'和'InputStream'創建多部分POST請求。類 –