|  |  | @ -2,8 +2,12 @@ package io.legado.app.service | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | import android.content.Context |  |  |  | import android.content.Context | 
			
		
	
		
		
			
				
					
					|  |  |  | import android.content.Intent |  |  |  | import android.content.Intent | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import androidx.core.app.NotificationCompat | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import io.legado.app.R | 
			
		
	
		
		
			
				
					
					|  |  |  | import io.legado.app.base.BaseService |  |  |  | import io.legado.app.base.BaseService | 
			
		
	
		
		
			
				
					
					|  |  |  | import io.legado.app.constant.Action |  |  |  | import io.legado.app.constant.Action | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import io.legado.app.constant.AppConst | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | import io.legado.app.help.IntentHelp | 
			
		
	
		
		
			
				
					
					|  |  |  | import org.jetbrains.anko.startService |  |  |  | import org.jetbrains.anko.startService | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | class WebService : BaseService() { |  |  |  | class WebService : BaseService() { | 
			
		
	
	
		
		
			
				
					|  |  | @ -28,6 +32,7 @@ class WebService : BaseService() { | 
			
		
	
		
		
			
				
					
					|  |  |  |     override fun onCreate() { |  |  |  |     override fun onCreate() { | 
			
		
	
		
		
			
				
					
					|  |  |  |         super.onCreate() |  |  |  |         super.onCreate() | 
			
		
	
		
		
			
				
					
					|  |  |  |         isRun = true |  |  |  |         isRun = true | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         updateNotification(getString(R.string.service_starting)) | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     override fun onDestroy() { |  |  |  |     override fun onDestroy() { | 
			
		
	
	
		
		
			
				
					|  |  | @ -41,4 +46,24 @@ class WebService : BaseService() { | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |         return super.onStartCommand(intent, flags, startId) |  |  |  |         return super.onStartCommand(intent, flags, startId) | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     /** | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |      * 更新通知 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |      */ | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     private fun updateNotification(content: String) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         val builder = NotificationCompat.Builder(this, AppConst.channelIdWeb) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             .setSmallIcon(R.drawable.ic_web_service_noti) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             .setOngoing(true) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             .setContentTitle(getString(R.string.web_service)) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             .setContentText(content) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         builder.addAction( | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             R.drawable.ic_stop_black_24dp, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             getString(R.string.cancel), | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             IntentHelp.servicePendingIntent<WebService>(this, Action.stop) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         ) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         builder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         val notification = builder.build() | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         val notificationId = 1122 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         startForeground(notificationId, notification) | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | } |  |  |  | } |