嗨:我想开始一个位于连接的图书馆项目中的服务。所有相关课程都在图书馆内。
从位于库中的活动调用该服务:
Intent serviceIntent = new Intent();
serviceIntent.setAction("org.example.library.MY_ACTION");
startService(serviceIntent);
在清单文件中 - 包括库和应用程序 - 注意到:
<service android:name="org.example.library.SomeLibraryClass">
<intent-filter>
<action android:name="org.example.library.MY_ACTION" />
</intent-filter>
</service>
无法启动服务Intent {act = org.example.android.SomeLibraryClass(has extras)}:not found
似乎Android正在寻找应用程序中的类,但不是在库中。以前有人有这种行为吗?
答案 0 :(得分:2)
在调用库中定义的Intent时,需要指定应用程序的包:
Intent serviceIntent = new Intent();
serviceIntent.setAction("org.example.library.MY_ACTION");
serviceIntent.setPackage("org.example.application");
startService(serviceIntent);