我想送我采取了与我的相机到我的服务器的照片,通过FTP。 我已经编码负责拍照的程序的一部分。 但下一步是将图片发送到我的FTP服务器。 我将如何去这样做呢?
package de.android.datenuebertragung;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import android.hardware.Camera;
import android.hardware.Camera.PictureCallback;
import android.hardware.Camera.ShutterCallback;
import android.os.Environment;
import android.util.Log;
public class KameraCallbacks implements ShutterCallback, PictureCallback {
private static final String TAG = KameraCallbacks.class.getSimpleName();
public void onShutter() {
Log.d(TAG, "onShutter()");
}
public void onPictureTaken(byte[] data, Camera camera) {
Log.d(TAG, "onPictureTaken()");
// In welchem Verzeichnis soll die Datei abgelegt werden?
File dir = Environment
.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
// ggf. Verzeichnisse anlegen
dir.mkdirs();
// Name der Datei
File file = new File(dir, Long.toString(System.currentTimeMillis())
+ ".jpg");
FileOutputStream fos = null;
BufferedOutputStream bos = null;
// Datei gepuffert schreiben
try {
fos = new FileOutputStream(file);
bos = new BufferedOutputStream(fos);
bos.write(data);
} catch (IOException e) {
Log.e(TAG, "onPictureTaken()", e);
} finally {
// Ströme schließen - etwaige Exceptions ignorieren
if (bos != null) {
try {
bos.close();
} catch (IOException e) {
}
}
if (fos != null) {
try {
fos.close();
} catch (IOException e) {
}
}
// Live-Vorschau neu starten
camera.startPreview();
}
}
}
下面是一些代码,我从问题发现你如何在Android应用中上传图片到FTP服务器? 。 凡在我的节目,我会把下面的代码?
SimpleFTP ftp = new SimpleFTP();
// Connect to an FTP server on port 21.
ftp.connect("server address", 21, "username", "pwd");
// Set binary mode.
ftp.bin();
// Change to a new working directory on the FTP server.
ftp.cwd("path");
// Upload some files.
ftp.stor(new File("your-file-path"));
// Quit from the FTP server.
ftp.disconnect();
或者是有,我不知道我的图片上传到FTP服务器的一种更好的方式。