添加"Define the Remote Input"代码时出错



当我尝试添加"定义远程输入"代码以获得语音输入时,它会在"reply_label"one_answers"EXTRA_VOICE_REPLY"行中给我错误(试图替换它们,仍然错误):

package com.wear.myapp;
import android.app.Activity;
import android.app.Fragment;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;
import android.preview.support.v4.app.NotificationManagerCompat;
import android.preview.support.wearable.notifications.RemoteInput;
import android.support.v4.app.NotificationCompat;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.activity_main);
        int notificationId = 001;
        // Build intent for notification content
        Intent viewIntent = new Intent(this, MainActivity.class); 
        viewIntent.putExtra("Helllo", "Hello Wear !");
        PendingIntent viewPendingIntent =
                PendingIntent.getActivity(this, 0, viewIntent, 0);
        NotificationCompat.Builder notificationBuilder =
                new NotificationCompat.Builder(this)
                .setSmallIcon(R.drawable.ic_launcher) 
                .setContentTitle("My App") 
                .setContentText("Hello Wear !")
                .setContentIntent(viewPendingIntent);
        // Get an instance of the NotificationManager service
        NotificationManagerCompat notificationManager =
                NotificationManagerCompat.from(this);
        // Build the notification and issues it with notification manager.
        notificationManager.notify(notificationId, notificationBuilder.build()); 
        if (savedInstanceState == null) { 
            getFragmentManager().beginTransaction()
                    .add(R.id.container, new PlaceholderFragment()).commit();
         // Key for the string that's delivered in the action's intent
            private static final String EXTRA_VOICE_REPLY = "extra_voice_reply";
            String replyLabel = getResources().getString(R.string.reply_label);
            RemoteInput remoteInput = new RemoteInput.Builder(EXTRA_VOICE_REPLY)
                    .setLabel(replyLabel)
                    .build();    
        }  
    } 
    /**
     * A placeholder fragment containing a simple view.
     */
    public static class PlaceholderFragment extends Fragment {
        public PlaceholderFragment() {
        }
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            View rootView = inflater.inflate(R.layout.fragment_main, container,
                    false);
            return rootView;
        }
    }

}

我再次尝试解决它,但没有解决,有解决方案吗?

private static final String EXTRA_VOICE_REPLY = "extra_voice_reply";是一个常量声明,不能放在这里。将其移动到MainActivity extends Activity之后的行中,如下所示:

public class MainActivity extends Activity {
    private static final String EXTRA_VOICE_REPLY = "extra_voice_reply";
    // ...

您还应该阅读基础java教程(基本语法)

最新更新