Как скачать.apk файлы из одного приложения Android при нажатии кнопки?

У меня есть Android-приложение, в котором есть кнопка, которая позволяет загружать файл .apk с веб-сервера. Существует веб-сайт, размещенный в Интернете, и файлы.apk загружаются на этот сайт, говорят, что веб-сайт: http://xxx и.apk файлы хранятся внутри папки, например, Games/Apk/demo.apk. Теперь я хочу загрузить этот .apk файл из своего приложения, скажем, MYAPP1, есть кнопка и onclick. Я хочу загрузить файл.apk с сервера на свое устройство. SD-карта Как я могу это сделать? I tried giving http://xxx/Games/Apk/myApp.apk но это не сработает. Можете ли вы, пожалуйста, рассказать мне, как загрузить файл.apk. что еще я должен делать на своем веб-сайте и в своем приложении? Заранее спасибо... :)

2 ответа

Мы можем внедрить браузер в приложение, которое может загрузить его с сервера... предположим, что у нас есть webcontent.xml следующим образом

предположим, что наша интерактивность такова:

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

public class WebActivity extends Activity {

 private WebView webView;

 public void onCreate(Bundle savedInstanceState) {

 super.onCreate(savedInstanceState);
 setContentView(R.layout.webcontent);

 webView = (WebView) findViewById(R.id.webView);

 webView.getSettings().setJavaScriptEnabled(true);

 webView.loadUrl("http://www.apkdwonloadlink.com");


 }

}

мы можем сделать это из Mainactivity следующим образом

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

 private Button button;

 public void onCreate(Bundle savedInstanceState) {
 final Context context = this;

 super.onCreate(savedInstanceState);
 setContentView(R.layout.main);

 button = (Button) findViewById(R.id.buttonUrl);

 button.setOnClickListener(new OnClickListener() {

 @Override
 public void onClick(View arg0) {
 Intent intent = new Intent(context, WebActivity.class);
 startActivity(intent);
 }

 });
 }
}

добавьте разрешения на манифест для Интернета


Метод 1. Попробуйте вставить браузер в ссылку и загрузить ее с сервера напрямую. Это чистый способ достичь этого.

WebView webView = ((WebView)findViewById(R.id.webview));
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setPluginsEnabled(true); //plugins/flash
webView.loadUrl(url);

Метод 2. Вы также можете получить запрос на получение этого файла apk, а затем ваш клик по клику может отправить файл в AsyncTask. В Интернете есть много примеров этого.

2.1 Хранение на SD-карте

File path = Environment.getExternalStorageDirectory();

2.2 Запись в файл

FileOutputStream fop = openFileOutput("my_file", Context.MODE_PRIVATE); 
fop.write("Data to be written".getBytes());
fop.flush();
fop.close();

2.3 Асинхронный запрос Http-запроса

Запрос HTTP HTTP AsyncTask

licensed under cc by-sa 3.0 with attribution.