Running update in background in android app
<p>i am trying to run a method which check for an app update in background but i am getting the following error , i think i am missing some package to import but am i am not so sure for that. i shall be very thankful to you in this regards.</p>

<pre><code>Errors &lt;br&gt;
lastUpdateTime cannot be resolved to a variable
checkUpdate cannot be resolved 
Illegal modifier for the variable checkUpdate; only final is permitted
showUpdate cannot be resolved to a variable
Illegal modifier for the variable showUpdate; only final is permitted
</code></pre>

<p>here is my code</p>

<pre><code>  public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        SharedPreferences prefs = getPreferences(0);
        lastUpdateTime =  prefs.getLong("lastUpdateTime", 0);

        /* Should Activity Check for Updates Now? */
        if ((lastUpdateTime + (24 * 60 * 60 * 1000)) &lt; System.currentTimeMillis()) {

            /* Save current timestamp for next Check*/
            lastUpdateTime = System.currentTimeMillis();            
            SharedPreferences.Editor editor = getPreferences(0).edit();
            editor.putLong("lastUpdateTime", lastUpdateTime);
            editor.commit();        

            /* Start Update */            
            checkUpdate.start();

            /* This Thread checks for Updates in the Background */
            private Thread checkUpdate = new Thread() {
                public void run() {
                    try {
                        URL updateURL = new URL("url to my company");                
                        URLConnection conn = updateURL.openConnection(); 
                        InputStream is = conn.getInputStream();
                        BufferedInputStream bis = new BufferedInputStream(is);
                        ByteArrayBuffer baf = new ByteArrayBuffer(50);

                        int current = 0;
                        while((current = bis.read()) != -1){
                             baf.append((byte)current);
                        }

                        /* Convert the Bytes read to a String. */
                        final String s = new String(baf.toByteArray());         

                        /* Get current Version Number */
                        int curVersion = getPackageManager().getPackageInfo("your.app.id", 0).versionCode;
                        int newVersion = Integer.valueOf(s);

                        /* Is a higher version than the current already out? */
                        if (newVersion &gt; curVersion) {
                            /* Post a Handler for the UI to pick up and open the Dialog */
                            mHandler.post(showUpdate);
                        }                
                    } catch (Exception e) {
                    }
                }
            };
</code></pre>
