Android Open Source - AndroidLibraryProject Upload To Server






From Project

Back to project page AndroidLibraryProject.

License

The source code is released under:

Apache License

If you think the Android project AndroidLibraryProject listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (c) 2013-14 by CDAC Chennai
 * /*from  w  w  w .j  ava 2 s.c  o  m*/
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *  
 * @File        UploadToServer
 * @Created:    01.01.2014
 * @author:     Prasenjit
 * Last Change: 22.08.2014 by Prasenjit
 */
package com.contextawareframework.uploadmanager;

import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
/**
 * File can be uploaded to external server using this class. User has to 
 * provide the file path which he / she wants to send to the external server 
 */
public class UploadToServer {
    
   // TextView messageText;
   // Button uploadButton;
    int serverResponseCode = 0;
    //ProgressDialog dialog = null;
       
    String upLoadServerUri = null;
    
    /**********  File Path *************/
    final String uploadFilePath = "";//"/mnt/sdcard/Notes/";
    final String uploadFileName = "contactbkpE.db";
    private Context localContext;
    public UploadToServer(Context contextFromMainApp)
    {
      localContext = contextFromMainApp;
    }
           
    public int uploadFile(String sourceFileUri,String ipaddresswithport) {
          
        
        //String fileName = uploadFilePath + "" + uploadFileName;
        String fileName = sourceFileUri;
        ipaddresswithport = "10.184.39.236:8090";
        upLoadServerUri = "http://"+ipaddresswithport+"/UploadFile/UploadServlet"; // Modification needed here as user may use his / her defined IP Appdress to upload data 
          HttpURLConnection conn = null;
          DataOutputStream dos = null;  
          String lineEnd = "\r\n";
          String twoHyphens = "--";
          String boundary = "*****";
          int bytesRead, bytesAvailable, bufferSize;
          byte[] buffer;
          int maxBufferSize = 100 * 1024 * 1024; 
          File sourceFile = new File(sourceFileUri); 
          
          if (!sourceFile.isFile()) {
            
            // dialog.dismiss(); 
             
             Log.e("uploadFile", "Source File not exist :"
                             +sourceFileUri);
             
//             runOnUiThread(new Runnable() {
//                 public void run() {
//                   messageText.setText("Source File not exist :"
//                       +uploadFilePath + "" + uploadFileName);
//                 }
//             }); 
             
             return 0;
           
          }
          else
          {
             try { 
               
                 // open a URL connection to the Servlet
               Log.d("Debug", "else part, upload ");
               Log.e("uploadFile", "Source File exist :"
                       +sourceFileUri);
                 FileInputStream fileInputStream = new FileInputStream(sourceFile);
                 URL url = new URL(upLoadServerUri);
                 
                 // Open a HTTP  connection to  the URL
                 conn = (HttpURLConnection) url.openConnection(); 
                 conn.setDoInput(true); // Allow Inputs
                 conn.setDoOutput(true); // Allow Outputs
                 conn.setUseCaches(false); // Don't use a Cached Copy
                 conn.setRequestMethod("POST");
                 conn.setRequestProperty("Connection", "Keep-Alive");
                 conn.setRequestProperty("ENCTYPE", "multipart/form-data");
                 conn.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + boundary);
                 conn.setRequestProperty("uploaded_file", fileName); 
                 conn.setRequestProperty("upload_File_Name", uploadFileName);
                 
                 dos = new DataOutputStream(conn.getOutputStream());
       
                 dos.writeBytes(twoHyphens + boundary + lineEnd); 
                 dos.writeBytes("Content-Disposition: form-data; name=\"uploaded_file\";filename=\""
                                       + fileName + "\"" + lineEnd);
                 
                 dos.writeBytes(lineEnd);
       
                 // create a buffer of  maximum size
                 bytesAvailable = fileInputStream.available(); 
       
                 bufferSize = Math.min(bytesAvailable, maxBufferSize);
                 buffer = new byte[bufferSize];
       
                 // read file and write it into form...
                 bytesRead = fileInputStream.read(buffer, 0, bufferSize);  
                   
                 while (bytesRead > 0) {
                   
                   dos.write(buffer, 0, bufferSize);
                   bytesAvailable = fileInputStream.available();
                   bufferSize = Math.min(bytesAvailable, maxBufferSize);
                   bytesRead = fileInputStream.read(buffer, 0, bufferSize);   
                   
                  }
       
                 // send multipart form data necesssary after file data...
                 dos.writeBytes(lineEnd);
                 dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
       
                 // Responses from the server (code and message)
                 serverResponseCode = conn.getResponseCode();
                 String serverResponseMessage = conn.getResponseMessage();
                  
                 Log.i("uploadFile", "HTTP Response is : " 
                     + serverResponseMessage + ": " + serverResponseCode);
                 
                 if(serverResponseCode == 200){
                   
//                     runOnUiThread(new Runnable() {
//                          public void run() {
//                            
//                            String msg = "File Upload Completed.\n\n See uploaded file here : \n\n"
//                                        +" http://10.0.2.2:32070/UploadFile/build/web/uploads"
//                                        +uploadFileName;
//                            
//                            messageText.setText(msg);
//                              Toast.makeText(UploadToServer.this, "File Upload Complete.", 
//                                       Toast.LENGTH_SHORT).show();
//                          }
//                      });      
                   Log.d("Debug","File transfer success");
                 }    
                 
                 //close the streams //
                 fileInputStream.close();
                 dos.flush();
                 dos.close();
                  
            } catch (MalformedURLException ex) {
              
                //dialog.dismiss();  
                ex.printStackTrace();
                
//                runOnUiThread(new Runnable() {
//                    public void run() {
//                      messageText.setText("MalformedURLException Exception : check script url.");
//                        Toast.makeText(UploadToServer.this, "MalformedURLException", Toast.LENGTH_SHORT).show();
//                    }
//                });
                
                Log.e("Upload file to server", "error: " + ex.getMessage(), ex);  
            } catch (Exception e) {
              
               // dialog.dismiss();  
                e.printStackTrace();
                
//                runOnUiThread(new Runnable() {
//                    public void run() {
//                      messageText.setText("Got Exception : see logcat ");
//                        Toast.makeText(UploadToServer.this, "Got Exception : see logcat ", 
//                            Toast.LENGTH_SHORT).show();
//                    }
//                });
                Log.e("Upload file to server Exception", "Exception : " 
                                             + e.getMessage(), e);  
            }
           // dialog.dismiss();       
            return serverResponseCode; 
            
           } // End else block 
         } 
}




Java Source Code List

.BatteryDbHelper.java
.Bluetooth.java
.Camera.java
.Gravity.java
.Humidity.java
.Microphone.java
.NFC.java
.Orientation.java
.Pressure.java
.SDCard.java
.Telephony.java
.Temparature.java
.USB.java
.Wifi.java
com.contextawareframework.backgroundservices.AccelerometerDataListener.java
com.contextawareframework.backgroundservices.BatteryDataService.java
com.contextawareframework.backgroundservices.CAFService.java
com.contextawareframework.backgroundservices.GPSTracker.java
com.contextawareframework.backgroundservices.GyroscopeDataListener.java
com.contextawareframework.backgroundservices.LightDataListener.java
com.contextawareframework.backgroundservices.LocationDataListener.java
com.contextawareframework.backgroundservices.MagnetometerDataListener.java
com.contextawareframework.backgroundservices.ProximityDataListener.java
com.contextawareframework.backgroundservices.SoundRecorder.java
com.contextawareframework.backgroundservices.Text2Speech.java
com.contextawareframework.contextawarefunctions.ContextAwareFunction.java
com.contextawareframework.controller.BatteryController.java
com.contextawareframework.controller.SensorController.java
com.contextawareframework.dataanalysis.AccelerometerDataAnalysis.java
com.contextawareframework.dataanalysis.ApplicationDataAnalysis.java
com.contextawareframework.dataanalysis.LocationDataAnalysis.java
com.contextawareframework.dbmanager.AccelerometerDbHelper.java
com.contextawareframework.dbmanager.ContextAwareSQLiteHelper.java
com.contextawareframework.dbmanager.GyroscopeDbHelper.java
com.contextawareframework.dbmanager.LightDbHelper.java
com.contextawareframework.dbmanager.LocationDbHelper.java
com.contextawareframework.dbmanager.MagnetometerDbHelper.java
com.contextawareframework.dbmanager.ProximityDbHelper.java
com.contextawareframework.dbmanager.UserInfoDbHelper.java
com.contextawareframework.exceptions.AccelerometerSensorException.java
com.contextawareframework.exceptions.BatteryException.java
com.contextawareframework.exceptions.CAFException.java
com.contextawareframework.exceptions.GyrometerSensorException.java
com.contextawareframework.exceptions.LightSensorException.java
com.contextawareframework.exceptions.LocationServiceException.java
com.contextawareframework.exceptions.MagnetometerSensorException.java
com.contextawareframework.exceptions.ProximitySensorException.java
com.contextawareframework.exceptions.SDCardException.java
com.contextawareframework.exceptions.SQLiteQueryException.java
com.contextawareframework.exceptions.SensorException.java
com.contextawareframework.globalvariable.CAFConfig.java
com.contextawareframework.notificationservice.IssueNotification.java
com.contextawareframework.os.Battery.java
com.contextawareframework.os.CAFPowerManager.java
com.contextawareframework.os.UserInfo.java
com.contextawareframework.probe.Probe.java
com.contextawareframework.probe.WfiProbe.java
com.contextawareframework.querymodule.BaseQueryClass.java
com.contextawareframework.querymodule.DeveloperInfo.java
com.contextawareframework.querymodule.UserIdentification.java
com.contextawareframework.security.FileEncryptor.java
com.contextawareframework.security.JavaDESEncryption.java
com.contextawareframework.sensorlistener.BatteryListener.java
com.contextawareframework.sensorlistener.SensorListener.java
com.contextawareframework.sensors.environmentsensors.Light.java
com.contextawareframework.sensors.motionsensors.Accelerometer.java
com.contextawareframework.sensors.motionsensors.Gyrometer.java
com.contextawareframework.sensors.positionsensors.LocationPojo.java
com.contextawareframework.sensors.positionsensors.Magnetometer.java
com.contextawareframework.sensors.positionsensors.Proximity.java
com.contextawareframework.uploadmanager.BackupDb.java
com.contextawareframework.uploadmanager.UploadScheduler.java
com.contextawareframework.uploadmanager.UploadToServer.java
com.contextawareframework.utility.CsvFileWriter.java
com.example.frameworktestcase.FrameworkFunctionalTestActivity.java
com.example.frameworktestcase.MainActivity.java
com.example.frameworktestcase.SecondActivity.java
com.example.frameworktestcase.Singleton.java