你必须把你的类PrankSMSReceiver放在Activity类里面,因为应用程序的入口是Activity~~它现在默认你这个PrankSMSReceiver是程序的入口了,而入口必须是Activity类型,所以报错了~~

解决方案 »

  1.   

    重新定义个Acitivity,改一下你的xml,然后把你的broadcast recevier放在Activity里面
      

  2.   


    不就成了Activity的内部类了?是不是一般开发中,都要把新增的类放入这个Activity大类里面?
      

  3.   

    我不是专业做APK的,所以不能给你个确定的答案~~但是从我看的API DEMO中很多程序是这么写的,你也可以单独再写一个.java,在另外的.java中定义你的broadcast,然后在Activity里面引用就好了~~
      

  4.   

    从写c++的风格来看(不太懂java),内部类一般用在隐藏实现上,用得不多~~我想从设计的角度来上应该还是少些嵌套类好~~
      

  5.   

    AndroidManifest.xml中,定义入口为activity,那么启动的类必须继承自activity。在activity中启动一个BroadcastReceiver 。
    不解释,您还是详细看看资料再写代码吧。
      

  6.   

    如果只有这一个java文件的话。你应该这样写才可以,因为继承BroadcastReceiver的声明,在xml中应写在<receiver>中,它不在是一个activity。
    <receiver android:name=".PrankSMSReceiver" > </receiver>
    。回答完毕。