A. 安卓手機oa怎麼直接拍照上傳附件
點手機輸入法上面那個圖片圖標,然後在圖片上傳選擇界面點拍照,然後拍照,點選拍好的這張圖片點完成就可以上傳了。
B. 如何調用android的拍照或本地相冊選取,然後再實現相片上傳伺服器
首先是拍照:使用Intent即可,
[java] view plainprint?
01.final String start = Environment.getExternalStorageState();
02.private static final String PHOTOPATH = "/photo/";
03.
04.if(start.equals(Environment.MEDIA_MOUNTED)){
05.Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
06.File file = new File(Environment.getExternalStorageDirectory()+PHOTOPATH);
07.if(!file.exists()){
08.file.mkdirs();
09.}
10.tempphontname = System.currentTimeMillis()+".jpg";
11.buffer.append(Environment.getExternalStorageDirectory()+PHOTOPATH).append(tempphontname);
12.intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(buffer.toString())));
13.startActivityForResult(intent, 1);
14.}
final String start = Environment.getExternalStorageState();
private static final String PHOTOPATH = "/photo/";
if(start.equals(Environment.MEDIA_MOUNTED)){
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File file = new File(Environment.getExternalStorageDirectory()+PHOTOPATH);
if(!file.exists()){
file.mkdirs();
}
tempphontname = System.currentTimeMillis()+".jpg";
buffer.append(Environment.getExternalStorageDirectory()+PHOTOPATH).append(tempphontname);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(buffer.toString())));
startActivityForResult(intent, 1);
}
其次是從本地相冊選:依舊是Intent.
如下代碼:
[java] view plainprint?
01.if(start.equals(Environment.MEDIA_MOUNTED)){
02. Intent getImage = new Intent(Intent.ACTION_GET_CONTENT);
03. getImage.addCategory(Intent.CATEGORY_OPENABLE);
04. getImage.setType("image/jpeg");
05. startActivityForResult(getImage, 0);
06.}
if(start.equals(Environment.MEDIA_MOUNTED)){
Intent getImage = new Intent(Intent.ACTION_GET_CONTENT);
getImage.addCategory(Intent.CATEGORY_OPENABLE);
getImage.setType("image/jpeg");
startActivityForResult(getImage, 0);
}
接下來是主要的:因為調用完系統的方法後,回返回到回調方法onActivityResult(int, int, Intent)中,
在裡面進行主要的照片上傳伺服器的操作,
見代碼:
[java] view plainprint?
01.@Override
02. protected void onActivityResult(int requestCode, int resultCode, Intent data) {
03. ContentResolver resolver = getContentResolver();
04. if(requestCode==1)//
05. {
06. if(resultCode==Activity.RESULT_OK)
07. {
08. if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))
09. {
10.ew Thread(new Runnable()
11. {
12. @Override
13. public void run() {
14.//進行上傳操作
15.}
16.}.start();
轉載
C. android 拍照後直接上傳怎麼實現
拍照上傳的源代碼已經上傳, 拍照或者選擇圖片進行上傳, 還帶上傳進度條呢, 下載直接拿去用吧。
D. android如何實現用拍照上傳頭像
拍照功能可以用第三方框架Picasso或者LuckSiege的那個PictureSelector
,集成很方便,上傳的話,和其他文件上傳是一個道理,就http上傳到你的伺服器就可以了
E. android拍照+文字上傳到.net或webservice怎麼做
方法/步驟1
在eclipse上安裝好android開發環境,android調用webservice使用ksoap,本經驗使用的是ksoap2-android-assembly-2.6.4-jar-with-dependencies.jar
2
AndroidManifest.xml中需添加相應的許可權,例子:
<?xmlversion="1.0"encoding="utf-8"?>
<manifestxmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.camera"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="9"/>
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permissionandroid:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permissionandroid:name="android.permission.INTERNET"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name="com.example.camera.MainActivity"
android:label="@string/app_name">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
3
activity_main.xml文件代碼
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<Button
android:id="@+id/button"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="點擊啟動相機"/>
<Button
android:id="@+id/savePic"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="保存圖片到伺服器"/>
<TextView
android:id="@+id/textView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<ImageView
android:id="@+id/imageView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#999999"/>
</LinearLayout>
4
MainActivity具體代碼
packagecom.example.camera;
importjava.io.ByteArrayOutputStream;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.IOException;
importorg.kobjects.base64.Base64;
importorg.ksoap2.SoapEnvelope;
importorg.ksoap2.serialization.SoapObject;
importorg.ksoap2.serialization.SoapSerializationEnvelope;
importorg.ksoap2.transport.HttpTransportSE;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.graphics.Bitmap;
importandroid.os.Bundle;
importandroid.os.Environment;
importandroid.provider.MediaStore;
importandroid.util.Log;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.ImageView;
importandroid.widget.TextView;
{
TextViewtv=null;
StringfileName="/sdcard/myImage/my.jpg";//圖片保存sd地址
Stringnamespace="http://webservice.service.com";//命名空間
Stringurl="http://192.168.200.19:8080/Web/webservices/Portal";//對應的url
StringmethodName="uploadImage";//webservice方法
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv=(TextView)findViewById(R.id.textView);
//啟用相機按鈕
Buttonbutton=(Button)findViewById(R.id.button);
button.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewv){
Intentintent=newIntent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent,1);
}
});
//保存圖片到伺服器按鈕(通過webservice實現)
ButtonsaveButton=(Button)findViewById(R.id.savePic);
saveButton.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewv){
testUpload();
}
});
}
/**
*拍照完成後,回掉的方法
*/
@Override
protectedvoidonActivityResult(intrequestCode,intresultCode,Intentdata){
super.onActivityResult(requestCode,resultCode,data);
if(resultCode==Activity.RESULT_OK){
StringsdStatus=Environment.getExternalStorageState();
if(!sdStatus.equals(Environment.MEDIA_MOUNTED)){//檢測sd是否可用
Log.v("TestFile",
"SDcardisnotavaiable/writeablerightnow.");
return;
}
Bundlebundle=data.getExtras();
Bitmapbitmap=(Bitmap)bundle.get("data");//獲取相機返回的數據,並轉換為Bitmap圖片格式
FileOutputStreamb=null;
Filefile=newFile("/sdcard/myImage/");
file.mkdirs();//創建文件夾
try{
b=newFileOutputStream(fileName);
bitmap.compress(Bitmap.CompressFormat.JPEG,100,b);//把數據寫入文件
}catch(FileNotFoundExceptione){
e.printStackTrace();
}finally{
try{
b.flush();
b.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
((ImageView)findViewById(R.id.imageView)).setImageBitmap(bitmap);//將圖片顯示在ImageView里
}
}
/**
*圖片上傳方法
*
*1.把圖片信息通過Base64轉換成字元串
*2.調用connectWebService方法實現上傳
*/
privatevoidtestUpload(){
try{
FileInputStreamfis=newFileInputStream(fileName);
ByteArrayOutputStreambaos=newByteArrayOutputStream();
byte[]buffer=newbyte[1024];
intcount=0;
while((count=fis.read(buffer))>=0){
baos.write(buffer,0,count);
}
StringuploadBuffer=newString(Base64.encode(baos.toByteArray()));//進行Base64編碼
connectWebService(uploadBuffer);
Log.i("connectWebService","start");
fis.close();
}catch(Exceptione){
e.printStackTrace();
}
}
/**
*通過webservice實現圖片上傳
*
*@paramimageBuffer
*/
privatevoidconnectWebService(StringimageBuffer){
//以下就是調用過程了,不明白的話請看相關webservice文檔
SoapObjectsoapObject=newSoapObject(namespace,methodName);
soapObject.addProperty("filename","my.jpg");//參數1圖片名
soapObject.addProperty("image",imageBuffer);//參數2圖片字元串
=newSoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet=false;
envelope.setOutputSoapObject(soapObject);
=newHttpTransportSE(url);
try{
httpTranstation.call(namespace,envelope);
Objectresult=envelope.getResponse();
Log.i("connectWebService",result.toString());
tv.setText(result.toString());
}catch(Exceptione){
e.printStackTrace();
tv.setText(e.getStackTrace().toString());
}
}
}
5
服務端webservice方法(cxf)
publicStringuploadImage(Stringfilename,Stringimage){
FileOutputStreamfos=null;
try{
StringtoDir="D:\work\image";//存儲路徑
byte[]buffer=newBASE64Decoder().decodeBuffer(image);//對android傳過來的圖片字元串進行解碼
FiledestDir=newFile(toDir);
if(!destDir.exists()){
destDir.mkdir();
}
fos=newFileOutputStream(newFile(destDir,filename));//保存圖片
fos.write(buffer);
fos.flush();
fos.close();
return"上傳圖片成功!"+"圖片路徑為:"+toDir;
}catch(Exceptione){
e.printStackTrace();
}
return"上傳圖片失敗!";
}
操作步驟
(1)點擊「點擊啟動相機」按鈕,回到拍照模式下,拍照完成,回到初始界面,顯示剛拍的照片
(2)點擊「保存照片到伺服器」按鈕,通過webservice把照片保存到伺服器中,TextView顯示保存信息。
F. 安卓手機相片怎麼傳到電腦上
手機幾乎是人人都必備的工具,而在智能手機已經普及的今天,安卓手機與電腦的文件互傳是極為常見的操作。下面介紹兩種常用的安卓手機把照片或文件傳到電腦里的方法,有需要的朋友可以參考借鑒。
直接傳輸法
1/6
安卓手機可以通過數據線(即「USB線」)直接和電腦進行數據傳輸。首先用數據線連接手機和電腦;
2/6
在彈出的對話框中選擇「是,訪問數據」;
3/6
雙擊打開「計算機」;
4/6
找到「便攜設備」下的手機設備圖標,(這里以「華為mate9」為例)雙擊打開;
5/6
雙擊打開「內部儲存」;
6/6
在「內部儲存」中找到相應文件或圖片,將其復制進電腦中即可。
軟體傳輸法
1/9
許多軟體支持手機電腦文件互傳,下面以QQ為例介紹軟體傳輸法,具體步驟如下:
2/9
打開電腦版QQ,登錄賬號;
3/9
打開手機QQ,在手機QQ中打開「我的電腦」對話框;
4/9
點擊輸入框,在彈出的輸入菜單中點擊「圖片」圖標或「文件」圖標來傳輸圖片或文件;
5/9
傳輸圖片時,點擊想要傳輸的圖片右上角選定圖片或文件,再點擊「發送」即可
6/9
如果是需要從手機上把文件或者小視頻傳電腦上,則直接選擇相應的文件類型,在文件右上方打鉤選定再點擊「發送」即可
7/9
圖片或文件成功發送至電腦;
8/9
打開QQ電腦版中的「我的安卓手機」對話框;
9/9
選定目標文件與照片,保存在電腦上即可。
G. 安卓拍照上傳只能拍一次
系統bug。安卓是一個手機系統,其拍照上傳只能拍一次是系統bug導致的。只需要將手機關機重新啟動即可。
H. 天翼雲如何通過Android客戶端進行拍照上傳
1)點擊「拍照上傳」按鈕進入照片拍攝狀態;2)完成拍攝後系統提示「是否要上傳」,點擊「上傳」按鈕確定上傳;3)完成上傳後,照片即可通過各種終端進行瀏覽。了解更多服務優惠點擊下方的「官方網址」客服51為你解答。
I. android 拍照上傳
1、拍照時先傳Uri
2、拍完後 將原有Uri寫入到沙盒裡 最終轉成File
7.0以下創建路徑方法
J. android開發怎麼實現拍照上傳
這個其實是一個很泛的問題
我大致說下我的思路:
用startactivityforresult方法調用系統的攝像頭,隨便拍張照片,把照片保存在某一目錄下面
點擊完成後,會在onactivityresult中,根據目錄的地址,再把這目錄下面的資源得轉換為文件,接著通過介面進行提交。提交成功後,後台返回一個URL。
通過這個URL,運用imageload(第三方插件)顯示圖片