[英]Connecting two Android phones to transfer data between them over WIFI
[英]How to Transfer files between two Android phones using Wifi Direct to Download directory of Android phone and not to Package directory
我代碼中的以下行將* .apk文件傳輸到我的包目錄中。
final File f = new File(Environment.getExternalStorageDirectory() + "/"
+ context.getPackageName() + "/wifip2pshared-" + System.currentTimeMillis()
+ ".apk");
如何進行修改,以便每次將其下載/傳輸到android手機的下載目錄中。 我相信Downloads目錄是每個Android手機中的默認目錄。
目前,它已轉移到軟件包目錄,例如“ com.example.android.wifidirect”
我根據Manish解決方案進行的編輯:
@Override
protected String doInBackground(Void... params) {
try {
ServerSocket serverSocket = new ServerSocket(8988);
Log.d(WiFiDirectActivity.TAG, "Server: Socket opened");
Socket client = serverSocket.accept();
Log.d(WiFiDirectActivity.TAG, "Server: connection done");
String extStorageDirectory = Environment
.getExternalStorageDirectory().toString();
File folder = new File(extStorageDirectory, "Download");
File file = new File(folder,"wifip2pshared-" + System.currentTimeMillis()+ ".apk");
try {
file.createNewFile();
} catch (IOException e1) {
e1.printStackTrace();
}
Log.d(WiFiDirectActivity.TAG, "server: copying files " + file.toString());
InputStream inputstream = client.getInputStream();
copyFile(inputstream, new FileOutputStream(file));
serverSocket.close();
return file.getAbsolutePath();
} catch (IOException e) {
Log.e(WiFiDirectActivity.TAG, e.getMessage());
return null;
}
}
請嘗試此代碼-
File file = new File(Environment.getExternalStorageDirectory()
.getAbsolutePath() + "/Download/wifip2pshared-" + System.currentTimeMillis()
+ ".apk");
編輯:您也可以嘗試使用此代碼,希望它每次都有助於創建不同的名稱。
String extStorageDirectory = Environment
.getExternalStorageDirectory().toString();
File folder = new File(extStorageDirectory, "Download");
File file = new File(folder, wifip2pshared-" + System.currentTimeMillis()+ ".apk");
try {
file.createNewFile();
} catch (IOException e1) {
e1.printStackTrace();
}
編輯根據您的特定要求。
protected String doInBackground(Void... params) {
try {
ServerSocket serverSocket = new ServerSocket(8988);
Log.d(WiFiDirectActivity.TAG, "Server: Socket opened");
Socket client = serverSocket.accept();
Log.d(WiFiDirectActivity.TAG, "Server: connection done");
String extStorageDirectory = Environment.getExternalStorageDirectory().toString();
File folder = new File(extStorageDirectory, "Download");
File file = new File(folder,"wifixyz-" + System.currentTimeMillis()+".apk");
try {
file.createNewFile();
} catch (IOException e1) {
e1.printStackTrace();
}
Log.d(WiFiDirectActivity.TAG, "server: copying files " + file.toString());
InputStream inputstream = client.getInputStream();
copyFile(inputstream, new FileOutputStream(file));
serverSocket.close();
return file.getAbsolutePath();
} catch (IOException e) {
Log.e(WiFiDirectActivity.TAG, e.getMessage());
return null;
}
}
謝謝!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.