2012-07-23 56 views
2

我試圖製作一個項目,我有一個活動和一個來自不同包裝的服務。我把這兩個包放在一個項目中。從不同包裝啓動服務

我把活動:com.idris.activity,我把服務:com.idris.activity.service

我打電話從按鈕的聽衆爲MyService在MyActivity這樣的:

Intent myIntent = new Intent(getApplicationContext(), MyService.class); 
       myIntent.putExtra("extraData", "somedata"); 
       startService(myIntent); 

應用程序清單

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="idris.parental.monitor" 
    android:versionCode="1" 
    android:versionName="1.0" > 
<uses-sdk android:minSdkVersion="10" /> 
    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" > 
     <activity 
      android:name=".MyActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <service 
      android:name=".MyService" 
      android:enabled="true" /> 
    </application> 
</manifest> 

爲MyService無法啓動,什麼shuld怎麼辦?

回答

3

在您的清單使用此:

<service 
    android:name=".service.MyService" 
    android:enabled="true" /> 

確保您在manifest文件中使用正確的package nameservice。如果MyService.java文件是在com.idris.activity.service包不是使用:

<service android:name="com.idris.activity.service.MyService" /> 
+1

不工作, 出錯信息「10月7日至18日:04:06.975:W/ActivityManager(61):無法啓動服務意圖{cmp = idris.parental.monitor/.call.CallMonitorService(有額外)}}:找不到「 – adrasa 2012-07-23 15:54:05

+0

發佈您的清單文件。 – biegleux 2012-07-23 16:03:06

+0

請再次檢查,我已編輯我的帖子 – adrasa 2012-07-23 16:25:12

0

似乎烏爾根PKG的名字是包=「idris.parental.monitor」所以烏爾服務類PKG名稱必須包含這些作爲根路徑,然後在表現u能爲

指定例如

UR服務PKG服務。 即idris.parental.monitor.service

在清單.service.urservicename