Java tutorial
/** * Copyright 2014 Zhenguo Jin * <p/> * Licensed under the Apache License, VersionBean 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * <p/> * http://www.apache.org/licenses/LICENSE-2.0 * <p/> * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.jay.util; import android.Manifest; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.net.Uri; import android.support.v4.app.ActivityCompat; /** * */ public final class PhoneUtil { /** * Don't let anyone instantiate this class. */ private PhoneUtil() { throw new Error("Do not need instantiate!"); } /** * ?? * * @param activity Activity * @param phoneNumber ?? */ public static void sendMessage(Context activity, String phoneNumber) { Uri uri = Uri.parse("smsto:" + phoneNumber); Intent it = new Intent(Intent.ACTION_SENDTO, uri); it.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); activity.startActivity(it); } /** * ?? * * @param context * @param phoneNumber ?? */ public static void callPhones(Context context, String phoneNumber) { if (phoneNumber == null || phoneNumber.length() < 1) { return; } Uri uri = Uri.parse("tel:" + phoneNumber); Intent intent = null; //?????? if (ActivityCompat.checkSelfPermission(context, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) { intent = new Intent(Intent.ACTION_DIAL, uri); } else { intent = new Intent(Intent.ACTION_CALL, uri); } intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); } }