ServiceInfo.ForegroundServiceTypeShortService フィールド

定義

注意事項

This constant will be removed in the future version. Use Android.Content.PM.ForegroundService enum directly instead of this field.

マニフェストの 属性で android.R.attr#foregroundServiceTypeshortService対応する、"有効期間が短い" サービスのフォアグラウンド サービスの種類。

[Android.Runtime.Register("FOREGROUND_SERVICE_TYPE_SHORT_SERVICE", ApiSince=34)]
[System.Obsolete("This constant will be removed in the future version. Use Android.Content.PM.ForegroundService enum directly instead of this field.", true)]
public const Android.Content.PM.ForegroundService ForegroundServiceTypeShortService = 2048;
[<Android.Runtime.Register("FOREGROUND_SERVICE_TYPE_SHORT_SERVICE", ApiSince=34)>]
[<System.Obsolete("This constant will be removed in the future version. Use Android.Content.PM.ForegroundService enum directly instead of this field.", true)>]
val mutable ForegroundServiceTypeShortService : Android.Content.PM.ForegroundService

フィールド値

Value = 2048

実装

属性

注釈

マニフェストの 属性で android.R.attr#foregroundServiceTypeshortService対応する、"有効期間が短い" サービスのフォアグラウンド サービスの種類。

他のフォアグラウンド サービスの種類とは異なり、この型は特定のユース ケースに関連付けられていないため、(以外 android.Manifest.permission#FOREGROUND_SERVICEの) 特別なアクセス許可は必要ありません。

ただし、この型には次の制限があります。

<ul><li> 型には 3 分のタイムアウトがあります。 この型のフォアグラウンド サービスは、タイムアウト中に 、 またはそのオーバーロードによってandroid.app.Service#stopSelf()android.content.Context#stopService(android.content.Intent)停止する必要があります)。 android.app.Service#stopForeground(int) は機能します。これにより、サービスが "バックグラウンド" サービスに降格され、システムによって間もなく停止されます。

タイムアウト中にサービスが停止しない場合は、 android.app.Service#onTimeout(int) が呼び出されます。 システムがこのコールバックを呼び出しても、サービスは自動的に停止されないことに注意してください。 このコールバックを取得した場合でも、前述の方法のいずれかを使用してサービスを停止する必要があります。

コールバック後もサービスが停止しない場合、アプリは数秒の短い猶予期間の後に ANR として宣言されます。 <li> この型のフォアグラウンド サービスを "固定" にすることはできません (「」を参照)。android.app.Service#START_STICKY つまり、短い foregorund サービスの実行中にクラッシュまたはメモリ不足が原因でアプリが強制終了された場合、システムはサービスを再起動しません。 <li> その他のフォアグラウンド サービスは、ショート フォアグラウンド サービスから開始できません。 他のフォアグラウンド サービスの種類とは異なり、"short" フォアグラウンド サービスのみを持つアプリがバックグラウンドで実行されている場合、ここで説明する制限のため、他のフォアグラウンド サービスを開始することはできません。

背景の制限は、開始 <li> 複数のフォアグラウンド サービスの種類を と |組み合わせることができ、 を組み合わせることができます android.content.pm.ServiceInfo#FOREGROUND_SERVICE_TYPE_SHORT_SERVICE。 他の型にも使用できます。 ただし、 は、 android.content.pm.ServiceInfo#FOREGROUND_SERVICE_TYPE_SHORT_SERVICE 使用する有効なフォアグラウンド サービスが他になく、タイムアウトがタスクに対して十分な長さであり、他の型を使用できる場合は、この型を使用しても意味がない状況を対象としています。 このため、 が他のフォアグラウンド サービスの種類と組み合わされている場合 android.content.pm.ServiceInfo#FOREGROUND_SERVICE_TYPE_SHORT_SERVICE 、システムはそれを無視するだけで、その結果、上記の制限は適用されません (たとえば、タイムアウトは発生しません)。 </ul>

また、Android バージョンで追加された場合 android.content.pm.ServiceInfo#FOREGROUND_SERVICE_TYPE_SHORT_SERVICE でも、以前の Android バージョン android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKEでも使用できます (他の新しいフォアグラウンド サービスの種類を使用できるのと同様です)。 ただし、 android.app.Service#onTimeout(int) 以前のバージョンには存在しなかったため、そのようなバージョンでは呼び出されません。 このため、開発者は、このようなバージョンで が呼び出されない場合 android.app.Service#onTimeout(int) でも、フォアグラウンド サービスを停止する必要があります。

android.content.pm.ServiceInfo.FOREGROUND_SERVICE_TYPE_SHORT_SERVICEJava ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象