2012-06-20 7 views
9

解決方法:API 11が必要です下記の回答を見てください!通知が消える - Android DownloadManager

簡単な質問:実装されたDownloadManagerを使用してファイルをダウンロードした後、通知が消えます。ダウンロード後に通知を保持するにはどうすればよいですか?

私はVISIBILITY_VISIBLE_NOTIFY_COMPLETEDを使用しようとしましたが、私はこの問題を解決するためのヘルプのあらゆる種類のためにそれを

感謝をどのように使用できるかを知りません。

EDIT):コード

public class BgDL extends Activity { 

private DownloadManager mgr = null; 
private long id; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    //setContentView(R.layout.main); 

    mgr = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); 

    Request request = new Request(Uri.parse(getIntent().getStringExtra("URL"))); 

    id = mgr.enqueue(request 
      .setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "UPDATE") 
      .setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI|DownloadManager.Request.NETWORK_MOBILE) 
      .setAllowedOverRoaming(false) 
      .setTitle("APP update") 
      .setDescription("New version "+getIntent().getDoubleExtra("OV", 0.0)) 


    ); 

    registerReceiver(receiver, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE)); 

} 
BroadcastReceiver receiver = new BroadcastReceiver() { 


     public void onReceive(Context context, Intent intent) { 
     String action = intent.getAction(); 
     if (action.equals(mgr.ACTION_DOWNLOAD_COMPLETE)){ 
      unregisterReceiver(receiver); 
      finishActivity(99); 
     } 
     } 


}; 

}

+1

Plzにはいくつかのコードがあります。 Thnx – CelticParser

+0

また、どのAPIを使用していますか? –

+0

@malger、これを解決できましたか?私の通知も消えます。 –

答えて

21

リクエストに正しいフラグを追加してください:

Request request = new Request(Uri.parse(getIntent().getStringExtra("URL"))); 

request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); 

参考:このダウンロードを実行している間、または、それが完了すると、システムの通知はダウンロードマネージャーによって投稿されているかどうかを

http://developer.android.com/reference/android/app/DownloadManager.Request.html#setNotificationVisibility(int)

コントロール。有効にすると、ダウンロードマネージャは、システムのNotificationManagerを通じてダウンロードに関する通知をポストします。デフォルトでは、ダウンロードが進行中の場合にのみ通知が表示されます。

http://developer.android.com/reference/android/app/DownloadManager.Request.html#VISIBILITY_VISIBLE_NOTIFY_COMPLETED

このダウンロードは可視であり、進行中、完了後ながら通知に示します。

+0

ご協力いただきありがとうございますが、まだ問題は解決しておりません!私は得る: 'VISIBILITY_VISIBLE_NOTIFY_COMPLETEDは解決できないか、フィールドではない – malger

+0

私は示したようにそれをインポートする必要があります。それはAPI – Blundell

+0

にリンクされていますが、私はそれをインポートしました: " import android.app.DownloadManager; import android.app.DownloadManager.Request;" – malger

関連する問題