2017-06-05 1 views
1

J'ai l'erreur Type illégal 'void' dans une application Java Android.Type illégal 'void' dans Android Java Class

L'erreur vient du CreateFolder private void() et public void onRequestPermissionsResult bloc de code.

Je ne sais pas s'il manque des importations ou s'il y a une erreur avec la classe publique Berechtigungen extends AppCompatActivity code-line.

Si quelqu'un connaît une réponse à cela, s'il vous plaît écrivez-le, merci.

Mon code:

package barsoftware.suedtirolpointer; 

import android.content.pm.PackageManager; 
import android.support.v4.app.ActivityCompat; 
import android.support.v7.app.AppCompatActivity; 
import android.Manifest; 
import android.content.pm.PackageManager; 


public class Berechtigungen extends AppCompatActivity { 

    final int REQ_CODE_EXTERNAL_STORAGE_PERMISSION = 45; 

    public void GPS() { 
     if(ActivityCompat.checkSelfPermission(Berechtigungen.this, 
       Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED){ 
      // Anweisung 
     } else { 
      ActivityCompat.requestPermissions(Berechtigungen.this,new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE}, REQ_CODE_EXTERNAL_STORAGE_PERMISSION); 
     } 
    } 
}; 


private void createFolder(){ 
    File ordner = new File(Environment.getExternalStorageDirectory(), "TestOrdner"); 
    ordner.mkdirs(); 
    Toast.makeText(getApplicationContext(), "Ordner erstellt", Toast.LENGTH_SHORT).show(); 
} 

@Override 
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { 
    super.onRequestPermissionsResult(requestCode, permissions, grantResults); 

    if(requestCode == REQ_CODE_EXTERNAL_STORAGE_PERMISSION && grantResults.length >0 &&grantResults[0] == PackageManager.PERMISSION_GRANTED){ 
     createFolder(); 
    } 
} 
} 
+3

Peut-être que la parenthèse ne correspondent pas. Quel est le '; 'à la fin de la méthode GPS? – Ollaw

+1

Vous avez une accolade supplémentaire. Effacer '};' – Cheticamp

+1

Formatez votre code pour mettre en évidence le problème avec vos accolades, actuellement 'createFolder' et' onRequestPermissionsResult' sont en dehors de la classe. En utilisant un IDE mettrait ces erreurs en évidence pour vous en un instant –

Répondre

3

Il est une erreur de SINTAX, il devrait ressembler à ceci:

package barsoftware.suedtirolpointer; 

import android.content.pm.PackageManager; 
import android.support.v4.app.ActivityCompat; 
import android.support.v7.app.AppCompatActivity; 
import android.Manifest; 
import android.content.pm.PackageManager; 

public class Berechtigungen extends AppCompatActivity { 

    final int REQ_CODE_EXTERNAL_STORAGE_PERMISSION = 45; 

    public void GPS() { 
     if (ActivityCompat.checkSelfPermission(Berechtigungen.this, 
     Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED) { 
      // Anweisung 
     } else { 
      ActivityCompat.requestPermissions(Berechtigungen.this, 
      new String[] { Manifest.permission.WRITE_EXTERNAL_STORAGE }, 
      REQ_CODE_EXTERNAL_STORAGE_PERMISSION); 
     } 
    } 

    private void createFolder() { 
     File ordner = new File(Environment.getExternalStorageDirectory(), "TestOrdner"); 
     ordner.mkdirs(); 
     Toast.makeText(getApplicationContext(), "Ordner erstellt", Toast.LENGTH_SHORT).show(); 
    } 

    @Override 
    public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { 
     super.onRequestPermissionsResult(requestCode, permissions, grantResults); 

     if (requestCode == REQ_CODE_EXTERNAL_STORAGE_PERMISSION 
     && grantResults.length > 0 
     && grantResults[0] == PackageManager.PERMISSION_GRANTED) { 
      createFolder(); 
     } 
    } 
} 
+1

Oui il y a un '};' spurious avant 'private void createFolder' de sorte que le compilateur suppose une déclaration de seconde classe' classe privée/enum/interface'. –