我有一个扩展serviceintent的类,名为bluepostservice。在同一个包中的另一个类中,它扩展了我调用的活动
Intent selectIntent = new Intent(this, bluepostservice.class);
this.startService(selectIntent);
我在manifestxml中有这个
<service android:name="BluePostService" />
但是我得到了
无法启动服务Intent {cmp = org.anddev.android.parsingxml / .BluePostService}:未找到
显然我已经在清单中声明了错误或者不正确地启动了服务。
如何在androidmanifest中正确声明服务意图?
答案 0 :(得分:0)
缺少点?
<service android:name=".BluePostService" />
答案 1 :(得分:0)
检查是否在应用程序标记内声明了服务。
<application>
.................
..............
<service android:name="BluePostService" />
................
..................
</application>
编辑: serviceintent是什么意思?你应该像那样声明
public class BluePostService extends Service {
@Override
public IBinder onBind(Intent arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
Toast.makeText(getApplicationContext(), "Service Started", Toast.LENGTH_LONG).show();
}
}
然后从您的活动
Intent selectIntent = new Intent(this, BluePostService.class);
this.startService(selectIntent);
可能是您的问题是您已在"BluePostService"
等清单中声明了该服务,但您希望像"bluepostservice"
一样启动它。所以可能是它的主要问题。
答案 2 :(得分:0)
我认为应该是这样的:
<service android:name="bluepostservice" />
android:name属性是唯一必需的属性 - 它 指定服务的类名。
答案 3 :(得分:-1)
您需要使用以下属性启用此服务:
service android:enabled="true" android:name=".your service name">