【问题标题】:Lauch a call Intent from a fragment and get back to it从片段启动呼叫意图并返回到它
【发布时间】:2019-06-21 13:47:06
【问题描述】:

我很难启动拨号电话意图,然后在按下返回按钮时返回应用程序,下面的通话功能在正常活动中完美运行,但在从片段中调用时关闭应用程序。

    call.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (driverFoundID != null) {
                    String id = driverFoundID;
                    final DatabaseReference getDrivesrnameAndMobile = 

FirebaseDatabase. getInstance().getReference().child("Users").child("Drivers").child(id);
                    getDrivesrnameAndMobile.addListenerForSingleValueEvent(new ValueEventListener() {
                        @Override
                        public void onDataChange(DataSnapshot dataSnapshot) {
                            if (dataSnapshot.child("name").exists() && dataSnapshot.child("mobile").exists()) {
                                String name = dataSnapshot.child("name").getValue().toString();
                                String mobile = dataSnapshot.child("mobile").getValue().toString();
                                dialContactPhone(mobile);
                            } else {
                                snackbarShow("Driver credentials missing");
                            }
                        }

                        @Override
                        public void onCancelled(DatabaseError databaseError) {
                            snackbarShow(databaseError.getMessage().toString());
                        }
                    });
                } else {
                    snackbarShow("Driver credentials missing");
                }
            }
        });

//Funtion
private void dialContactPhone(final String phoneNumber) {
startActivity(new Intent(Intent.ACTION_DIAL, Uri.fromParts("tel", 
phoneNumber, null)));
}

【问题讨论】:

    标签: java android android-intent fragment call


    【解决方案1】:

    对于一个片段,

    private void dialContactPhone(final String phoneNumber) {
    
    Intent intent = new Intent(Intent.ACTION_DIAL);
    intent.setData(Uri.parse("tel:" + phoneNumber));
    getActivity().startActivity(intent);
    
    }
    

    【讨论】:

    • 它仍然不起作用@Sanjay,我已经更新了我的问题以显示调用函数的上下文。
    • 我想还有什么问题。这是打开拨号盘的代码。请找到问题所在,然后再次编辑问题。据我所知,问题不是故意的代码
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-27
    • 1970-01-01
    相关资源
    最近更新 更多