1. 程式人生 > >android選擇圖片或拍照圖片上傳到伺服器(包括上傳引數)

android選擇圖片或拍照圖片上傳到伺服器(包括上傳引數)

 最近要搞一個專案,需要上傳相簿和拍照的圖片,不負所望,終於完成了!  不過需要說明一下,其實網上很多教程拍照的圖片,都是縮圖不是很清晰,所以需要在呼叫照相機的時候,事先生成一個地址,用於標識拍照的圖片URI

具體上傳程式碼:

1.選擇圖片和上傳介面,包括上傳完成和異常的回撥監聽

  1. package com.spring.sky.image.upload;  
  2. import java.util.HashMap;  
  3. import java.util.Map;  
  4. import android.app.Activity;  
  5. import android.app.ProgressDialog;  
  6. import android.content.Intent;  
  7. import android.graphics.Bitmap;  
  8. import android.graphics.BitmapFactory;  
  9. import android.os.Bundle;  
  10. import android.os.Handler;  
  11. import android.os.Message;  
  12. import android.util.Log;  
  13. import android.view.View;  
  14. import android.view.View.OnClickListener;  
  15. import android.widget.Button;  
  16. import android.widget.ImageView;  
  17. import android.widget.ProgressBar;  
  18. import android.widget.TextView;  
  19. import android.widget.Toast;  
  20. import com.spring.sky.image.upload.network.UploadUtil;  
  21. import com.spring.sky.image.upload.network.UploadUtil.OnUploadProcessListener;  
  22. /** 
  23.  * @author spring sky<br> 
  24.  * Email :[email protected]<br> 
  25.  * QQ: 840950105<br> 
  26.  * 說明:主要用於選擇檔案和上傳檔案操作 
  27.  */
  28. publicclass MainActivity extends Activity implements OnClickListener,OnUploadProcessListener{  
  29.     privatestaticfinal String TAG = "uploadImage";  
  30.     /** 
  31.      * 去上傳檔案 
  32.      */
  33.     protectedstaticfinalint TO_UPLOAD_FILE = 1;    
  34.     /** 
  35.      * 上傳檔案響應 
  36.      */
  37.     protectedstaticfinalint UPLOAD_FILE_DONE = 2;  //
  38.     /** 
  39.      * 選擇檔案 
  40.      */
  41.     publicstaticfinalint TO_SELECT_PHOTO = 3;  
  42.     /** 
  43.      * 上傳初始化 
  44.      */
  45.     privatestaticfinalint UPLOAD_INIT_PROCESS = 4;  
  46.     /** 
  47.      * 上傳中 
  48.      */
  49.     privatestaticfinalint UPLOAD_IN_PROCESS = 5;  
  50.     /*** 
  51.      * 這裡的這個URL是我伺服器的javaEE環境URL 
  52.      */
  53.     privatestatic String requestURL = "http://192.168.10.160:8080/fileUpload/p/file!upload";  
  54.     private Button selectButton,uploadButton;  
  55.     private ImageView imageView;  
  56.     private TextView uploadImageResult;  
  57.     private ProgressBar progressBar;  
  58.     private String picPath = null;  
  59.     private ProgressDialog progressDialog;  
  60.     /** Called when the activity is first created. */
  61.     @Override
  62.     publicvoid onCreate(Bundle savedInstanceState) {  
  63.         super.onCreate(savedInstanceState);  
  64.         setContentView(R.layout.main);  
  65.         initView();  
  66.     }  
  67.     /** 
  68.      * 初始化資料 
  69.      */
  70.     privatevoid initView() {  
  71.         selectButton = (Button) this.findViewById(R.id.selectImage);  
  72.         uploadButton = (Button) this.findViewById(R.id.uploadImage);  
  73.         selectButton.setOnClickListener(this);  
  74.         uploadButton.setOnClickListener(this);  
  75.         imageView = (ImageView) this.findViewById(R.id.imageView);  
  76.         uploadImageResult = (TextView) findViewById(R.id.uploadImageResult);  
  77.         progressDialog = new ProgressDialog(this);  
  78.         progressBar = (ProgressBar) findViewById(R.id.progressBar1);  
  79.     }  
  80.     @Override
  81.     publicvoid onClick(View v) {  
  82.         switch (v.getId()) {  
  83.         case R.id.selectImage:  
  84.             Intent intent = new Intent(this,SelectPicActivity.class);  
  85.             startActivityForResult(intent, TO_SELECT_PHOTO);  
  86.             break;  
  87.         case R.id.uploadImage:  
  88.             if(picPath!=null)  
  89.             {  
  90.                 handler.sendEmptyMessage(TO_UPLOAD_FILE);  
  91.             }else{  
  92.                 Toast.makeText(this"上傳的檔案路徑出錯", Toast.LENGTH_LONG).show();  
  93.             }  
  94.             break;  
  95.         default:  
  96.             break;  
  97.         }  
  98.     }  
  99.     @Override
  100.     protectedvoid onActivityResult(int requestCode, int resultCode, Intent data) {  
  101.         if(resultCode==Activity.RESULT_OK && requestCode == TO_SELECT_PHOTO)  
  102. 相關推薦

    android選擇圖片拍照圖片伺服器(包括引數)

     最近要搞一個專案,需要上傳相簿和拍照的圖片,不負所望,終於完成了!  不過需要說明一下,其實網上很多教程拍照的圖片,都是縮圖不是很清晰,所以需要在呼叫照相機的時候,事先生成一個地址,用於標識拍照的圖片URI 具體上傳程式碼: 1.選擇圖片和上傳介面,包括上傳完成和異常的回撥監聽

    獲取本地圖片拍照,進行頭像圖片的工具類

    1. 圖片的獲取,裁剪,壓縮類(可以作為主功能程式碼在Activity中)    protected static final int CHOOSE_PICTURE = 0;    protected static final int TAKE_PICTURE = 1;   

    Uri android 選擇圖片拍照時旋轉了90度問題

    由於前面的博文中忽略了點內容,所以在這裡補上,下面內容就是解決拍照或者選擇圖片顯示的時候圖片旋轉了90度或者其他度數問題,以便照片可以正面顯示:具體如下: 首先直接看上面博文下的拍完照或者選完圖後處理部分: Java程式碼   @Override      

    利用matlab將視訊分幀成圖片圖片轉成視訊

    前幾日因為寫論文有需要,我必須從視訊裡面提取圖片。n年前,小編當時還是一名小菜之時(雖然現在也還是菜鳥一個),那時總是要到處找一些軟體來實現分幀,但是現在視訊太大了,軟體不能夠一下全部將視訊圖片轉換,而且轉換完所需記憶體太大。加上小編這人總是喜歡玩得high點,

    最全選擇本地圖片拍照,超簡單解決獲取不到圖片問題

    相信很多朋友做上傳圖片的時候都苦惱過獲取不到圖片,本篇部落格解決你的煩惱 這裡是選擇本地圖片 try { // 選擇本地檔案 Intent fileIntent = new Intent(

    Android開發:仿微信和QQ空間發說說相簿讀取、拍照圖片裁剪和圖片伺服器等功能的實現

    第一步:新增依賴包: dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.2.1' compile project('

    Android開發:相簿讀取、拍照圖片裁剪和圖片伺服器等功能的實現

    修改日誌 2016.05.12 之前的程式存在兩個問題: 1)從相簿選擇的圖片如果比較大,會失敗; 2)無法拍照上傳照片。 修改了這兩個bug,之前的程式碼已經被覆蓋掉了,留著太誤人子弟了。同時修改了一下標題和文章的文字描述 拍照示意 相簿示

    Android 呼叫本地相機拍照圖片

    1、呼叫本地相機拍照並上傳圖片 Intent cameraIntent = new Intent( "android.media.action.IMAGE_CAPTURE"); startActivityForResult(cameraIntent, m

    Android 7.0實現拍照、獲取相簿圖片頭像功能

    對網上關於Android7.0的上傳頭像進行整理 1.新增許可權管理。內容例如以下: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-pe

    Android簡單實現將手機圖片到server中

    sdk etc mov 創建 ast bmi 以及 lena ews 在本例中。將會簡單的實現安卓手機將圖片上傳到server中。本例使用到了 server端:PHP+APACHE 客戶端:JAVA 先簡單實現一下server端的上傳並測試上傳

    微信小程序 從本地相冊選擇圖片使用相機拍照chooseImage()和預覽圖片previewImage()

    pfile temp image 相冊選擇 bubuko tar gpo ndt res 要實現的效果如圖所示 wxml: <view class=‘suggest_img‘>請提供相關問題的截圖或照片</view> <view c

    Android中呼叫攝像頭拍照儲存,並在相簿中選擇圖片顯示

    我的配置是: android手機版本是7.0 android studio是3.1 android平臺是9.0 我的測試都是在真機上進行的。 首先來看程式碼: package com.example.sunshunli.cameraalbumtest; import a

    谷歌瀏覽器圖片任何檔案都卡死

    現象 使用谷歌瀏覽器正常上傳頭像或者上傳檔案,整個瀏覽器卡死不動了,只能在工作管理員殺死程序。   導致原因 網上找了一些文章,有說是谷歌瀏覽器外掛,有說是輸入法。 解決我的問題的是改一下輸入法就ok了。   但是這個問題我老早就改過了。好使了一陣子,

    layui-圖片,可使用選擇圖片->圖片,預覽圖片,刪除圖片(轉載)

    原文地址:https://gitee.com/AMortal/codes/qt8m6zk30u1g4evr95jhx13 <!DOCTYPE html> <html> <head> <meta

    微信公眾號開發之選擇圖片圖片,下載圖片,顯示圖片

    function clickImg(that){ wx.chooseImage({ count: 1, needResult: 1, sizeType: ['original', 'compressed'], // 可以指定是原圖還是壓

    圖片檔案伺服器伺服器讀取(圖片可根據路徑src回顯展示,從伺服器讀出來)

    不需要配置虛擬路徑,存的時候資料庫裡只存了圖片的名稱(隨機重新命名的形式),存在指定伺服器上,取的時候也是根據圖片名稱從伺服器上找到,並用OutputStream 讀出來 前臺頁面(用的bootstrap): html程式碼(可回顯,回顯的時候也是去後臺根據路徑查詢到圖片):

    Android從相簿中選取圖片到阿里雲OSS

        在開發APP軟體中,boss突然提出想在軟體中新增一個多張照片上傳的功能,作為菜鳥的我,琢磨了兩天,才弄出來,今天特地貼出來。本篇部落格主要介紹的是將本地圖片上傳到伺服器的方法技巧。主要技術點是: 一、運用第三方可以從相簿中選取多張圖片。 二、將圖片

    解決安卓手機圖片沒有拍照選項,修改後又出現的安卓手機能載入相簿和攝像頭但蘋果手機不能載入相簿的問題

    <input type="file" id="choose" accept="image/*" multiple> 上面是原始碼,下面修改後可以讓安卓手機顯示攝像頭 <inp

    android從相簿選擇圖片拍照選擇圖片

    在android開發中選擇圖片的方式大致可以分類兩種,一種是從手機相簿獲取,另外一種則是通過呼叫手機拍照獲得 手機相簿中獲取,這種方式需要讀取儲存卡的許可權 <uses-permission android:name="android.permission.REA

    Ueditor 1.4.3 單獨呼叫圖片,檔案功能

    第一步, 引入檔案 <script src="ueditor/ueditor.config.js" type="text/javascript" charset="utf-8"></script> <script src="u