2016-02-12 57 views
2

我試圖運行一個服務來啓動服務:無法通過使用下面的代碼的Android 6.0

Intent i = new Intent(getApplicationContext(),MyService.class); 
startService(i); 

此代碼工作正常的版本比Android 6.0棉花糖老。但是,在Android 6.0上,服務永遠不會被創建。 startService()正在返回null。我從同一個包中的Activity中調用它。我的清單是這樣的:

<service 
     android:name="com.example.app2.MyService" 
     android:label="@string/app_name"> 
    </service> 

而且我的應用程序沒有崩潰,它只是服務沒有啓動(沒有創建)。

+1

發佈您的MyService類! –

回答

-1

如果您正在訪問服務中的任何設備硬件功能(攝像頭,存儲,位置等)。您需要在棉花糖設備中詢問運行時權限。否則,如果您的編譯SDK版本> = 23,它將會崩潰。請粘貼您的崩潰日誌或服務代碼以作進一步說明。

請檢查鏈接來實現該功能:

https://developer.android.com/training/permissions/index.html

https://developer.android.com/training/permissions/requesting.html

+1

其未崩潰 – PPB

+0

請使用服務實施編輯您的問題 – Nithinjith

+0

什麼是您的編譯SDK版本? – Nithinjith

0

一旦我有同樣的問題。這是一個非常小而愚蠢的錯誤。我在manifest.xml中的<application>標記之外給出了<service>標記。在<application>標籤服務中移動後,它成功啓動。檢查服務名稱中是否有任何拼寫錯誤。希望能幫助到你!

+0

我沒有犯過這個錯誤,它的內部應用程序 – PPB