2010-11-15 12 views
0

Le problème est que si j'utilise ces deux lignes de code, mon application se ferme inexplicablement et si elle n'est pas utilisée, l'application fonctionne très bien ... y a-t-il un autre moyen d'accéder à maps.class? Ce qui suit est le code utilisé i:

 Intent in = new Intent(BlobCity.this, maps.class) 
     startActivity(in); 

ce qui suit est mon fichier manifeste:

<?xml version="1.0" encoding="utf-8"?> 
    <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="BlobCity.xyz.com" 
    android:versionCode="1" 
    android:versionName="1.0"> 
<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
    <uses-library android:name="com.google.android.maps" /> 
<application android:icon="@drawable/icon" android:label="@string/app_name">  
    <activity android:name=".BlobCity" 
       android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity android:name=".maps" /> 
    </application> 

     </manifest> 

blobcity.java:

public class BlobCity extends Activity 
{ 
    /** Called when the activity is first created. */ 
    Button signIn,register; 
    TextView Blob,City,username,password; 
    EditText eUsername,ePassword; 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     signIn = (Button) findViewById(R.id.signIn); 
     register = (Button) findViewById(R.id.register); 

     Blob = (TextView) findViewById(R.id.blob); 
     City = (TextView) findViewById(R.id.city); 
     username = (TextView) findViewById(R.id.username); 
     password = (TextView) findViewById(R.id.password); 

     eUsername = (EditText) findViewById(R.id.eUsername); 
     ePassword = (EditText) findViewById(R.id.ePassword); 

     signIn.setOnClickListener(new sendUserPass()); 
     register.setOnClickListener(new regPage()); 
    } 

    class sendUserPass implements Button.OnClickListener 
    { 
     public void onClick(View v) 
     { 
      String uname = eUsername.getText().toString(); 
      String pwd = ePassword.getText().toString(); 
      String requestString = ("http://192.168.1.102:8080/BlobCity/RemoteLogin?email="+ uname + "&pwd=" + pwd); 
      String line; 

      try { 
       HttpResponse response = new DefaultHttpClient().execute(new HttpGet(requestString)); 
       InputStream is = response.getEntity().getContent(); 
       BufferedReader br = new BufferedReader(new InputStreamReader(is)); 
       StringBuilder rb = new StringBuilder(""); 

       while ((line=br.readLine()) != null) 
       { 
        rb.append(line) ; 
       } 
       if(rb.toString().equals("0")) 
       { 
        Toast toast = Toast.makeText(getApplicationContext(), "Please enter a valid Username and/or Password!", Toast.LENGTH_LONG); 
        toast.show(); 
        toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0); 

        eUsername.setText(""); 
        ePassword.setText(""); 
       } 
       else 
       { 
        Intent in = new Intent(BlobCity.this, maps.class); 
        startActivity(in); 
        eUsername.setText(""); 
        ePassword.setText(""); 
       } 
      } 
      catch (ClientProtocolException e) 
      { 
       e.printStackTrace(); 
      } 
      catch (IOException e) 
      { 
       e.printStackTrace(); 
      } 
     } 
    } 

    class regPage implements Button.OnClickListener 
    { 
     public void onClick(View v) 
     { 
      Intent browse = new Intent(Intent.ACTION_VIEW , Uri.parse("http://www.blobcity.com")); 
      startActivity(browse); 
     } 
    } 
} 

maps.java:

import android.os.Bundle; 

import com.google.android.maps.MapActivity; 
import com.google.android.maps.MapView; 

public class maps extends MapActivity{ 
    MapView mapView; 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.map); 
     mapView = (MapView) findViewById(R.id.map); 
    } 
    @Override 
    protected boolean isRouteDisplayed() { 
     // TODO Auto-generated method stub 
     return false; 
    } 
} 
+0

Que dit votre journal? Des erreurs? –

+0

non ... l'application s'arrête et force une fermeture lors de l'utilisation de ce morceau de code – heha

+0

log s'il vous plaît ???????? – viv

Répondre

0

Essayez:

Intent in = new Intent(BlobCity.this.getApplicationContext(), maps.class) 
startActivity(in); 
+0

non ... cela ne marche pas travail soit – heha

+0

11-15 21: 59: 28.827: ERREUR/dalvikvm (1399): Impossible de trouver la classe 'maptest.xyz.com.maps', référencée à partir de la méthode maptest.xyz.com.maptest $ 1.cliquez sur – heha

0

nom Activity (Class) doit commencer par lettre majuscule, et au lieu d'utiliser BlobCity.this utiliser uniquement « ce » mot-clé qui renvoie la Context du courant Activity

par exemple

Intent in = new Intent(this, Maps.class) 
startActivity(in); 

font également l'entrée de ce que Activity doit être dans votre fichier AndroidManifest.xml

par exemple

<activity android:name=".Maps"></activity> 

vous pouvez également suivre un tutoriel sur Android Google Maps ici:

http://mobiforge.com/developing/story/using-google-maps-android

+0

que j'ai fait tout ce que vous avez mentionné ci-dessus ... mais cela ne semble pas résoudre le problème. – heha

+0

Si possible, postez votre extrait de code entier ou publiez simplement le journal des erreurs depuis eclipse LogCat view –

+0

Regardez l'extrait – heha

1

Votre balise <uses-library android:name="com.google.android.maps" /> doit être dans la balise <application>!

manifeste doit être comme ceci:

<?xml version="1.0" encoding="utf-8"?> 
    <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="BlobCity.xyz.com" 
    android:versionCode="1" 
    android:versionName="1.0"> 
<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
<application android:icon="@drawable/icon" android:label="@string/app_name">  
    **<uses-library android:name="com.google.android.maps" />** 
    <activity android:name=".BlobCity" 
       android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity android:name=".maps" /> 
</application> 
</manifest>