//下载apk程序代码
protected File downLoadFile(String httpUrl) {
// TODO Auto-generated method stub
final String fileName = "updata.apk";
File tmpFile = new File("/sdcard/update");
if (!tmpFile.exists()) {
tmpFile.mkdir();
}
final File file = new File("/sdcard/update/" + fileName);
try {
URL url = new URL(httpUrl);
try {
HttpURLConnection conn = (HttpURLConnection) url
.openConnection();
InputStream is = conn.getInputStream();
FileOutputStream fos = new FileOutputStream(file);
byte[] buf = new byte[256];
conn.connect();
double count = 0;
if (conn.getResponseCode() >= 400) {
Toast.makeText(Main.this, "连接超时", Toast.LENGTH_SHORT)
.show();
} else {
while (count <= 100) {
if (is != null) {
int numRead = is.read(buf);
if (numRead <= 0) {
break;
} else {
fos.write(buf, 0, numRead);
}
} else {
break;
}
}
}
conn.disconnect();
fos.close();
is.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return file;
}
//打开APK程序代码
private void openFile(File file) {
// TODO Auto-generated method stub
Log.e("OpenFile", file.getName());
Intent intent = new Intent();
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction(android.content.Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file),
"application/vnd.android.package-archive");
startActivity(intent);
}
分享到:
相关推荐
总结,实现Android下载并自动安装APK的功能涉及网络请求、文件操作、权限管理、安全检查等多个方面,需要对Android系统有深入理解。在实际开发中,还需要考虑错误处理、用户体验优化等细节问题。
在Android平台上,实现应用下载后自动安装的功能是一个常见的需求,特别是在企业级应用部署或者自动更新场景下。这个功能涉及到Android的文件系统管理、权限控制以及Intent机制。下面将详细讲解如何实现这一功能。 ...
在Android平台上,自动下载更新安装是一项重要的功能,它允许应用在后台下载最新的版本,并在适当的时候自动或引导用户进行安装,以确保应用始终处于最新状态,提供更好的用户体验和安全性。这个"Android自动下载...
在Android平台上,自动安装APK是一项常见的操作,尤其对于开发者来说,这有助于快速测试和部署应用。本示例,"Android 自动安装apk",提供了一个DEMO,它允许用户无需手动操作即可安装APK文件。这个过程涉及到...
综上所述,"android通知栏更新,下载完成自动安装并清除消息通知"这一功能涉及到Android的通知系统、服务组件、下载管理、BroadcastReceiver、安装流程等多个核心知识点。`UpdateService`文件可能是实现这些功能的...
这个特性限制了非Google Play商店应用的自动安装,需要用户手动给予应用安装权限。本教程将详细讲解如何在Android 7.0及更高版本上实现Apk的自动下载与安装,主要基于提供的"InstallAPKDemo"示例项目。 首先,理解...
本文将深入探讨如何解决Android10以下及以上的系统版本中,下载更新的APK自动安装失败的问题,为开发者提供实用的解决方案。 首先,我们需要了解Android在不同版本中对于安装APK权限的改变。自Android6.0(API级别...
在Android应用开发中,有时我们需要实现一个功能,即使用系统内置的`DownloadManager`服务来下载APK文件,并在下载完成后自动提示用户进行安装。这个功能对于应用的更新或者安装外部资源非常实用。本文将详细讲解...
当下载完成后,广播会触发,此时可以进行安装操作。 5. **安装APK**:在Android 10及以上版本,由于默认禁止了非Google Play商店的安装,需要在AndroidManifest.xml中添加`<uses-permission android:name="android....
Android8.0之前 未知应用安装权限默认开启,如下图所示 8.0以下手机未知应用安装权限.png Android8.0之后 未知应用安装权限默认关闭,且权限入口隐藏。 如何开启未知应用安装权限的入口,并设置允许安装? 在...
- 自动安装通常需要在Android 7.0及以上版本中启用"未知来源的应用程序"的安装权限。 7. **处理安装结果**: - 安装过程中,可以通过BroadcastReceiver监听ACTION_PACKAGE_ADDED广播,当安装成功时,可以启动新...
4. **自动安装APK**:在下载完成后,为了使用户能够轻松地安装APK,开发者可以编写代码自动调用`PackageInstaller`或`Intent`进行安装。例如,创建一个`ACTION_VIEW`类型的意图,设置数据字段为下载完成的APK文件...
这个压缩包"安卓文件下载上传解压相关-Android实现应用下载后自动安装源码.zip"提供了关于如何在Android上实现应用自动下载并安装的示例代码。下面将详细探讨这些知识点。 1. 文件下载: 在Android中,可以使用...
"Android检查更新,文件下载后自动安装demo"就是一个用于实现这一功能的示例项目。在这个项目中,开发者自定义了一个下载管理器,适用于Android 7.0及以上版本,解决了在不同Android系统版本中进行文件下载和更新的...
本文将详细探讨如何在Android应用程序中实现自动检查并下载新版本的代码逻辑,以达到无缝更新的效果。 首先,我们需要一个服务(Service)来执行后台的更新检查。这个服务会在合适的时机(例如应用启动时或网络连接...
- 下载完成后,需通过`ACTION_VIEW` Intent启动APK安装流程。 - 需要处理权限问题,如请求`INSTALL_EXTERNAL_STORAGE`(Android 11及以上)权限。 7. **用户交互**: - 提供友好的UI通知用户有可用更新,展示...
如果是首次连接,电脑可能会自动安装驱动程序。 - 点击运行按钮,在弹出的 Device Dialog 对话框中选择已连接的设备,然后点击 OK。稍等片刻,即可在手机上看到项目的运行界面。 ### 常见安装问题总结 - **下载...
3. `InstallUpdate`: 下载完成后,`InstallUpdate`方法将启动APK的安装流程。在Android中,这通常通过调用`Intent`的`ACTION_VIEW`并指定APK文件的URI来实现。注意,为了能够安装应用,你需要在AndroidManifest.xml...
这个"Android应用源码之自己写的应用下载自动安装demo"提供了这样的示例代码,帮助开发者理解如何实现这一功能。下面我们将深入探讨相关知识点。 1. **Android权限管理**: 在Android中,为了进行应用的下载和安装...