Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 方法OnCreate(bundle)从未被调用,应用程序崩溃_Java_Android - Fatal编程技术网

Java 方法OnCreate(bundle)从未被调用,应用程序崩溃

Java 方法OnCreate(bundle)从未被调用,应用程序崩溃,java,android,Java,Android,我一直在尝试制作一个使用锁屏概念的应用程序,作为试运行,我创建了一个应用程序,在单击给定按钮时锁屏,我使用了基本概念,这是我的Java代码 package com.example.gaurav.locknowtest2; import android.app.Activity; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import an

我一直在尝试制作一个使用锁屏概念的应用程序,作为试运行,我创建了一个应用程序,在单击给定按钮时锁屏,我使用了基本概念,这是我的Java代码

package com.example.gaurav.locknowtest2;
import android.app.Activity;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.app.admin.DevicePolicyManager;
import android.app.admin.DeviceAdminReceiver;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends DeviceAdminReceiver{
    public class controller extends Activity{
        DevicePolicyManager dpm;
        ComponentName comname;
        Button b1;
        TextView display;
        public void OnCreate(Bundle xyz){
            super.onCreate(xyz);
            dpm=(DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);
            comname=new ComponentName(this,MainActivity.class);
            setContentView(R.layout.activity_main);
            b1=(Button)findViewById(R.id.start);
            display=(TextView)findViewById(R.id.xyz);
            b1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
                    intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, comname);
                    startActivityForResult(intent,1);
                    display.setText("just to test the method");

                }
            });
        }
        @Override
        protected void onActivityResult(int requestCode, int resultCode,
                                        Intent data) {
            super.onActivityResult(requestCode, resultCode, data);

            switch (requestCode) {
                case 1:
                    if (resultCode == Activity.RESULT_OK) {
                        dpm.lockNow();
                    } else {
                        Log.i("DeviceAdminSample", "Administration enable FAILED!");
                    }
                    return;
            }
        }
    }
}
接下来是我的清单,我认为这是造成所有问题的原因

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.gaurav.locknowtest2" >

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity$controller"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <receiver
            android:name=".MainActivity"
            android:permission="android.permission.BIND_DEVICE_ADMIN" >
        <meta-data
            android:name="android.app.device_admin"
            android:resource="@xml/device_admin_sample" />

        <intent-filter>
            <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
        </intent-filter>
            </receiver>
    </application>

</manifest>


我需要在本周之前完成这项工作,所以请看一下。

您的方法写得不正确

public void OnCreate(Bundle xyz){
你有一个大写字母O 应该是这样的:

    @Override
    public void onCreate(Bundle savedInstanceState) {
...
}

你的方法写得不正确

public void OnCreate(Bundle xyz){
你有一个大写字母O 应该是这样的:

    @Override
    public void onCreate(Bundle savedInstanceState) {
...
}

你的方法写得不正确

public void OnCreate(Bundle xyz){
你有一个大写字母O 应该是这样的:

    @Override
    public void onCreate(Bundle savedInstanceState) {
...
}

你的方法写得不正确

public void OnCreate(Bundle xyz){
你有一个大写字母O 应该是这样的:

    @Override
    public void onCreate(Bundle savedInstanceState) {
...
}

扩展
Activity
的类不能是另一个类的内部类,因为android系统需要能够在没有另一个类实例的情况下创建
Activity
类的新实例。您的
controller
类是
MainActivity
的内部类,因此如果没有
MainActivity
的实例,就无法实例化

看看这个答案:


另外,正如其他人指出的,您在
onCreate
中有一个输入错误。这意味着您已经创建了一个完全独立的方法,而不是在创建时重写
onCreate
。但是,这并不能解释应用程序崩溃的原因。(您可以编写一个
活动
类,该类不重写
onCreate
,并且在不引发任何异常的情况下工作。)扩展
Activity
的类不能是另一个类的内部类,因为android系统需要能够在没有另一个类的实例的情况下创建
Activity
类的新实例。您的
controller
类是
MainActivity
的内部类,因此如果没有
MainActivity
的实例,就无法实例化

看看这个答案:


另外,正如其他人指出的,您在
onCreate
中有一个输入错误。这意味着您已经创建了一个完全独立的方法,而不是在创建时重写
onCreate
。但是,这并不能解释应用程序崩溃的原因。(您可以编写一个
活动
类,该类不重写
onCreate
,并且在不引发任何异常的情况下工作。)扩展
Activity
的类不能是另一个类的内部类,因为android系统需要能够在没有另一个类的实例的情况下创建
Activity
类的新实例。您的
controller
类是
MainActivity
的内部类,因此如果没有
MainActivity
的实例,就无法实例化

看看这个答案:


另外,正如其他人指出的,您在
onCreate
中有一个输入错误。这意味着您已经创建了一个完全独立的方法,而不是在创建时重写
onCreate
。但是,这并不能解释应用程序崩溃的原因。(您可以编写一个
活动
类,该类不重写
onCreate
,并且在不引发任何异常的情况下工作。)扩展
Activity
的类不能是另一个类的内部类,因为android系统需要能够在没有另一个类的实例的情况下创建
Activity
类的新实例。您的
controller
类是
MainActivity
的内部类,因此如果没有
MainActivity
的实例,就无法实例化

看看这个答案:


另外,正如其他人指出的,您在
onCreate
中有一个输入错误。这意味着您已经创建了一个完全独立的方法,而不是在创建时重写
onCreate
。但是,这并不能解释应用程序崩溃的原因。(您可以编写一个
活动
类,该类不重写
onCreate
,并且可以在不引发任何异常的情况下工作。)

Java区分大小写,因此命名您的方法

public void OnCreate(Bundle bundle) {
不是

protected void onCreate(Bundle bundle) {
使用
@Override
注释确保您实际上正在重写一个方法


另外,
public class controller extends Activity{
应该是
public static class controller extends Activity{
,除了根据Java命名约定,类应该以C大写字母开头之外。

Java是区分大小写的,因此命名方法

public void OnCreate(Bundle bundle) {
不是

protected void onCreate(Bundle bundle) {
使用
@Override
注释确保您实际上正在重写一个方法


另外,
public class controller extends Activity{
应该是
public static class controller extends Activity{
,除了根据Java命名约定,类应该以C大写字母开头之外。

Java是区分大小写的,因此命名方法

public void OnCreate(Bundle bundle) {
不是

protected void onCreate(Bundle bundle) {
使用
@Override
注释确保您实际上正在重写一个方法


另外,
public class controller extends Activity{
应该是
public static class controller extends Activity{
,除了根据Java命名约定,类应该以C大写字母开头之外。

Java是区分大小写的,因此命名方法

public void OnCreate(Bundle bundle) {
不是

protected void onCreate(Bundle bundle) {
使用
@Override
注释确保您实际上正在重写一个方法

另外,
public class controller extends Activity{
应该是
public static class controller extends Activity{
除了根据Java命名约定,类应该以C大写字母开头之外。

请发布C