我在服务中注册我的(广播接收器),当我的主要活动关闭我的服务时,我的(广播接收器)接收器工作正常吗?
我的问题是如何在后台保留(广播接收器)?
我的解决方案是个好主意?
myservice代码:
<cfloop query="csv_query">
<cfquery datasource="#app.dsn#">
INSERT INTO CSVIMP (
Test1,
Test2
) VALUES (
'#csv_query.column_1#',
'#csv_query.column_2#'
)
</cfquery>
</cfloop>
答案 0 :(得分:2)
在代码(活动或服务)中创建BroadcastReceiver
时,BroadcastReceiver
应由活动或服务本身管理。
否则,如果您在清单中声明Broadcast Receiver
,如果您的应用程序未运行,系统会自动为您的接收器创建新进程。当您的应用程序不可用时,这非常有用,例如BootCompleted
)。
<receiver android:name=".CustomReceiver">
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
</receiver>
答案 1 :(得分:1)
<receiver android:name=".MyReceiver">
<intent-filter>
<action android:name="android.intent.action.MY_BROADCAST"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
onReceive check服务正在运行
答案 2 :(得分:1)
之前的回答是正确的。从那里添加代码到您的清单文件, 然后创建新的java类:
public class MyReciever extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
//Do what you need to do when broadcast is received
}
}