我试着制作一个接受应用条款的简单按钮。按此按钮切换到另一个屏幕。但inacelasi时间适应和下载应用程序。如果有新的.apk下载它。如果没有下载。 不幸的是,没有像我想的那样去,给那么糟糕。 我尝试使用论坛提供的其他示例,但不幸的是我们无法适应它们。
> private void accepttermenibuton() {
> Button accionentrar = (Button) findViewById(R.id.bAccept);
> accionentrar.setOnClickListener(new View.OnClickListener() {
> @Override
> public void onClick(View v) {
> startActivity(new Intent(Termeni.this, Categori.class));
> startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://ggg.comm/apk.V1.1.apk")));
> }
> });
> }
如何在不打开chrome的情况下下载fisier.apk。我不想要任何复杂的事情,也很难理解自己。 只是为了下载这个文件,但没有打开chrome,我不想在chrome中打开一个页面。 谢谢。
答案 0 :(得分:0)
你可以按照自己的意愿去做。 有两种方法: -
1)利用HttpGet向您的API链接“http://ggg.comm/apk.V1.1.apk”请求服务器。 搜索谷歌如何连接/请求服务器获取数据/响应。
2)如果您不想按上述指示做那么多工作,而不是使用DownloadManager
将apk文件放在所需的文件夹路径中。并且每次在再次下载apk之前检查该路径防止重新下载该apk。
答案 1 :(得分:0)
我们做了,但不知道在哪里下载,下载文件夹,文件没有下载,如果我打开下载管理器给我erroare包,虽然总是下载文件。
import android.os.Environment;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.app.Activity;
import android.app.DownloadManager;
import android.app.DownloadManager.Query;
import android.app.DownloadManager.Request;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import java.io.File;
public class Upgrade extends ActionBarActivity {
private long enqueue;
private DownloadManager dm;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_upgrade);
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (DownloadManager.ACTION_DOWNLOAD_COMPLETE.equals(action)) {
long downloadId = intent.getLongExtra(
DownloadManager.EXTRA_DOWNLOAD_ID, 0);
Query query = new Query();
query.setFilterById(enqueue);
Cursor c = dm.query(query);
if (c.moveToFirst()) {
int columnIndex = c
.getColumnIndex(DownloadManager.COLUMN_STATUS);
if (DownloadManager.STATUS_SUCCESSFUL == c
.getInt(columnIndex)) {
}
}
}
}
};
registerReceiver(receiver, new IntentFilter(
DownloadManager.ACTION_DOWNLOAD_COMPLETE));
}
public void onClick(View view) {
dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
Request request = new Request(
Uri.parse("http://android.vrt.ro/tv-update/Virtual-Romania-Tv.(VRT).V5.apk"));
enqueue = dm.enqueue(request);
}
public void showDownload(View view) {
Intent i = new Intent();
i.setAction(DownloadManager.ACTION_VIEW_DOWNLOADS);
startActivity(i);
Intent promptInstall = new Intent(Intent.ACTION_VIEW)
.setDataAndType(Uri.parse("file:///sdcard/download/Virtual-Romania-Tv.(VRT).V5.apk"),
"application/vnd.android.package-archive");
startActivity(promptInstall);
}