参考这篇文章,添加了一个service :http://alone99.javaeye.com/blog/760467编译报错:
符号: 类 IBelyService
位置: 软件包 android.os
import android.os.IBelyService;
                 ^
frameworks/base/services/java/com/android/server/BelyService.java:5: 软件包 IBelyService 不存在
public class BelyService extends IBelyService.Stub {
                                             ^
frameworks/base/services/java/com/android/server/SystemServer.java:103: 无法将 android.os.ServiceManager 中的 addService(java.lang.String,android.os.IBinder) 应用于 (java.lang.String,com.android.server.BelyService)
    ServiceManager.addService("BelyService", new BelyService(context));
                  ^
注意:某些输入文件使用或覆盖了已过时的 API。
注意:要了解详细信息,请使用 -Xlint:deprecation 重新编译。
注意:某些输入文件使用了未经检查或不安全的操作。
注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。
3 错误
make: *** [out/target/common/obj/JAVA_LIBRARIES/services_intermediates/classes-full-debug.jar] 错误 41
 
自己认为:可能是import android.os.IBelyService; 必须import一个class文件,而IbelyService是以java文件形式存在的没有被编译成class文件,
请问 这该怎么办?  
小弟是新手,谢谢。

解决方案 »

  1.   

    不存在就是不存在
    如果在还报这错,
    我最原始的办法就是重启Eclipse
      

  2.   

    建议你不要这样写addService("BelyService", new BelyService(context));
    有时候很容易就错了。
    最好还是把new BelyService(context)拿出来设一个变量,
    例如人家的
    BelyService bs = new BelyService(context);
    ServiceManager.addService("BelyService", bs); 
    你改下试试。
      

  3.   

    I'd like to try. Thanks
      

  4.   

    能否把你的makefile发上来,感觉是你没有编译Aidl文件。
      

  5.   

    在framework/base的android.mk文件中 增加我声明的AIDL文件  其他系统服务也是这么写的 不应该有单独的Makefile文件  因为系统自带的其他服务也没有
      

  6.   

    make: *** [out/target/common/obj/JAVA_LIBRARIES/services_intermediates/classes-full-debug.jar] 错误 41
    这个东西好熟悉,,,,最近编译老是报错