解决方案 »

  1.   

    下面是Mainfest文件
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="xwg.mg.phonelistener"
        android:versionCode="1"
        android:versionName="1.0" >    <uses-sdk
            android:minSdkVersion="8"
            android:targetSdkVersion="18" />    <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme" >
            
            <service android:name=".MusicService"/>
            
            <receiver android:name=".BootBroadcastReceive"> 
                <intent-filter>
                    <action android:name="android.intent.action.BOOT_COMPLETED"/>
                </intent-filter>           
            </receiver>
        </application>
        
        <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
        <!-- 在SDCard中创建与删除文件权限 -->
        <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
        <!-- 往SDCard写入数据权限 -->
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
        <!-- 访问internet权限 -->
        <uses-permission android:name="android.permission.INTERNET"/>
        <uses-permission android:name="android.permission.RECORD_AUDIO"/></manifest>
      

  2.   

    BootBroadcastReceiver
    改为
    MyBootBroadcastReceiver
      

  3.   

    你的LogCat提示什么?是ClassNotFound还是?
      

  4.   

    下面是运行时候的logcat
    03-22 02:50:08.739: D/dalvikvm(527): Not late-enabling CheckJNI (already on)
    03-22 02:50:10.049: E/MusicService(527): MusicServiceActivity
    03-22 02:50:10.270: D/gralloc_goldfish(527): Emulator without GPU emulation detected.
    03-22 02:50:13.509: E/MusicService(527): MusicSerice onCreate()
    03-22 02:50:13.619: E/MusicService(527): MusicSerice onStart()
    03-22 02:50:24.529: E/MusicService(527): MusicSerice onBind()
    03-22 02:50:34.779: E/ActivityThread(527): Activity xwg.MS.musicservice.MainActivity has leaked ServiceConnection xwg.MS.musicservice.MainActivity$1@4134e160 that was originally bound here
    03-22 02:50:34.779: E/ActivityThread(527): android.app.ServiceConnectionLeaked: Activity xwg.MS.musicservice.MainActivity has leaked ServiceConnection xwg.MS.musicservice.MainActivity$1@4134e160 that was originally bound here
    03-22 02:50:34.779: E/ActivityThread(527):  at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:935)
    03-22 02:50:34.779: E/ActivityThread(527):  at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:830)
    03-22 02:50:34.779: E/ActivityThread(527):  at android.app.ContextImpl.bindService(ContextImpl.java:1117)
    03-22 02:50:34.779: E/ActivityThread(527):  at android.content.ContextWrapper.bindService(ContextWrapper.java:370)
    03-22 02:50:34.779: E/ActivityThread(527):  at xwg.MS.musicservice.MainActivity$2.onClick(MainActivity.java:60)
    03-22 02:50:34.779: E/ActivityThread(527):  at android.view.View.performClick(View.java:3480)
    03-22 02:50:34.779: E/ActivityThread(527):  at android.view.View$PerformClick.run(View.java:13983)
    03-22 02:50:34.779: E/ActivityThread(527):  at android.os.Handler.handleCallback(Handler.java:605)
    03-22 02:50:34.779: E/ActivityThread(527):  at android.os.Handler.dispatchMessage(Handler.java:92)
    03-22 02:50:34.779: E/ActivityThread(527):  at android.os.Looper.loop(Looper.java:137)
    03-22 02:50:34.779: E/ActivityThread(527):  at android.app.ActivityThread.main(ActivityThread.java:4340)
    03-22 02:50:34.779: E/ActivityThread(527):  at java.lang.reflect.Method.invokeNative(Native Method)
    03-22 02:50:34.779: E/ActivityThread(527):  at java.lang.reflect.Method.invoke(Method.java:511)
    03-22 02:50:34.779: E/ActivityThread(527):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
    03-22 02:50:34.779: E/ActivityThread(527):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
    03-22 02:50:34.779: E/ActivityThread(527):  at dalvik.system.NativeStart.main(Native Method)
    03-22 02:50:34.799: E/MusicService(527): MusicSerice onUnbind()
    03-22 02:52:34.649: W/ActivityThread(574): Application xwg.MS.musicservice is waiting for the debugger on port 8100...
    03-22 02:52:34.749: I/System.out(574): Sending WAIT chunk
    03-22 02:52:35.139: I/dalvikvm(574): Debugger is active
    03-22 02:52:35.172: I/System.out(574): Debugger has connected
    03-22 02:52:35.172: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:35.369: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:35.569: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:35.769: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:35.979: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:36.179: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:36.379: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:36.579: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:36.779: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:36.989: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:37.193: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:37.447: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:37.713: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:37.959: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:38.205: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:38.452: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:38.709: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:38.953: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:39.169: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:39.441: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:39.649: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:39.901: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:40.165: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:40.389: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:40.607: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:40.831: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:41.051: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:41.280: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:41.555: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:41.799: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:42.071: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:42.304: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:42.503: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:42.748: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:42.989: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:43.205: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:43.410: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:43.623: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:43.869: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:44.090: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:44.301: I/System.out(574): waiting for debugger to settle...
    03-22 02:52:44.533: I/System.out(574): debugger has settled (1471)
    03-22 02:52:46.669: E/MusicService(574): MusicServiceActivity
    03-22 02:52:47.729: D/gralloc_goldfish(574): Emulator without GPU emulation detected.
    03-22 02:55:16.170: E/MusicService(574): MusicSerice onCreate()
    03-22 02:55:16.270: E/MusicService(574): MusicSerice onBind()
    03-22 02:55:31.319: E/ActivityThread(574): Activity xwg.MS.musicservice.MainActivity has leaked ServiceConnection xwg.MS.musicservice.MainActivity$1@4134f348 that was originally bound here
    03-22 02:55:31.319: E/ActivityThread(574): android.app.ServiceConnectionLeaked: Activity xwg.MS.musicservice.MainActivity has leaked ServiceConnection xwg.MS.musicservice.MainActivity$1@4134f348 that was originally bound here
    03-22 02:55:31.319: E/ActivityThread(574):  at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:935)
    03-22 02:55:31.319: E/ActivityThread(574):  at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:830)
    03-22 02:55:31.319: E/ActivityThread(574):  at android.app.ContextImpl.bindService(ContextImpl.java:1117)
    03-22 02:55:31.319: E/ActivityThread(574):  at android.content.ContextWrapper.bindService(ContextWrapper.java:370)
    03-22 02:55:31.319: E/ActivityThread(574):  at xwg.MS.musicservice.MainActivity$2.onClick(MainActivity.java:60)
    03-22 02:55:31.319: E/ActivityThread(574):  at android.view.View.performClick(View.java:3480)
    03-22 02:55:31.319: E/ActivityThread(574):  at android.view.View$PerformClick.run(View.java:13983)
    03-22 02:55:31.319: E/ActivityThread(574):  at android.os.Handler.handleCallback(Handler.java:605)
    03-22 02:55:31.319: E/ActivityThread(574):  at android.os.Handler.dispatchMessage(Handler.java:92)
    03-22 02:55:31.319: E/ActivityThread(574):  at android.os.Looper.loop(Looper.java:137)
    03-22 02:55:31.319: E/ActivityThread(574):  at android.app.ActivityThread.main(ActivityThread.java:4340)
    03-22 02:55:31.319: E/ActivityThread(574):  at java.lang.reflect.Method.invokeNative(Native Method)
    03-22 02:55:31.319: E/ActivityThread(574):  at java.lang.reflect.Method.invoke(Method.java:511)
    03-22 02:55:31.319: E/ActivityThread(574):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
    03-22 02:55:31.319: E/ActivityThread(574):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
    03-22 02:55:31.319: E/ActivityThread(574):  at dalvik.system.NativeStart.main(Native Method)
    03-22 02:55:31.379: E/MusicService(574): MusicSerice onUnbind()
    03-22 02:55:31.429: E/MusicService(574): MusicSerice onDestroy()
      

  5.   

    目测是MusicService   start之后没有解绑的问题。
      

  6.   

    我把我的MusicService的完整代码放上来,麻烦帮我看下,谢谢
    package xwg.mg.phonelistener;import android.app.Service;
    import android.content.Intent;
    import android.os.IBinder;
    import android.media.MediaPlayer;
    import android.util.Log;
    import android.widget.Toast;public class MusicService extends Service {
    //为日志工具设置标签
    //private static String TAG = "MusicService";
    //定义音乐播放器变量
    private MediaPlayer mPlayer;
    //private String path="";

    //该服务不存在需要被创建时被调用,不管startService()还是bindService()都会启动时调用该方法
    @Override
    public void onCreate() {
    super.onCreate();

    mPlayer = MediaPlayer.create(getApplicationContext(), R.raw.pm);
    mPlayer.start();
    //设置可以重复播放
    mPlayer.setLooping(true);
    }

    @Override
    public void onStart(Intent intent, int startId) {
    //Toast.makeText(this, "MusicSevice onStart()"
    // , Toast.LENGTH_SHORT).show();
    //Log.e(TAG, "MusicSerice onStart()");

    mPlayer.start();

    super.onStart(intent, startId);
    }
    @Override
    public void onDestroy() {
    //Toast.makeText(this, "MusicSevice onDestroy()"
    // , Toast.LENGTH_SHORT).show();
    //Log.e(TAG, "MusicSerice onDestroy()");

    mPlayer.stop();

    super.onDestroy();
    }
    //其他对象通过bindService 方法通知该Service时该方法被调用
    @Override
    public IBinder onBind(Intent intent) {
    //Toast.makeText(this, "MusicSevice onBind()"
    // , Toast.LENGTH_SHORT).show();
    //Log.e(TAG, "MusicSerice onBind()");

    mPlayer.start();

    return null;
    }
    //其它对象通过unbindService方法通知该Service时该方法被调用
    @Override
    public boolean onUnbind(Intent intent) {
    //Toast.makeText(this, "MusicSevice onUnbind()"
    // , Toast.LENGTH_SHORT).show();
    //Log.e(TAG, "MusicSerice onUnbind()");

    mPlayer.stop();

    return super.onUnbind(intent);
    }

    }