android.content.ContextWrapper.getPackageName ANDROID 处的 java.lang.NullPointerException

2024-04-19

嘿,我想从 MainActivity 启动一个 Activity,但不是在 oncreate 方法中启动。

public void awe()
{
    Intent myIntent = new Intent(MainActivity.this, Awesome.class);
    MainActivity.this.startActivity(myIntent);
}

另一个类调用方法 awe() ,我得到的是崩溃并且

05-25 04:06:51.034: E/AndroidRuntime(7161): FATAL EXCEPTION: main
05-25 04:06:51.034: E/AndroidRuntime(7161): java.lang.NullPointerException
05-25 04:06:51.034: E/AndroidRuntime(7161):     at android.content.ContextWrapper.getPackageName(ContextWrapper.java:151)
05-25 04:06:51.034: E/AndroidRuntime(7161):     at android.content.ComponentName.<init>(ComponentName.java:106)
05-25 04:06:51.034: E/AndroidRuntime(7161):     at android.content.Intent.<init>(Intent.java:2895)
05-25 04:06:51.034: E/AndroidRuntime(7161):     at package name.MainActivity.awe(MainActivity.java:215)

有人知道我能做什么吗?

主要活动

public class MainActivity extends Activity implements OnClickListener { 
// (variable stuff)
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

          buttonE = (Button) findViewById(R.id.buttonEASY); 
          buttonM = (Button) findViewById(R.id.buttonMED);

// here I do all that button stuff for the layout
}



    public void onClick(View arg0) {
        System.out.println("click");
        if (arg0==buttonE)  {

                 int checkedRadioButton = radioGroup1.getCheckedRadioButtonId();
                                 String radioButtonSelected = "";

                                 switch (checkedRadioButton) {

                                  case R.id.radio0 : radioButtonSelected = "radiobutton1";
                                  Toast.makeText(getApplicationContext(), "Easy, 10 selected", Toast.LENGTH_SHORT).show();
                                  setContentView(R.layout.raten);

// Button stuff, again.


}



public void awe()
{   Intent tutorial = new Intent(MainActivity.this, Awesome.class); 
    if (tutorial != null) { startActivity(tutorial); } 

}

Easy.java

这里没什么重要的,就是我提到 awe() 的地方:

if (s==max+1){System.out.println("AWESOME!"); MainActivity mA = new MainActivity(); mA.awe();}

很棒的.java

public class Awesome extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.awesome);
    }

我希望我现在发布了所有重要的内容


问题可能是,当您调用 awe() 方法时,MainActivity 尚未完全初始化,并且 Activity 的内部 Context 为 null。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

android.content.ContextWrapper.getPackageName ANDROID 处的 java.lang.NullPointerException 的相关文章

  • map.setMyLocationEnabled(true) 的真正作用是什么

    我正在设置 map setMyLocationEnabled true 但我想知道这到底是做什么的 我知道的 我在地图的右上角看到一个 定位我 按钮 我在地图上看到一个代表我当前位置的蓝色图标 这是我的担忧 我正在编写一个位置感知应用程序
  • Phonegap从Java代码获取本地存储值?

    我已经使用phonegap在客户端保存了数据本地存储 http docs phonegap com en 1 2 0 phonegap storage storage md html现在我想用java代码访问保存的数据 这可能吗 我怎样才能
  • 如何在android中的视频视图中获取视频的总长度

    我有一个问题 我想获取在视频视图中运行的视频的总长度 为此我正在使用视频视图的 getDuration 方法 但当我将其与 currentPosition 进行比较时 它总是返回 1 实际上我希望如果视频的当前位置等于视频的总长度那么它应该
  • OTP(令牌)应自动从消息中读取

    我正在开发一个 Android 应用程序 其中服务器发送 OTP 用户需要在应用程序中输入此 OTP 才能注册我的应用程序 我想要的是 我的应用程序应该能够自动读取服务器发送的 OTP 我怎样才能实现这个目标 在这方面的任何帮助或指导将不胜
  • 设置文本并从剪贴板获取文本[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 在Android中 我需要一些代码来
  • 如何使用Android读取Service中的加速度计数据

    通常 在 Android 中 我们通过重写 OnSensorChanged 函数来读取 Activity 中的加速度计数据 我很好奇我们如何在 服务 中做到这一点 谢谢 文森特 实际上OnSensorChanged SensorEvent
  • 如何在android中的google(设备)本机应用程序上添加自定义按钮?

    我想在谷歌 设备 的本机应用程序上添加一个按钮 例如 谷歌地图 使用此按钮我想打开我的应用程序 我已经做了一些相关工作 Using 无障碍服务 https developer android com reference android ac
  • Android SDK 中缺少 Gradle(使用 cordova + ionic)

    是的 我搜索了这个 但没有搜索到任何内容 只是有关 ANDROID HOME 路径的信息 但就我而言 我认为这不是真正的问题 当我尝试做的时候ionic build android我收到这个错误 错误 在 android sdk 中找不到
  • C++ OpenCV imread 无法在 Android 中工作

    我正在尝试读取 C 代码中的图像 LOGD Loading image s n inFile c str Mat img imread inFile CV LOAD IMAGE GRAYSCALE CV Assert img data 0
  • Android - GC 滞后于列表视图滚动“更大”的图像

    在列表视图中 我想在列表条目上绘制一个图像 这 20 张图像必须缩放以填充垂直模式的宽度 手机分辨率为 480 x 800 像素 SGS2 图像分辨率为 400x400 大小约为 100KB 我已将图像放在可绘制文件夹中 当我滚动列表时 它
  • Android Studio 中过时的 Kotlin 运行时警告

    下载并安装最新的 Kotlin 插件后 我有过时的 Kotlin 运行时来自 Android Studio 的警告告诉我 您在 kotlin stdlib 1 1 2 库中的 Kotlin 运行时版本是 1 1 2 而插件版本是1 1 2
  • 安装应用程序时复制 SD 卡上的文本文件?

    我正在开发一款安卓游戏 我想在用户第一次安装游戏时将文本文件复制到外部 SD 卡 文本文件对于正确运行游戏非常重要 我怎样才能做到这一点 我应该将文本文件放在 Eclipse 源项目中的哪里 以便当我构建 apk 文件时 我的文本文件也会捆
  • 离子和电容器 - Android 启动画面响应能力

    Context 这与闪屏图像响应能力有关 根据我的研究 它之所以发生是因为缺少文档电容器文档 启动画面 https capacitorjs com docs apis splash screen Problem 当实现电容器的闪屏插件时 问
  • 在 Android 应用程序中读取 CSV 文件

    我正在开发一个概念验证应用程序 以便我可以在我正在制作的更大的应用程序中实现该功能 我对 Java 和 Android 开发有点陌生 但希望这个问题不会太简单或太复杂 基本上 我试图从 CSV 文件中读取字符串列表 并使其可用于在应用程序的
  • Proguard错误android,无法访问jar文件

    这是我第一次使用 progurad 在导出签名的 apk 时出现以下错误 错误 无法访问 jarfile lib proguard jar 我取消注释了 proguard config 行 To enable ProGuard to shr
  • onCreateOptionsMenu(菜单菜单)是什么

    方法中的Menu和menu两个参数是什么onCreateOptionsMenu Menu menu 以及如何使用这个方法 我还有一个问题为什么this参数用于 Intent intent new Intent this DisplayMes
  • Android studio - 如何使用 gradle 中的可执行 jar 文件

    所以我有一个 custom rules xml 文件 我试图在 gradle 中重建 到目前为止 我对其他所有事情都没有问题 但我试图完成的最后一部分是在我使用 gradle 构建过程生成的未签名 apk 上运行一个特殊的 apk 签名工具
  • 错误:升级到 lombok 1.16.2 后包 javax.annotation 不存在

    我的 android 项目使用 lombok 1 16 0 构建得很好 但是一旦我将依赖项更改为目标 1 16 2 我在使用 lombok 注释的任何地方都会收到以下错误 Error 20 1 error package javax ann
  • onActivityresult 数据为空

    这是我的相机应用程序 我想在其中捕获图像并裁剪它 但它拍照保存在我的 myimage 目录中 但不执行裁剪功能 请我需要帮助 我是这个领域的新人 这是我的相机开源代码 Intent intent new Intent MediaStore
  • Eclipse 中的 Android 框架源码级调试

    Android 框架的 Java 源代码可从 source android com 获取 我可以下载它们并将其提供给 Eclipse 以便在调试时进入框架方法吗 更好的是 有人知道 Eclipse 插件可以根据需要自动从 Android G

随机推荐