0

Avec mes connaissances de base sur Android, j'essaie de jouer avec les API vocales de Google et de suivre l'exemple here et d'écrire une application qui me permettrait d'appeler un numéro codé en dur. Malheureusement, je reçois une erreur en disant < identifier> attendu, donc je suis incapable de vérifier si mon application fonctionne même. Quelqu'un peut-il voir ce qui manque ici et aussi si je vais même dans la bonne direction avec ma pensée et mon code.Erreur lors de l'exécution du code API Google Voice

fichier Java:

public class MyVoiceActivity extends Activity { 
class Confirm extends VoiceInteractor.ConfirmationRequest { 
    public Confirm(String ttsPrompt, String visualPrompt) { 
     VoiceInteractor.Prompt prompt = new VoiceInteractor.Prompt(
       new String[] {ttsPrompt}, visualPrompt); 
     super(prompt, null); 
    } 

    @Override public void onConfirmationResult(boolean confirmed, Bundle null) { 
     if (confirmed) { 
      call(); 
     } 
     finish(); 
    } 

}; 

@Override public void onResume() { 
    if (isVoiceInteractionRoot()) { 
     call(); 
    } 

    Intent intent = new Intent(this, MyVoiceActivity.class); 
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    startActivity(intent); 
    finish(); 
} 

private void call() { 
    try { 

     final Intent callIntent = new Intent(Intent.ACTION_CALL); 
     callIntent.setData(Uri.parse("tel:12345678")); 
     startActivity(callIntent); 
    } catch (ActivityNotFoundException activityException) { 

    } 
    } 
} 

fichier AndroidManifest:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.ccvoice.bt.examplevoice"> 

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme"> 

    <activity 
     android:name=".MyVoiceActivity" > 
    <intent-filter> 
     <action android:name="android.intent.action.CALL" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
     <category android:name="android.intent.category.VOICE" /> 
    </intent-filter> 

    </activity> 

</application> 

</manifest> 

L'identifiant <> erreur requise je reçois est dans cette ligne du code:

public void onConfirmationResult(boolean confirmed, Bundle null) { 

Remerciez vous à l'avance.

Répondre

0

null est un mot réservé et ne peut pas être utilisé comme un identificateur (par exemple le nom d'un paramètre). Utilisez un nom différent pour votre paramètre Bundle à cette méthode.

public void onConfirmationResult(boolean confirmed, Bundle bundle) { 
+0

Merci d'avoir corrigé cette erreur mais j'ai encore quelques erreurs. 'Erreur: (16, 63) error: constructeur ConfirmationRequest dans la classe ConfirmationRequest ne peut pas être appliqué à des types donnés; requis: rapide, Fagot trouvé: aucun argument raison: listes d'arguments réels et formels diffèrent length' 'Erreur: (19, 18) Erreur: appel à super doit être la première déclaration constructor' ' Erreur: L'exécution a échoué pour la tâche ': app: compileDebugJavaWithJavac'. > La compilation a échoué; voir la sortie d'erreur du compilateur pour plus de détails. – Anish