gpt4 book ai didi

android - 如果设备是平板电脑如何打开 Skype 否则进行调用操作

转载 作者:搜寻专家 更新时间:2023-11-01 08:00:04 24 4
gpt4 key购买 nike

1) 当我的应用程序启动时,它会显示带有调用按钮的警报对话框。如果它是手机,我必须允许用户调用。如果它是平板电脑,则单击按钮时 skype 应该打开,如果 skype 未安装打开游戏商店。

public class MainActivity extends Activity {
private Button call_btn, cancle_btn;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
call_btn = (Button) findViewById(R.id.call_button);
cancle_btn = (Button) findViewById(R.id.cancel_button);
call_btn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:123456789"));
startActivity(callIntent);

}
});

}

最佳答案

使用此方法,您实际上可以确定它是平板电脑还是手机:

public static boolean isTablet(Context context) {
return (context.getResources().getConfiguration().screenLayout
& Configuration.SCREENLAYOUT_SIZE_MASK)
>= Configuration.SCREENLAYOUT_SIZE_LARGE;
}

因此,您已经编写的代码应该可以很好地让手机使用电话拨号器调用电话。对于平板电脑,您可以使用此方法调用 Skype 电话:

public static void skype(String number, Context ctx) {
try {
Intent sky = new Intent("android.intent.action.VIEW");
sky.setData(Uri.parse("skype:" + number));
ctx.startActivity(sky);
} catch (ActivityNotFoundException e) {
//Skype not installed
}

}

ActivityNotFoundException 可以被捕获,这意味着 Skype 没有安装。

因此您可以使用此代码将用户带到 Playstore:

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id=com.skype.raider" )));

P.S:如果您的唯一需求是判断是平板电脑还是手机,上述方法可行。如果您想查找 Sim 是否存在或任何此类内容,您可以使用其他答案中的代码。

关于android - 如果设备是平板电脑如何打开 Skype 否则进行调用操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22472647/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com