Android: Null pointer Exception lors de l'appel de nouveau l'intention

Je reçois un message d'erreur lorsque vous essayez d'appeler une nouvelle activité grâce à une intention:

java.lang.NullPointerException: Attempt to invoke virtual method 'android.app.ActivityThread$ApplicationThread android.app.ActivityThread.getApplicationThread()' on a null object reference

Mon Activité a un bouton, et lorsque vous cliquez dessus, il va à cette méthode:

public void onClickChangeActivity() {

        Intent intent = new Intent(context , Details.class);
        startActivity(intent);

    }

public static contexte Contexte est créé dans le début de la classe, puis est instancié dans mon onCreate de contexte = getcontexteapplication();

J'ai aussi essayé de contexte = getBaseContext() et le contexte = RecyclerViewActivity.ce (RecyclerViewActivity est le nom de ma classe)

Toute aide pourquoi je reçois ce NullP? J'ai essayé tout ce qui a trait StackOverFlow réponses ont offert. Aussi, mon Manifeste comprend mon activité.

onClickChangeActivity est appelé de mon RecyclerViewerAdapter classe:

View.OnClickListener getPersonClickListener(final int position) {
        return new View.OnClickListener() {
            @Override
            public void onClick(View view) {


                RecyclerViewActivity recyclerViewActivity = new RecyclerViewActivity();
                recyclerViewActivity.onClickChangeActivity();
            }
        };

Fichier Manifeste:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test.akash.android_test" >
<uses-sdk
android:minSdkVersion="16"
android:targetSdkVersion="21" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="18" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission
android:name="android.permission.READ_EXTERNAL_STORAGE"
android:maxSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- <activity -->
<!-- android:name=".DataFetcher" -->
<!-- android:label="@string/title_activity_data_fetcher" > -->
<!-- </activity> -->
<activity
android:name=".Crime"
android:label="@string/title_activity_crime"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".RecyclerViewActivity"
android:label="@string/title_activity_recycler_view"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".Details"
android:label="@string/title_activity_crime_details"
android:parentActivityName=".RecyclerViewActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="RecyclerViewActivity" />
</activity>
</application>
</manifest>

LogCat:

 java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getPackageName()' on a null object reference
at android.content.ContextWrapper.getPackageName(ContextWrapper.java:132)
at android.content.ComponentName.<init>(ComponentName.java:77)
at android.content.Intent.<init>(Intent.java:4160)
at com.bah.baltimoreopendata.android_baltimoreopendata.RecyclerViewActivity.onClickChangeActivity(RecyclerViewActivity.java:265)
at com.bah.baltimoreopendata.android_baltimoreopendata.RecycleViewAdapter$1.onClick(RecycleViewAdapter.java:121)
at android.view.View.performClick(View.java:4780)
at android.view.View$PerformClick.run(View.java:19866)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
  • avez-vous essayé onClickChangeActivity(contexte)?
  • Utilisation Intent intent = new Intent(RecyclerViewActivity.ce, Details.class); si fonctionne de la variable de contexte doivent être une variable finale et de l'utiliser comme onClickChangeActivity(contexte)
  • Essayez avec context = ce;
  • Juste essayé, même erreur, même si.
  • Juste essayé ça aussi, même erreur.
  • collez vos activités code et manifeste
  • Ok @AkashMagoon post la méthode d'appel onClickChangeActivity méthode, peut-être que votre bouton n'est pas déclarer correctement
  • Ce n'est pas un bouton, c'est une liste de cartes qui sont en cours de création par le biais d'un RecyclerView j'ai écrit. Les cartes sont déclarées correctement et le onClickChangeActivity est d'être touché (j'ai mis de journaux à l'intérieur pour vérifier.)
  • J'ai ajouté ma auditeur ci-dessus
  • Manifeste est au-dessus. Merci!
  • Vérifier ma réponse,dites-moi si ça fonctionne.

InformationsquelleAutor Akash Magoon | 2015-06-25