E/AndroidRuntime( 1823): FATAL EXCEPTION: main
E/AndroidRuntime( 1823): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.settings/com.android.settings.MultiSimSettings}: java.lang.NullPointerException
E/AndroidRuntime( 1823):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2185)
E/AndroidRuntime( 1823):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2210)
E/AndroidRuntime( 1823):  at android.app.ActivityThread.access$600(ActivityThread.java:142)
E/AndroidRuntime( 1823):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1208)
E/AndroidRuntime( 1823):  at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 1823):  at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 1823):  at android.app.ActivityThread.main(ActivityThread.java:4931)
E/AndroidRuntime( 1823):  at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 1823):  at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime( 1823):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
E/AndroidRuntime( 1823):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:558)
E/AndroidRuntime( 1823):  at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime( 1823): Caused by: java.lang.NullPointerException
E/AndroidRuntime( 1823):  at com.android.settings.MultiSimSettings.onCreate(MultiSimSettings.java:107)
E/AndroidRuntime( 1823):  at android.app.Activity.performCreate(Activity.java:5008)
E/AndroidRuntime( 1823):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
E/AndroidRuntime( 1823):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2139)
E/AndroidRuntime( 1823):  ... 11 more

解决方案 »

  1.   

    manifest 中是否添加了 你要打开MultiSimSettings 这个?
      

  2.   

        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);        addPreferencesFromResource(R.xml.multi_sim_settings);        mVoice = (ListPreference) findPreference(KEY_VOICE);
            mVoice.setOnPreferenceChangeListener(this);
            mData = (ListPreference) findPreference(KEY_DATA);
            mData.setOnPreferenceChangeListener(this);
            mSms = (ListPreference) findPreference(KEY_SMS);
            mSms.setOnPreferenceChangeListener(this);
            mConfigSub = (PreferenceScreen) findPreference(KEY_CONFIG_SUB);
            mConfigSub.getIntent().putExtra(CONFIG_SUB, true);
            if (isAirplaneModeOn()) {
                Log.d(TAG, "Airplane mode is ON, grayout the config subscription menu!!!");
                mConfigSub.setEnabled(false);
            }
            for (int subId = 0; subId < SubscriptionManager.NUM_SUBSCRIPTIONS; subId++) {
                subManager.registerForSubscriptionActivated(subId,
                        mHandler, EVENT_SUBSCRIPTION_ACTIVATED, null);
                subManager.registerForSubscriptionDeactivated(subId,
                        mHandler, EVENT_SUBSCRIPTION_DEACTIVATED, null);
            }
        }    @Override
        protected void onResume() {
            super.onResume();        int count = subManager.getActiveSubscriptionsCount();
            if (count == SUBSCRIPTION_DUAL_STANDBY) {
                mVoice.setEntries(R.array.multi_sim_entries_voice);
                mVoice.setEntryValues(R.array.multi_sim_values_voice);
            } else  {
                mVoice.setEntries(R.array.multi_sim_entries_voice_without_prompt);
                mVoice.setEntryValues(R.array.multi_sim_values_voice_without_prompt);
            }
            mIsForeground = true;
            updateState();
        }    @Override
      

  3.   


    这是manifest        <!-- Multi Sim (Subscription) Settings -->
            <activity android:name="MultiSimSettings"
                    android:label="@string/multi_sim_settings_title"
                    android:process="com.android.phone"
                    android:configChanges="mcc|mnc"
                    android:clearTaskOnLaunch="true">
               <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <action android:name="com.android.settings.MULTI_SIM_SETTINGS" />
                    <category android:name="android.intent.category.DEFAULT" />
                    <category android:name="android.intent.category.VOICE_LAUNCH" />
                    <category android:name="com.android.settings.SHORTCUT" />
                </intent-filter>
            </activity>
      

  4.   


    要怎么解决
    具体是哪一行来着  
    subManager.registerForSubscriptionActivated(subId,      //这是107行
      

  5.   


    要怎么解决
    具体是哪一行来着  
    subManager.registerForSubscriptionActivated(subId,      //这是107行
    subManager有初始化么