2014-02-02 3 views
0

Мне нужно изменить мой класс Java, чтобы я мог успешно загрузить файл по URL-адресу внутри.
Я хочу использовать встроенный механизм загрузки веб-браузера.Загрузите файл в URL-адрес?

Это то, что я сделал до сих пор: -

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.webkit.WebView; 

public class MainActivity extends Activity { 

    WebView web; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     web=(WebView)findViewById(R.id.web); 
     web.getSettings().setJavaScriptEnabled(true); 
     web.loadUrl("http://encodable.com/uploaddemo/"); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

} 
+0

Что означают загрузку через родной Java? Вы хотите использовать POST/PUT для URL-адреса http? Почему бы не сделать это через Java, а не в браузере. Из соображений безопасности браузер имеет все виды защиты вокруг функции загрузки. –

+2

StackOverflow предназначен для программирования вопросов, а не требований. Вы можете нанять кого-то, кому вы можете заказать такие заказы. В противном случае, пожалуйста, отредактируйте это сообщение, чтобы задать конкретные вопросы о проблемах, с которыми вы сталкиваетесь. – CommonsWare

+0

@CommonsWare Отредактировано, извините за мой плохой язык. – user3259926

ответ

2

Используйте этот класс, чтобы загрузить файл ... надеюсь, что это может быть полезным для вас

public class TryFile { 
    public static void main(String[] ar) 
      throws HttpException, IOException, URISyntaxException { 
     TryFile t = new TryFile(); 
     t.method(); 
    } 
    public void method() throws HttpException, IOException, URISyntaxException { 
     String url = "http://encodable.com/uploaddemo/"; 
     String fileName = ""; //file name to be uploaded 
     HttpClient httpclient = new DefaultHttpClient(); 
     HttpPost httppost = new HttpPost(url); 
     FileBody fileContent = new FiSystem.out.println("hello"); 
     StringBody comment = new StringBody("Filename: " + fileName); 
     MultipartEntity reqEntity = new MultipartEntity(); 
     reqEntity.addPart("file", fileContent); 
     httppost.setEntity(reqEntity); 

     HttpResponse response = httpclient.execute(httppost); 
     HttpEntity resEntity = response.getEntity(); 
    } 
} 
1

Я считаю, что вы собираетесь сделать, это не то, что Android платформы ожидает от вас, так или иначе. Вы должны загружать свои материалы с помощью Android API. Вы можете найти полезную информацию в этой теме: Android: upload file with filling out POST body together или другие подобные.

Смежные вопросы