java.lang.RuntimeException(已声明但未初始化的变量出错)

我的错误定位了,但是我不知道怎么改,请大神指点哈。
代码如下

 switch (bundle.getInt(PushConsts.CMD_ACTION)) {
 case PushConsts.GET_CLIENTID:
  comm_frame.dev.client_id = bundle.getString("clientid");  <--这里
 }

错误原因是comm_frame.dev.client_id声明了但是未初始化,但是我更改成
comm_frame.dev.client_id = null;
comm_frame.dev.client_id = bundle.getString("clientid");
还是报错,我应该怎么改它才能正常工作呢,请求指点。

错误信息如下

 07-09 19:53:49.434  30483-30483/ixz.fish_help_app E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to start receiver comm.GetuiReceiver: java.lang.NullPointerException
            at android.app.ActivityThread.handleReceiver(ActivityThread.java:2287)
            at android.app.ActivityThread.access$1600(ActivityThread.java:140)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1313)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4935)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.NullPointerException
            at comm.GetuiReceiver.onReceive(GetuiReceiver.java:140)
            at android.app.ActivityThread.handleReceiver(ActivityThread.java:2280)
            at android.app.ActivityThread.access$1600(ActivityThread.java:140)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1313)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4935)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
            at dalvik.system.NativeStart.main(Native Method)

 comm_frame.dev.client_id中comm_frame有没有初始化,报的是空指针。所以看
 comm_frame这个对象和bundle是不是空值就行了

bundle.getString("clientid那你看看你这个bundle里有没有这个字符串代表的数据啊。
或者用Toast打印一下看看。

Unable to start receiver comm.GetuiReceiver

检查AndroidManifest.xml配置文件中是否配置了receiver

zcomm_frame有没有初始化,是空指针

代码太多,我嫌上一部分

 package comm;

public class comm_frame
{

    public class frame_head
    {
        public byte[] dev_id;
        public byte manu_id;
        public byte  dev_type;
        public byte frame_type;
        public short    frame_len;
    }
    static public frame_head frame_head_info;
    。。。
    里面是一些成员变量和实现函数
    }


空指针异常,看看是不是没有初始化啊