Java 如何从google活动中获取配置文件名并在其他活动布局中显示

Java 如何从google活动中获取配置文件名并在其他活动布局中显示,java,android,api,Java,Android,Api,您好,我正在尝试使用google sdk构建一个应用程序,我想在我有EditText的其他活动中显示配置文件名称。 例如:-GoogleActivity.java到UserInformation.java protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_user_

您好,我正在尝试使用google sdk构建一个应用程序,我想在我有EditText的其他活动中显示配置文件名称。 例如:-GoogleActivity.java到UserInformation.java

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_user_signin);
        signInToolbar = (Toolbar) findViewById(R.id.toolbar_signin);
        setSupportActionBar(signInToolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setDisplayShowHomeEnabled(true);
        signInToolbar.setNavigationIcon(R.drawable.back_arrow);

        OtpVerify = (TextView) findViewById(R.id.OtpVerification);
        editTextUsername = (EditText) findViewById(R.id.editTextName);
        editTextEmail = (EditText) findViewById(R.id.editTextEmail);

        signInToolbar.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                onBackPressed();
            }
        });
        getSupportActionBar().setTitle(Html.fromHtml("<font color='#FFFFFF'>Sign Up</font>"));
        OtpVerify.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                OtpVerification();
            }
        });


    }

    private void OtpVerification() {

        LayoutInflater inflater = getLayoutInflater();
        View OtpDialongScreen = inflater.inflate(R.layout.otpverification, null);
        AlertDialog.Builder alert = new AlertDialog.Builder(this);
        alert.setView(OtpDialongScreen);
        alert.setCancelable(false);
        final AlertDialog dialog = alert.create();
        dialog.show();

    }


}
我已经成功创建了google登录,所以现在我想从GoogleActivity.java获取配置文件名,并想在UserInformation.java中显示 这是我的USerInformation.java代码

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_user_signin);
        signInToolbar = (Toolbar) findViewById(R.id.toolbar_signin);
        setSupportActionBar(signInToolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setDisplayShowHomeEnabled(true);
        signInToolbar.setNavigationIcon(R.drawable.back_arrow);

        OtpVerify = (TextView) findViewById(R.id.OtpVerification);
        editTextUsername = (EditText) findViewById(R.id.editTextName);
        editTextEmail = (EditText) findViewById(R.id.editTextEmail);

        signInToolbar.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                onBackPressed();
            }
        });
        getSupportActionBar().setTitle(Html.fromHtml("<font color='#FFFFFF'>Sign Up</font>"));
        OtpVerify.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                OtpVerification();
            }
        });


    }

    private void OtpVerification() {

        LayoutInflater inflater = getLayoutInflater();
        View OtpDialongScreen = inflater.inflate(R.layout.otpverification, null);
        AlertDialog.Builder alert = new AlertDialog.Builder(this);
        alert.setView(OtpDialongScreen);
        alert.setCancelable(false);
        final AlertDialog dialog = alert.create();
        dialog.show();

    }


}
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u user\u signin);
signInToolbar=(工具栏)findViewById(R.id.Toolbar\u signin);
设置支持操作栏(符号工具栏);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
signInToolbar.setNavigationIcon(右可绘制的后箭头);
OtpVerify=(TextView)findViewById(R.id.OtpVerification);
editTextUsername=(EditText)findViewById(R.id.editTextName);
editTextEmail=(EditText)findViewById(R.id.editTextEmail);
signInToolbar.setNavigationOnClickListener(新视图.OnClickListener()){
@凌驾
公共void onClick(视图v){
onBackPressed();
}
});
getSupportActionBar().setTitle(Html.fromHtml(“注册”);
OtpVerify.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
OTP验证();
}
});
}
私有无效OTP验证(){
LayoutInflater充气机=getLayoutInflater();
查看OtpDialongScreen=充气机。充气(R.layout.OTP验证,空);
AlertDialog.Builder alert=新建AlertDialog.Builder(此);
警报。设置视图(OtpDialongScreen);
警报。可设置可取消(错误);
最终AlertDialog=alert.create();
dialog.show();
}
}

有人能帮我在EditText中显示配置文件名吗?您可以使用以下代码从Google API获取用户信息。或有关更多详细信息,请参阅:

现在,用户名在变量personName中。成功登录后,应用程序将不会进入登录页面,因此最好将用户信息保存在SharedReference中。创建一个类AppUtils.java

public class AppUtils {

private final static String SHARED_PREFS="AppUtils";
private SharedPreferences prefs;
private SharedPreferences.Editor edit;

public AppUtils(Context context) {
    prefs = context.getSharedPreferences(SHARED_PREFS, Context.MODE_PRIVATE);
}

public void setUserName(String name) {

    edit = prefs.edit();
    edit.putString("name", name);
    edit.commit();
}

public String getUserName() {
    return prefs.getString("name", "");
}
}

因此,在GoogleActivity.java类中,获取用户名后,通过调用函数setUserName()将其设置为共享首选项对象

无论何时,只要您想调用函数getUserName()。就你而言:

AppUtils utils=new AppUtils(UserInformation.this);

editTextUsername = (EditText) findViewById(R.id.editTextName);
editTextEmail = (EditText) findViewById(R.id.editTextEmail);

editTextUsername.setText(utils.getUserName());

因此,基本上您希望将字符串从GoogleActivity传递到UserInformation activity,对吗???@Firdoesh Khan通过intent.putExtra(“name”,“xyz”)传递您的名字,并在所需的activity中获得它Yes@himanshu1496 u是正确的。。我怎样才能做到这一点呢?用户信息。这个你能指导这是什么吗?这是该活动的背景。Context是应用程序/对象当前状态的上下文。它提供诸如解析资源、获取对数据库和首选项的访问等服务。android应用程序具有活动。它就像是应用程序当前运行环境的句柄。活动对象继承上下文对象。有关更多信息,请参阅链接:
AppUtils utils=new AppUtils(UserInformation.this);

editTextUsername = (EditText) findViewById(R.id.editTextName);
editTextEmail = (EditText) findViewById(R.id.editTextEmail);

editTextUsername.setText(utils.getUserName());