Android FATAL EXCEPTION MAIN: java.lang.RuntimeException: Cannot start ComponentInfo activity

I am new to android programming, and I know here, at the four-month level, many pages that decompose the solution for my problem, but now I lose 2 days until I get the solution. Please help me!

First of all, my mistakes are:

01-02 11:08:27.314: D/AndroidRuntime(1045): Shutting down VM 01-02 11:08:27.314: W/dalvikvm(1045): threadid=1: thread exiting with uncaught exception (group=0x409e61f8) 01-02 11:08:27.324: E/AndroidRuntime(1045): FATAL EXCEPTION: main 01-02 11:08:27.324: E/AndroidRuntime(1045): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.wifiscan/com.example.wifiscan.activity_wifi_scan}: java.lang.ClassNotFoundException: com.example.wifiscan.activity_wifi_scan 01-02 11:08:27.324: E/AndroidRuntime(1045): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1880) 01-02 11:08:27.324: E/AndroidRuntime(1045): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981) 01-02 11:08:27.324: E/AndroidRuntime(1045): at android.app.ActivityThread.access$600(ActivityThread.java:123) 01-02 11:08:27.324: E/AndroidRuntime(1045): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147) 01-02 11:08:27.324: E/AndroidRuntime(1045): at android.os.Handler.dispatchMessage(Handler.java:99) 01-02 11:08:27.324: E/AndroidRuntime(1045): at android.os.Looper.loop(Looper.java:137) 01-02 11:08:27.324: E/AndroidRuntime(1045): at android.app.ActivityThread.main(ActivityThread.java:4424) 01-02 11:08:27.324: E/AndroidRuntime(1045): at java.lang.reflect.Method.invokeNative(Native Method) 01-02 11:08:27.324: E/AndroidRuntime(1045): at java.lang.reflect.Method.invoke(Method.java:511) 01-02 11:08:27.324: E/AndroidRuntime(1045): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 01-02 11:08:27.324: E/AndroidRuntime(1045): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 01-02 11:08:27.324: E/AndroidRuntime(1045): at dalvik.system.NativeStart.main(Native Method) 01-02 11:08:27.324: E/AndroidRuntime(1045): Caused by: java.lang.ClassNotFoundException: com.example.wifiscan.activity_wifi_scan 01-02 11:08:27.324: E/AndroidRuntime(1045): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 01-02 11:08:27.324: E/AndroidRuntime(1045): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 01-02 11:08:27.324: E/AndroidRuntime(1045): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 01-02 11:08:27.324: E/AndroidRuntime(1045): at android.app.Instrumentation.newActivity(Instrumentation.java:1023) 01-02 11:08:27.324: E/AndroidRuntime(1045): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1871) 01-02 11:08:27.324: E/AndroidRuntime(1045): ... 11 more 

My WifiScan:

  public class WifiScan extends Activity implements OnClickListener { WifiManager wifi; ListView lv; TextView textStatus; Button buttonScan; int size = 0; List<ScanResult> results; String ITEM_KEY = "key"; ArrayList<HashMap<String, String>> arraylist = new ArrayList<HashMap<String, String>>(); SimpleAdapter adapter; /* Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_wifi_scan); buttonScan = (Button) findViewById(R.id.scan); buttonScan.setOnClickListener(this); lv = (ListView)findViewById(R.id.list); wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); if (wifi.isWifiEnabled() == false) { Toast.makeText(getApplicationContext(), "wifi is disabled..making it enabled", Toast.LENGTH_LONG).show(); wifi.setWifiEnabled(true); } wifi.startScan(); //js dopisal // this.adapter = new SimpleAdapter(WiFiDemo.this, arraylist, R.layout.row, new String[] { ITEM_KEY }, new int[] { R.id.list_value }); lv.setAdapter(this.adapter); registerReceiver(new BroadcastReceiver() { @Override public void onReceive(Context c, Intent intent) { results = wifi.getScanResults(); size = results.size(); } }, new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)); } public void onClick(View view) { arraylist.clear(); wifi.startScan(); Toast.makeText(this, "Scanning...." + size, Toast.LENGTH_SHORT).show(); try { size = size - 1; while (size >= 0) { HashMap<String, String> item = new HashMap<String, String>(); item.put(ITEM_KEY, results.get(size).SSID + " " + results.get(size).capabilities); arraylist.add(item); size--; adapter.notifyDataSetChanged(); } } catch (Exception e) { } } } 

My activity_wifi_scan.xml file:

 <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/TableLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".WifiScan" > <Button android:id="@+id/scan" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="scan" android:text="SCAN" /> <ListView android:id="@+id/list" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </TableLayout> 

And my AndroidManifest file:

 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.wifiscan" android:versionCode="1" android:versionName="1.0" > <uses-premission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.WAKE_LOCK"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.INTERNET"></uses-permission> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission> <uses-permission android:name="android.permission.READ_PHONE_STATE"> </uses-permission> <uses-permission android:name="android.permission.INTERNET"> </uses-permission> <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".activity_wifi_scan"> <intent-filter> <action android:name="android.intent.action.MAIN"></action> <category android:name="android.intent.category.LAUNCHER"></category> <data /> </intent-filter> </activity> <receiver android:name=".activity_wifi_scan"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER"/> <action android:name="android.net.wifi.WIFI_STATE_CHANGED"/> </intent-filter> </receiver> </application> </manifest> 
+4
source share
5 answers

The name of your activity is WifiScan , but you declared it as .activity_wifi_scan change it and try again.

Change the <activity> element to:

 <activity android:name=".WifiScan"> <intent-filter> <action android:name="android.intent.action.MAIN"></action> <category android:name="android.intent.category.LAUNCHER"></category> <data /> </intent-filter> </activity> 
+2
source

try adding your activity com.example.wifiscan.activity_wifi_scan to AndroidManifest.xml

0
source

You did not initialize your activity in the manifest file

0
source

Solution 1. Try to clean the project by restarting eclipse. Solution 2. Check the manifest file. Solution 3: Verify that the tags and tags in the manifest file match the correct activity location.

This will help if you can post your code.

0
source

I had this error, and after several hours of searching I went out, it was my mistake (Oh, but this is impossible! LOL).

The problem for me was that I added android:theme="@style/Theme.appcompat.Light" to the XML layouts instead of the application manifest.

As soon as I remove the attributes from the layouts and replace one in the manifest, everything worked as expected.

0
source

Source: https://habr.com/ru/post/1481133/


All Articles