Android EXCEPTION IRRÉCUPÉRABLE PRINCIPAL: java.lang.RuntimeException: Impossible de démarrer l'activité ComponentInfo
Je suis nubie à la programmation sous android et je sais qu'ici, sur le fourm est beaucoup de pages discrabing solution à mon problème, mais maintenant je perds 2 jours ne comprends toujours pas la solution. S'il vous plaît aider moi!
Tout d'abord, mes erreurs:
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
Mon 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)
{ }
}
}
Mon activity_wifi_scan.xml fichier:
<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>
Et mon fichier AndroidManifest:
<?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>
pls envoyer votre code pour plus de détails
Assurez-vous que votre Activité est définie dans le Manifest.xml fichier. Si elle est définie, merci de poster votre code.
J'ai Résolu ce problème. Veuillez vous référer à cette question pour plus de détails stackoverflow.com/a/16607165/1118886
Assurez-vous que votre Activité est définie dans le Manifest.xml fichier. Si elle est définie, merci de poster votre code.
J'ai Résolu ce problème. Veuillez vous référer à cette question pour plus de détails stackoverflow.com/a/16607165/1118886
OriginalL'auteur wanttobeprofessional | 2013-05-16
Vous devez vous connecter pour publier un commentaire.
Votre nom d'activité est
WifiScan
mais vous avez déclaré que.activity_wifi_scan
changer et essayer de nouveau.Changer le
<activity>
élément:vinoth a fourni la solution, dans AndroidManifest vous devez mettre de l'Activité nom de la classe (que ce soit par rapport à
package
déclaré, soit canonique nom de la classe)OriginalL'auteur vinoth
essayez d'ajouter votre activité
com.example.wifiscan.activity_wifi_scan
à votreAndroidManifest.xml
semble son nom de la classe est mal...Trace ne se plaignent pas manifeste
Si j'ajoute com.exemple.wifiscan.activity_wifi_scan place de .activity_wifi_scan sur le bouth android:name tags, ça affiche erreur dans la console:
J'ai essayé, ne fonctionne pas, merci quand même.
quelle est l'erreur??
OriginalL'auteur AITAALI_ABDERRAHMANE
Vous n'avez pas initialiser votre activité dans votre fichier manifeste
OriginalL'auteur Jithu
Solution 1: Essayez de nettoyer votre projet,de redémarrer eclipse.
Solution 2: Vérifiez le fichier de manifeste.
Solution 3: Vérifier si le tag et tag dans le fichier de manifeste de match jusqu'à l'emplacement correct de l'activité.
Il serait utile si vous pouvez poster votre code.
OriginalL'auteur Kunal Khaire
J'ai eu cette erreur et après des heures de recherche j'ai sorti c'était mon erreur (Oh! Mais c'est impossible! LOL).
Le problème pour moi est que j'ai ajouté le
android:theme="@style/Theme.appcompat.Light"
à la disposition XMLs au lieu de le manifeste de l'application.Dès que j'ai supprimé les attributs de la mise en page et a remplacé l'un sur l'manifeste tout a fonctionné comme prévu.
OriginalL'auteur rcdmk