Android Studio包名称未解析且无法获取上下文

时间:2015-10-02 17:12:44

标签: java android

创建了一个应用程序,想要显示一个toast但是再次出现了sh * tty错误,说明无法在空对象引用上调用上下文(是的,它是在一个不同的空白中,是的,它是' s在ui线程上运行)我尝试将android:name添加到androidmanifest中的应用程序区域(包名称为noahvt.vremote),vremote为红色,表示该符号无法解析,这真的很奇怪,因为这是正确的名字!

这是我的android清单的一部分:

<?xml version="1.0" encoding="utf-8"?>

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<application
    android:name="noahvt.vremote" <---- vremote is in red
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/Theme.AppCompat.Light.NoActionBar" >

这是我创建的非工作节目吐司无效:

 public void Toasts()
{
    final String RecToast = g.GetToast();

    MainActivity.this.runOnUiThread(new Runnable() {
        @Override
        public void run() {
            final Context context = getApplicationContext();
            Toast.makeText(context , RecToast, Toast.LENGTH_LONG).show();


        }
    });
}

上下文给出了一个nullpointerexception,这让我觉得它与android有关:name

BTW这是堆栈跟踪:

java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Context android.content.Context.getApplicationContext()' on a null object reference
        at android.content.ContextWrapper.getApplicationContext(ContextWrapper.java:106)
        at noahvt.vremote.MainActivity$3.run(MainActivity.java:169)
        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:5289)
        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:904)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699)
        at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:115)

1 个答案:

答案 0 :(得分:0)

愿此链接可以帮助您Android: Including multiple Java Packages to Manifest

同时检查活动顶部的import语句。