-1

So i'm new to all this coding in mobile programming I was just following some tutorials on how to do things here and there I'm trying to make a button that makes it so the screen goes to the next activity Heres the MainActivity.java

    package com.test1;


import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    private Button button;

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

        button = findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                openSecondActivity();
            }
        });
    }
    public void openSecondActivity()
    {
        Intent i = new Intent(MainActivity.this,SecondActivity.class);
        startActivity(i);
    }
}

Then here is the activity_main.xml file

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.test1.MainActivity">

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="178dp"
        android:layout_marginEnd="174dp"
        android:layout_marginBottom="704dp"
        android:text="First Activity" />

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="158dp"
        android:layout_marginEnd="159dp"
        android:layout_marginBottom="622dp"
        android:backgroundTint="#DEDFE5"
        android:text="Submit" />
</RelativeLayout>

The 2nd activity.java

package com.testing1;


import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;

public class SecondActivity extends AppCompatActivity {

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

and lastly the 2nd activity.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.test1.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="181dp"
        android:layout_marginTop="333dp"
        android:layout_marginEnd="172dp"
        android:layout_marginBottom="379dp"
        android:textSize="22sp"
        android:text="Second Activity" />

</RelativeLayout>

As for the logcat

2022-04-22 20:51:32.034 29305-29305/? I/com.test1: Late-enabling -Xcheck:jni
2022-04-22 20:51:32.053 29305-29305/? E/com.test1: Unknown bits set in runtime_flags: 0x8000
2022-04-22 20:51:32.238 29305-29305/com.test1 I/Perf: Connecting to perf service.
2022-04-22 20:51:32.256 29305-29305/com.test1 I/FeatureParser: can't find beryllium.xml in assets/device_features/,it may be in /system/etc/device_features
2022-04-22 20:51:32.269 29305-29305/com.test1 E/libc: Access denied finding property "ro.vendor.df.effect.conflict"
2022-04-22 20:51:32.271 29305-29369/com.test1 E/Perf: Fail to get file list com.test1
2022-04-22 20:51:32.271 29305-29369/com.test1 E/Perf: getFolderSize() : Exception_1 = java.lang.NullPointerException: Attempt to get length of null array
2022-04-22 20:51:32.272 29305-29369/com.test1 E/Perf: Fail to get file list com.test1
2022-04-22 20:51:32.272 29305-29369/com.test1 E/Perf: getFolderSize() : Exception_1 = java.lang.NullPointerException: Attempt to get length of null array
2022-04-22 20:51:32.272 29305-29369/com.test1 E/Perf: Fail to get file list oat
2022-04-22 20:51:32.272 29305-29369/com.test1 E/Perf: getFolderSize() : Exception_1 = java.lang.NullPointerException: Attempt to get length of null array
2022-04-22 20:51:32.316 29305-29305/com.test1 D/ForceDarkHelper: updateByCheckExcludeList: pkg: com.test1 activity: com.test1.MainActivity@a644dc6
2022-04-22 20:51:32.317 29305-29305/com.test1 D/ForceDarkHelper: updateByCheckExcludeList: pkg: com.test1 activity: com.test1.MainActivity@a644dc6
2022-04-22 20:51:32.321 29305-29305/com.test1 D/ForceDarkHelper: updateByCheckExcludeList: pkg: com.test1 activity: com.test1.MainActivity@a644dc6
2022-04-22 20:51:32.322 29305-29305/com.test1 I/chatty: uid=10414(com.test1) identical 1 line
2022-04-22 20:51:32.323 29305-29305/com.test1 D/ForceDarkHelper: updateByCheckExcludeList: pkg: com.test1 activity: com.test1.MainActivity@a644dc6
2022-04-22 20:51:32.325 29305-29305/com.test1 W/com.test1: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (greylist, reflection, allowed)
2022-04-22 20:51:32.325 29305-29305/com.test1 W/com.test1: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (greylist, reflection, allowed)
2022-04-22 20:51:32.327 29305-29305/com.test1 D/ForceDarkHelper: updateByCheckExcludeList: pkg: com.test1 activity: com.test1.MainActivity@a644dc6
2022-04-22 20:51:32.329 29305-29305/com.test1m D/ForceDarkHelper: updateByCheckExcludeList: pkg: com.test1 activity: com.test1.MainActivity@a644dc6
2022-04-22 20:51:32.338 29305-29305/com.test1 D/ForceDarkHelper: updateByCheckExcludeList: pkg: com.test1 activity: com.test1.MainActivity@a644dc6
2022-04-22 20:51:32.391 29305-29371/com.test1 I/AdrenoGLES: QUALCOMM build                   : e541a88, I20154638fb
    Build Date                       : 09/15/20
    OpenGL ES Shader Compiler Version: EV031.27.05.01
    Local Branch                     : 
    Remote Branch                    : refs/tags/AU_LINUX_ANDROID_LA.UM.8.3.R1.10.00.00.520.058
    Remote Branch                    : NONE
    Reconstruct Branch               : NOTHING
2022-04-22 20:51:32.391 29305-29371/com.test1 I/AdrenoGLES: Build Config                     : S P 8.0.11 AArch64
2022-04-22 20:51:32.394 29305-29371/com.test1 I/AdrenoGLES: PFP: 0x016ee187, ME: 0x00000000
2022-04-22 20:51:32.395 29305-29371/com.test1 W/AdrenoUtils: <ReadGpuID_from_sysfs:194>: Failed to open /sys/class/kgsl/kgsl-3d0/gpu_model
2022-04-22 20:51:32.395 29305-29371/com.test1 W/AdrenoUtils: <ReadGpuID:218>: Failed to read chip ID from gpu_model. Fallback to use the GSL path
2022-04-22 20:51:32.411 29305-29371/com.test1 W/Gralloc3: mapper 3.x is not supported
2022-04-22 20:51:34.978 29305-29305/com.test1 I/Timeline: Timeline: Activity_launch_request time:198697094
2022-04-22 20:51:34.980 29305-29305/com.test1 D/AndroidRuntime: Shutting down VM
2022-04-22 20:51:34.982 29305-29305/com.test1 E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.test1, PID: 29305
    android.content.ActivityNotFoundException: Unable to find explicit activity class {com.test1/com.test1.SecondActivity}; have you declared this activity in your AndroidManifest.xml?
        at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2064)
        at android.app.Instrumentation.execStartActivity(Instrumentation.java:1720)
        at android.app.Activity.startActivityForResult(Activity.java:5258)
        at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:597)
        at android.app.Activity.startActivityForResult(Activity.java:5216)
        at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:583)
        at android.app.Activity.startActivity(Activity.java:5587)
        at android.app.Activity.startActivity(Activity.java:5555)
        at com.test1.MainActivity.openSecondActivity(MainActivity.java:30)
        at com.test1.MainActivity$1.onClick(MainActivity.java:23)
        at android.view.View.performClick(View.java:7185)
        at com.google.android.material.button.MaterialButton.performClick(MaterialButton.java:1131)
        at android.view.View.performClickInternal(View.java:7162)
        at android.view.View.access$3500(View.java:819)
        at android.view.View$PerformClick.run(View.java:27684)
        at android.os.Handler.handleCallback(Handler.java:883)
        at android.os.Handler.dispatchMessage(Handler.java:100)
        at android.os.Looper.loop(Looper.java:224)
        at android.app.ActivityThread.main(ActivityThread.java:7562)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
2022-04-22 20:51:35.015 29305-29305/com.test1 I/Process: Sending signal. PID: 29305 SIG: 9

as for the AndroidManifest.xml

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

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.test1">
        <activity
            android:name=".MainActivity"
            android:exported="true"
            android:label="@string/app_name"
            android:theme="@style/Theme.test1.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
Pxyke
  • 33
  • 4
  • `Unable to find explicit activity class {com.test1/com.test1.SecondActivity}; have you declared this activity in your AndroidManifest.xml?` – a_local_nobody Apr 22 '22 at 13:17
  • you went to all the trouble to find the stack trace, you should at least try to understand and research it too, sometimes it can give you an exact answer on what you should be doing – a_local_nobody Apr 22 '22 at 13:19
  • Im sorry for not trying to research more about it I don't have a clue what to do at all even with this information as I'm completely new to this – Pxyke Apr 22 '22 at 13:23
  • https://stackoverflow.com/a/46410469/4729721 – a_local_nobody Apr 22 '22 at 13:24
  • all activities should be registered in the AndroidManifest file, you'll find plenty of examples on how to add a new one – a_local_nobody Apr 22 '22 at 13:25

2 Answers2

1

As the stacktrace shows you, you need to register your Activity to the AndroidManifest.

In the application tag you need to add a new entry, something like this:

<activity
     android:name=".SecondActivity"
     android:label="some title"
     android:theme="@style/AppTheme.NoActionBar" />

For more info, look at these links:

Manifest overview
Activity options

SvdTweel
  • 172
  • 1
  • 2
  • 11
-1

Check this code

package com.test1;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
   Button button;
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      button = (Button) findViewById(R.id.button);
      button.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            openNewActivity();
         }
      });
   }
   public void openNewActivity(){
      Intent intent = new Intent(this, SecondActivity.class);
      startActivity(intent);
   }
}

SecondActivity

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class SecondActivity extends AppCompatActivity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_second);
   }
}
  • 1
    Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers [in the help center](/help/how-to-answer). – Community Apr 22 '22 at 13:04
  • Sadly the code does not help with the issue I'm having. The app constantly crashes every time I press the submit button – Pxyke Apr 22 '22 at 13:05
  • Please check the answer again try to edit SecondActivity – Harsh Singh Apr 22 '22 at 13:09
  • "Unable to find explicit activity class {com.test1/com.test1.SecondActivity}; have you declared this activity in your AndroidManifest.xml?" – a_local_nobody Apr 22 '22 at 13:20