Android :: Custom Changeable Handler When Service Finishes Downloading File
May 30, 2010
I have a Service that downloads a file from the internet. What I want is for the response (an InputStream in this case) to be handled by a custom handler that can be switched (like a strategy pattern) but I can't figure out how to do this. So basically the User of the API would be able to plug in different handlers for the response, some would parse XML, others might save files etc. I realise I could pass through the activity context and execute the method from this (given some interface) but I don't want to do this obviously, in case the Activity is closed in the meantime while the file is still downloaded.
UPDATE - I just had one idea it will work sort of but has problem if the DownloadRunnable gets changed between executions of the downloads.
The modified Runnable interface
interface DownloadRunnable {
void run(InputStream stream);
}
An enum
public enum ServiceHandler {.......................
View 1 Replies
Nov 14, 2010
When I download a file from web in android, then I want to show a progress bar in notification area of status bar through service, but I am not able to do this. How can i do it? I am not able to pass the file length in service. I am giving URL in EditText, and I am clicking Download Button. After Click A class will be called on Click Listener, this class is having a function. In that function I am doing processing or functionality of downloading, Now I want to show the progress bar in Notification Area Through service, but I can not able to do this.
View 2 Replies
View Related
Aug 9, 2009
I've read the android AIDL documentation and have a general idea of how RPC works between an Activity and a Service. However, for my application it seems overboard to implement such features: basically, I want to pass a Service a nice handler so its thread can pass data to my Activity. Currently I'm getting around this by using a static public member (a hack) but I would prefer just passing a Handler object in the Service's starting Intent. However since a Handler isn't serialize-able , I haven't found a way to pass it to the service without a simple static member hack. Any insight? Or, am I just going to have to suck it up and do a formal RPC to the service?
View 1 Replies
View Related
Jun 23, 2010
Ive set an in a running service a handler which does operation every X time. Now after certain time i wanna start an activity from that service, and in onCreate of the activity i wanna access that handler of the service(which started the acitivty) and stop it's schedualed operation
(mHandler.removeCallbacks(someTask));
any idea how will i access the handler which is in the service? the service and the called activity are in the same proccess.
View 1 Replies
View Related
Nov 11, 2009
i want to do the following thing - when a user navigates to a web page, I want to have a link in there that looks like this: <p><a href="myprotocol://blah=42">Click here for fun.</a></p> Then when the user clicks on that from the phone browser, I want it to launch my intent with that full url. In my AndroidManifest.xml file, I have the following info: <activity android:name="com.test.MyActivity" style="@style/ MyStyle"> <!-- custom protocol association --><intent-filter><action android:name="android.intent.action.VIEW"></action> <category android:name="android.intent.category.DEFAULT"></category><category android:name="android.intent. category. BROWSABLE"> </category><data android:scheme="myprotocol"/></intent-filter></activity>When I try this, when I click on the link on the web page from the phone browser, it says -- Web page not available The Web page at myprotocol://blah=42 might be temporarily down or it may have moved permanently to a new web address.
View 20 Replies
View Related
Nov 6, 2010
I am hoping to create my own protocol handler for urls in a webview. I have tried two approaches already. The first was to attempt something similar to the approach defined here to create a customer protocol handler. http://java.sun.com/developer /onlineTraining/ protocol handlers / This works in a command-line Java program if I correctly set the system property java.protocol.handler.pkgs, but it does not work in Android, probably because I cannot figure out where to define this system property. Defining the system property in the code does not work. I assume this is because it needs to be loaded when the application first starts. I have also attempted to use URL.setURLStreamHandlerFactory. This works for creating URL objects within the code, but it does not seem to be associated with the WebView. Any ideas on how to get this working?
View 6 Replies
View Related
Nov 18, 2010
I'm confused why is my activity still lagging, I use remote service that has few methods and each has its own work like download stuff, process data, compare stuff, etc... It will run in background and update data at selected intervals and notify user of changes over notify system.
The reason why remote service, because I will eventually add a widget, and service needs to stay running even if android kills the activity, so I unbind it on each onPause().
But as far I understand that part doesn't cause my issue.
But back to my problem... so my is Activity still lagging when I run stuff in service and handler.post method.
here is the code...
Also I wanted to add progressDialog to be updated in updateLayer(...) through Activity is a listener to this service, but thats not working well. Whats the best way to update progressDialog? Ever listener, handler, intent, or what?
So how do I do this correctly?
View 2 Replies
View Related
May 28, 2010
I have been a Iphone guy for a while but I am just sick to death of At&t's service. I was just wondering can you download these apps right to your phone or do you have to download to a computer 1st and can you download them to your Apple Laptop?
View 1 Replies
View Related
Oct 27, 2010
I'm writing a bitmap editor. Each document consists of about 3 bitmap layers and documents are, at the moment, saved as a custom file with a .bme extension. These files can be converted to standard jpg/png files by rendering each bitmap on top of one bitmap and saving the latter. I need some way for the user to be able to select .bme files they've created already. Is there anything in Android that can make this easier for me? The only option I can see is to write an activity that creates a list view and write a list adapter that looks for .bme files on disk i.e. a copy of the standard "Media Gallery" app that works for my .bme files. The list adapter will either have to generate a thumbnail preview of the image to show to the user or I'll have to package such a preview in the .bme file when they're created. This is the only option I can think of. I thought I'd ask in case there is more Android friendly way of doing this. For example, can you add custom file support to the "Media Gallery" app?
View 1 Replies
View Related
Jun 6, 2010
I have to download a file and I'm using this code, which is basically an AsyncTask that is meant to update a progress bar. But, since I don't know what's the file size I've been having to use the spinner progress bar. So, how can I get the file size before start downloading it so that I can use a normal progress bar?
View 1 Replies
View Related
Nov 11, 2009
i am downloading files from web server programatically. after download is complete, i checked the file.the size ,extension and all other parameters are correct but i when i try to play that file in media player it is showing that it is corrupt.
byte[] b = null; InputStream in = null; b = new byte[Integer.parseInt(size)]; // size of the file. in = OpenHttpConnection(URL); in.read(b); in.close();
File folder = new File("/sdcard", "folder");
boolean check = folder.mkdirs();
Log.d("HttpDownload", "check " + check);
File myFile = new File("/sdcard/folder/" + name);
myFile.createNewFile();
OutputStream filoutputStream = new FileOutputStream(myFile);
filoutputStream.write(b);
filoutputStream.flush();
filoutputStream.close();
View 2 Replies
View Related
Oct 14, 2010
I run a site that offers .pkg files to my users for download to there device. The issue is instead of downloading the .pkg file it just displays the raw code of the .pkg file in the webview. How can I get this to force download to the root of the sd card? Here is what I have
package com.ps3brew.view;
import com.ps3brew.view.R;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
public class WebViewExample extends Activity {..........................
View 2 Replies
View Related
Nov 9, 2010
I have been searching for days trying to find solution to my problem. I would like to show a progress bar while downloading a file in Android. I found enough to download the file but have struggled to figure out how to display a progress bar.
Here is my download code:...............
View 2 Replies
View Related
Mar 19, 2010
I've got the following code:
BufferedInputStream stream = new BufferedInputStream(new URL("my url that points to a binary file").openStream(), 1024 * 1024); BufferedOutputStream fos = new BufferedOutputStream(new FileOutputStream(downloadFile)); byte buf[] = new byte[1024 * 1024]; int numBytesRead; do { numBytesRead = stream.read(buf); if (numBytesRead > 0) { fos.write(buf, 0, numBytesRead); } } while (numBytesRead > 0);
View 4 Replies
View Related
Oct 13, 2010
I am quite new to Android yet, and I have an application that has a webview on it. I need to know when the webview finishes loading a page that has a random number of redirects (sometimes to the same page, and the order of the redirects also change), so I can remove the Splash Screen only when there is a fully loaded page. On the webviewclient the onPageStarted and onPageFinished functions are called once per each redirect, as is the onNewPicture (even though the screen is always blank during the redirects). So I can't be sure when it's called the last time (page actually loaded). I also tried using the onLoadResource to count the number of resources loaded (dangerous and unreliable approach, but I am getting desperate here), but this also failed, since after the page is cached, it is called only one or two times. That is one big puzzle I am unable to solve using what I know so far, can anyone please help me?
View 1 Replies
View Related
Oct 27, 2010
Is there a way to do it within an app without downloading the file first? Somehow stream the text content?
View 1 Replies
View Related
Jul 29, 2010
I am trying to download an Android APK file that is output by a php page. I have the following and it works on firefox but not on the phone. Firefox downloads with an apk extension but has a little firefox icon next to it. The phone downloads the file with a .html extension, why is this?
UPDATE: Full source
function display($tpl = null) {
//SETUP
$appId = JRequest::getInt('id', '0');
$model = &$this->getModel();
$app = $model->getApplication($appId);.................
View 2 Replies
View Related
Aug 25, 2010
I have an application that I'd like to add auto-update functionality (its not in the marketplace). I have all the code in place that would check to see if there is an update available and then i call something like this: Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse(Configuration.APK_URL)); c.startActivity(intent); which starts downloading the file, although is there a way that I can programatically tell it to "open" the file to begin the installation process without the user having to go to the downloads and clicking on it?
View 1 Replies
View Related
Mar 11, 2010
If an app needs to download some critical data (without the data it cannot function) of several MB, what is the best practice? The app would start, a prompt would be shown to confirm download, download would commence, and the user would be prevented from going further until the download successfully completes. I don't expect the download would take more than, say, 10 secs over wifi but, of course, would take much longer over 2G. Is a service absolutely essential for this? Maybe there is already some code out there that takes a URL, downloads it in a service, and broadcasts a configurable Intent when the download has completed?
View 4 Replies
View Related
Oct 30, 2010
I downloaded ROM MANAGER (Free version) and everytime I download one of the roms, and I go through the process of clicking wipe cache + backup rom, it just restarts my phone.
View 2 Replies
View Related
Nov 10, 2010
I've scoured forums and seem to see only talk about people receiving the OTA, or using the About PhoneCheck for updates to get it, or downloading a custom rooted ROM with it.
I have a normal, unrooted D2 and I've not had an OTA, and every single time I try to do the check for updates, here is what happens:
Over wifi: The checking for updates spinning circle never stops.
Over 3g: Message Box: "Check for update was not available at this time. Try again later."
I've had this since result the 28th of October. Am I missing something?
View 8 Replies
View Related
May 12, 2010
I'm trying to implement similar behavior as the native phone app. When a User is in the applications menu/drawer (place that lists all applications) and receives and incoming call, after the call has ended the User is returned to the Android Homescreen. How do I redirect activity to the android homescreen like the phone app for that specific case.
View 2 Replies
View Related
Oct 19, 2010
I recently released an update to my application (about a week ago).
Since then, I've had two emails from users who report that, while updating the app through Market, the installation process gets "stuck" and never finishes. This is after the application has been downloaded. They can't abort the installation.
Did anyone here have similar reports recently?
View 8 Replies
View Related
Sep 20, 2010
I am having a problem where my XML files are slow to load and don't finish downloading before they start to be parsed which throws an xml not well formatted exception from my parser showing that the file downloaded incompletely. The complete error from logcat is "ERROR/Error(323): errororg.apache.harmony.xml.ExpatParser$ParseException: At line 10, column 46: not well-formed (invalid token)" I know the xml file is correct because sometimes it will work and I can also pull it up in my browser and look at it.
What would be the best way to make the parser wait for the InputSource before continuing on and parsing the xml data? The code below is the code I use to get the file and parse it.
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
GradeHandler gradeHandler = new GradeHandler();
xr.setContentHandler(gradeHandler);
URL url = new URL("https://url/to/xml/file");
HttpsURLConnection ucon = (HttpsURLConnection)url.openConnection();
ucon.setHostnameVerifier(new AllowAllHostnameVerifier());
xr.parse(new InputSource(new BufferedInputStream(ucon.getInputStream())));
View 1 Replies
View Related
Jun 25, 2010
I have been having some major problems with my EVO regarding the data. If I use anything that is on the heavy side of bandwidth, like downloading a file from android marketplace, surfing the web, watching sprint tv, using the GPS, etc...the data will just time out for about 3 min at a time. For instance if I am downloading a 5mb app from android marketplace, it will maybe download a megabyte, then it will just stop downloading. If you look at the 3G symbol at the top, it will be white, but only the upstream indicator will be on. I can then open any other internet application on the phone, and nothing will work. It usually lasts for about 3 minutes at a time and happens fairly regularly. It will end up taking me 15-20 min to download a 5mb file from the marketplace. Same thing if I browse a bandwidth heavy site like digg.com. It will just time out after a while and it will just show the upstream indicator as solid and not do anything in any program.
This problem is not location dependent. I have this issue at my apartment, at work, at my friend's house, at the Sprint store...anywhere. I live in South Denver.
In chronological order, this is what I have done to troubleshoot/fix the problem:
First noticed problem
Turned off phone/Turned back on
Rooted and installed custom version of 2.1 w/ Sense
Removed battery (power cycle)
Talk to Sprint cust care. They sent signal over that reactivated the phone (2x)
Did factory reset on phone and formatted SD card
Swapped phone at Sprint store with new one
So even after swapping my EVO with a new EVO from the Sprint store and not fooling with the phone at all, I am still having the same exact issue.
I am absolutely at wit's end with this and I have no idea what to do at this point.
Update (6/25):
I have not been able to test with Wifi yet, but I just had one of my coworkers that has the same phone to replicate the issue on his phone. He is having the same exact problem as me, he just didnt realize it.
We set our phones next to each other and downloaded Space Buster 3D Lite off the Android Marketplace. Mine crapped out about 2mb in and so did his. He wasnt able to surf or do anything else on his phone for a few minutes just like mine.
I'm wondering if this a network problem in our area or if there is a problem with the phone.
Also, I downloaded a continuous ping program and did 3,000 pings with no packet loss, so it seems to only happen with heavy data usage ie. saturating your bandwidth.
View 16 Replies
View Related
Oct 30, 2010
I rooted my phone (droid x), and then installed bootstrap + Rom Manager. I downloaded REVOlution, and then I got to recovery, I clicked reboot, and it always FREEZES at the M sign. Then I looked up other forum posts on this site, and so I ended up deleting cache, going to factory reset etc... and I still can't get back to my screen.
View 3 Replies
View Related
Apr 18, 2012
I noticed a file was downloaded to my Samsung Galaxy S2 whilst the phone wasn't in use with the screen off and locked. I've attached a screenshot of the download to show the file name.
The same file was downloaded again approximately ten minutes later, again without instruction.I then ran AVG which didn't identify anything (the Settings Security Issue is having USB Debugging switched on)..I recently restored my applications using Titanium Back Up after flashing a new ROM.
View 2 Replies
View Related
Nov 30, 2010
When downloading a custom rom and the dev says wipe data/cache thats when im in recovery right? I see the options but do i do the data first and will it take me out of there and I gotta go back then wipe the cache? or will it just wipe data and then hit the back button and wipe cache and then hit the back button and hit install from sd?
View 3 Replies
View Related
Oct 2, 2010
I have recieved a message (official OTA ) on my Desire to download Froyo. After the download it says that the file is corrupted. I have an 16gb card, do i need to put the original card when downloading/instaling the Froyo? Theres a file that i can put in my sd card and it automat installs froyo?
View 1 Replies
View Related
Sep 9, 2013
I'm having a problem with unlocking my phone. Some of my friends tried to unlock the pattern but after 20 failures the phone blocked. Now I have to submit my google login so I can get back on it. The problem with that was that I was on vacation abroad so my 3G and wifi were both turned off. I've read about other problems like this and came to a point where I was trying to turn on my wifi with adb. I found that I could use the command "svc wifi enable" and I tried this several times, every time with the same result: I think the command starts but then gets killed before it finishes.
View 9 Replies
View Related