2012-01-12 9 views
5

デバイスの起動処理が完了した後に起動するアンドロイドサービスを作成しています。私のサービスでは、私は仕事を作り出しています。このタスクは、状況によってはいつでも開始または停止されます。私の目的は、私が自分の仕事を始めたときに、私はステータスバーに私の仕事がBluetoothアイコンのように動いていることを知るためにアイコンを表示したいのです。タスクが実行されているときにステータスバーにアイコンを表示

+0

可能な通知をクリックしたときに起動される活動[アプリケーションの実行中にステータスバーにアイコンを表示する方法(バックグラウンドを含む)](http://stackoverflow.com/questions/3973208/how-to-show-an-icon-in-the-ステータスバー - アプリケーション実行中 - 含む) –

答えて

0

あなたは Custom title with image

のようなカスタムのタイトルバーを使用して、あなたのサービスは、カスタムタイトルを有効または無効にし、設定されていることを設定する優先順位を確認することができます。これを行う前にお読みください:http://developer.android.com/guide/topics/ui/notifiers/notifications.html

+0

カスタムタイトルはステータスバーアイコンとは異なります。実際に私のアプリでは何の活動も、そのサービスは、デバイスの起動後に自動的に起動しました。アプリでアクティビティなしでカスタムタイトルを使用することは可能ですか?とにかくあなたの答えをありがとう。 –

+0

はい、何の活動もせずにサービスを開始することが可能です。サービスをForegroundとして開始するだけです。 – waqaslam

7

あなたはNotificationが必要です。コードは、あなたのサービスでは:)

を話している:

private NotificationManager mNM; 
private int NOTIFICATION = 10002; //Any unique number for this notification 

通知を表示するには:ここで

mNM.cancel(NOTIFICATION); //The same unique notification number. 

private void showNotification() { 
    // In this sample, we'll use the same text for the ticker and the expanded notification 
    CharSequence text = getText(R.string.local_service_started); 

    // Set the icon, scrolling text and timestamp 
    Notification notification = new Notification(R.drawable.status_icon, text, System.currentTimeMillis()); 

    // The PendingIntent to launch our activity if the user selects this notification 
    PendingIntent contentIntent = PendingIntent.getActivity(this, 0, 
      new Intent(this, MainActivity.class), 0); 

    // Set the info for the views that show in the notification panel. 
    notification.setLatestEventInfo(this, getText(R.string.local_service_label), text, contentIntent); 

    // Send the notification. 
    mNM.notify(NOTIFICATION, notification); 
} 

し、それを隠すために、あなたは、単にこれを行いますいくつかの説明があります:

  • R.drawable.status_icon:通知アイコン
  • R.string.local_service_started:通知タイトル
  • R.string.local_service_label:通知の最新情報(サブタイトル)
  • MainActivity.class:ユーザーが
+0

サービスを開始するために通知オブジェクトを提供しています。通知がステータスバーのアイコンと異なると思います。私は、ステータスバーに表示されるBluetoothアイコンのように述べました。あなたの答えは私の要求に適さないと思います。とにかく、私の質問にお返事いただきありがとうございます。 –

+0

あなたは、ユーザーが決して交流しないアイコンのような意味ですか? 3Gアイコンのように、同期とヘッドフォン? – iTurki

+0

はい、アプリで可能ですか? –

関連する問題