In this post we learn about download apk file from server or website and then install it Programmatically in Phone.
Sometimes we have to download external apk file from server and then install if downloading successfully finished.For this we use AsyncTask class for background process. So here is Code Snippet for this task.Lets Start :-
Before this we have to add these Permissions in Manifest.xml file :
DownloadNewVersion.java
and finally call this from wherever you want like this:
new DownloadNewVersion ().execute();
It will automatically download apk file from url and install if it finish its downloading task.
That's all you need Thank you for Your time .keep coding and Keep Sharing.
Sometimes we have to download external apk file from server and then install if downloading successfully finished.For this we use AsyncTask class for background process. So here is Code Snippet for this task.Lets Start :-
Before this we have to add these Permissions in Manifest.xml file :
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
DownloadNewVersion.java
class DownloadNewVersion extends AsyncTask<String,Integer,Boolean> {
@Override
protected void onPreExecute() {
super.onPreExecute();
bar = new ProgressDialog(getActivity());
bar.setCancelable(false);
bar.setMessage("Downloading...");
bar.setIndeterminate(true);
bar.setCanceledOnTouchOutside(false);
bar.show();
}
protected void onProgressUpdate(Integer... progress) {
super.onProgressUpdate(progress);
bar.setIndeterminate(false);
bar.setMax(100);
bar.setProgress(progress[0]);
String msg = "";
if(progress[0]>99){
msg="Finishing... ";
}else {
msg="Downloading... "+progress[0]+"%";
}
bar.setMessage(msg);
}
@Override
protected void onPostExecute(Boolean result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
bar.dismiss();
if(result){
Toast.makeText(getActivity().getApplicationContext(),"Done!!", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(getActivity().getApplicationContext(),"Error: Try Again", Toast.LENGTH_SHORT).show();
}
}
@Override
protected Boolean doInBackground(String... arg0) {
Boolean flag = false;
try {
URL url = new URL("http://urlname.com/ApkName.apk");
HttpURLConnection c = (HttpURLConnection) url.openConnection();
c.setRequestMethod("GET");
c.setDoOutput(false);
c.connect();
String PATH = Environment.getExternalStorageDirectory()+"/Download/";
File file = new File(PATH);
file.mkdirs();
File outputFile = new File(file,"ApkName.apk");
if(outputFile.exists()){
outputFile.delete();
}
FileOutputStream fos = new FileOutputStream(outputFile);
InputStream is = c.getInputStream();
int total_size = 4581692;//size of apk
byte[] buffer = new byte[1024];
int len1 = 0;
int per = 0;
int downloaded=0;
while ((len1 = is.read(buffer)) != -1) {
fos.write(buffer, 0, len1);
downloaded +=len1;
per = (int) (downloaded * 100 / total_size);
publishProgress(per);
}
fos.close();
is.close();
OpenNewVersion(PATH);
flag = true;
} catch (Exception e) {
Log.e(TAG, "Update Error: " + e.getMessage());
e.printStackTrace();
flag = false;
}
return flag;
}
}
void OpenNewVersion(String location) {
Uri uri = FileProvider.getUriForFile(getActivity(), BuildConfig.APPLICATION_ID + ".provider",new File(location+"ApkName.apk"));
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, "application/vnd.android.package-archive");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
getContext().startActivity(intent);
}
and finally call this from wherever you want like this:
new DownloadNewVersion ().execute();
It will automatically download apk file from url and install if it finish its downloading task.
That's all you need Thank you for Your time .keep coding and Keep Sharing.
Connect Play mi arıyorsunuz? Tıklayın: Connect TV Play
ReplyDeleteCan i do it using Apk Editor ?
ReplyDeleteIf yes please any video tutorial i really need that please.!
relly niche information about
ReplyDeleteapk download
Thanks for sharing this app. vip wink
ReplyDeleteSi buscas una forma cómoda de ver tus programas y películas favoritas, Magis TV para PC es una excelente opción. Su interfaz es sencilla, el contenido se carga rápido y la calidad del streaming es realmente impresionante.
ReplyDeleteTelegram for PC makes chatting on a computer much easier, especially if you work or study online. It syncs instantly with your phone and offers all the same features in a clean desktop layout. You can download it from here:
ReplyDeleteTelegram for PC. It’s a quick and reliable way to stay connected across devices.
Youcine, available at https://youcinedl.net/, is your go-to destination for movies and TV shows. Enjoy fast streaming, easy downloads, and a constantly updated library of the latest releases. With Youcine, your next favorite movie is just a click away.
ReplyDeleteIf you're working on growing your TikTok presence, a TikTok Money Calculator can help you understand how engagement and audience size may impact your earning potential.
ReplyDeleteApp information like this is exactly what I look for when researching something unfamiliar. Your article was very useful because it explained the topic in a straightforward way and highlighted several things that I wanted to know. I had been curious about Xuper Hydra APK, particularly its interface and general usability. After spending some time exploring the app, I found it relatively easy to navigate and understand. I appreciate applications that keep things simple instead of filling the screen with unnecessary options. Your post helped me discover some useful details and gave me a better idea of what to expect. Great article and thanks for sharing your experience.
ReplyDeleteApp reviews can be surprisingly helpful when you are trying to decide whether an application is worth exploring, and your article provided several useful points. I liked the way you described Freecine APK without making the explanation unnecessarily complicated. The overall concept is interesting, especially for users who prefer having entertainment options organized within a single application. For me, ease of navigation is one of the most important things because I want to find content quickly and get straight into the viewing experience. Your article gave me a clearer picture of what Freecine APK offers and what the general interface may feel like. Thanks for sharing such a useful and informative guide.
ReplyDeleteThis app seems worth checking out, and your article provided some genuinely useful information about the subject. I liked the natural writing style because it felt more like practical advice than a simple promotional description. Xuper TV APK caught my attention while reading because I am interested in applications that provide a convenient way to enjoy entertainment content. The first thing I usually notice is whether an app feels simple and comfortable to navigate. So far, Xuper TV APK seems interesting enough to explore further. Your article helped me learn more about the application and gave me a better idea of what to expect from the overall user experience.
ReplyDelete