一.设置闹铃
操作(action):
ACTION_SET_ALARM
数据 URI(data):
无
MIME 类型(mimeType):
无
Extra:
EXTRA_HOUR
闹铃的小时。
EXTRA_MINUTES
闹铃的分钟。
EXTRA_MESSAGE
用于标识闹铃的自定义消息。
EXTRA_DAYS
一个 ArrayList,其中包括应重复触发该闹铃的每个周日。 每一天都必须使用 Calendar 类中的某个整型值(如 MONDAY)进行声明。
对于一次性闹铃,无需指定此 extra。
EXTRA_RINGTONE
一个 content: URI,用于指定闹铃使用的铃声,也可指定 VALUE_RINGTONE_SILENT 以不使用铃声。
如需使用默认铃声,则无需指定此 extra。
EXTRA_VIBRATE
一个布尔型值,用于指定该闹铃触发时是否振动。
EXTRA_SKIP_UI
一个布尔型值,用于指定响应闹铃的应用在设置闹铃时是否应跳过其 UI。 若为 true,则应用应跳过任何确认 UI,直接设置指定的闹铃。
二.创建定时器
操作:
ACTION_SET_TIMER
数据 URI:
无
MIME 类型:
无
Extra:
EXTRA_LENGTH
以秒为单位的定时器定时长度。
EXTRA_MESSAGE
用于标识定时器的自定义消息。
EXTRA_SKIP_UI
一个布尔型值,用于指定响应定时器的应用在设置定时器时是否应跳过其 UI。 若为 true,则应用应跳过任何确认 UI,直接启动指定的定时器。
示例:
需添加权限:
三.使用相机
操作(action):
ACTION_IMAGE_CAPTURE 或
ACTION_VIDEO_CAPTURE
数据 URI(data) :
无
MIME 类型(mimeType):
无
Extra:
EXTRA_OUTPUT
相机应用应将照片或视频文件保存到的 URI 位置(Uri 对象形式)。
例子:
操作(action):
ACTION_SET_ALARM
数据 URI(data):
无
MIME 类型(mimeType):
无
Extra:
EXTRA_HOUR
闹铃的小时。
EXTRA_MINUTES
闹铃的分钟。
EXTRA_MESSAGE
用于标识闹铃的自定义消息。
EXTRA_DAYS
一个 ArrayList,其中包括应重复触发该闹铃的每个周日。 每一天都必须使用 Calendar 类中的某个整型值(如 MONDAY)进行声明。
对于一次性闹铃,无需指定此 extra。
EXTRA_RINGTONE
一个 content: URI,用于指定闹铃使用的铃声,也可指定 VALUE_RINGTONE_SILENT 以不使用铃声。
如需使用默认铃声,则无需指定此 extra。
EXTRA_VIBRATE
一个布尔型值,用于指定该闹铃触发时是否振动。
EXTRA_SKIP_UI
一个布尔型值,用于指定响应闹铃的应用在设置闹铃时是否应跳过其 UI。 若为 true,则应用应跳过任何确认 UI,直接设置指定的闹铃。
示例:
public void createAlarm(String message, int hour, int minutes) {
Intent intent = new Intent(AlarmClock.ACTION_SET_ALARM)
.putExtra(AlarmClock.EXTRA_MESSAGE, message)
.putExtra(AlarmClock.EXTRA_HOUR, hour)
.putExtra(AlarmClock.EXTRA_MINUTES, minutes);
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(intent);
}
}
需添加权限:
<uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
二.创建定时器
操作:
ACTION_SET_TIMER
数据 URI:
无
MIME 类型:
无
Extra:
EXTRA_LENGTH
以秒为单位的定时器定时长度。
EXTRA_MESSAGE
用于标识定时器的自定义消息。
EXTRA_SKIP_UI
一个布尔型值,用于指定响应定时器的应用在设置定时器时是否应跳过其 UI。 若为 true,则应用应跳过任何确认 UI,直接启动指定的定时器。
示例:
public void startTimer(String message, int seconds) {
Intent intent = new Intent(AlarmClock.ACTION_SET_TIMER)
.putExtra(AlarmClock.EXTRA_MESSAGE, message)
.putExtra(AlarmClock.EXTRA_LENGTH, seconds)
.putExtra(AlarmClock.EXTRA_SKIP_UI, true);
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(intent);
}
}
需添加权限:
<uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
三.使用相机
操作(action):
ACTION_IMAGE_CAPTURE 或
ACTION_VIDEO_CAPTURE
数据 URI(data) :
无
MIME 类型(mimeType):
无
Extra:
EXTRA_OUTPUT
相机应用应将照片或视频文件保存到的 URI 位置(Uri 对象形式)。
例子:
static final int REQUEST_IMAGE_CAPTURE = 1;
static final Uri mLocationForPhotos;
public void capturePhoto(String targetFilename) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT,
Uri.withAppendedPath(mLocationForPhotos, targetFilename));
if (intent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(intent, REQUEST_IMAGE_CAPTURE);
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
Bitmap thumbnail = data.getParcelable("data");
// Do other work with full size photo saved in mLocationForPhotos
...
}
}
四.选择联系人
操作:
ACTION_PICK
数据 URI:
无
MIME 类型:
Contacts.CONTENT_TYPE
示例 :
static final int REQUEST_SELECT_CONTACT = 1;
public void selectContact() {
Intent intent = new Intent(Intent.ACTION_PICK);
intent.setType(ContactsContract.Contacts.CONTENT_TYPE);
if (intent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(intent, REQUEST_SELECT_CONTACT);
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUEST_SELECT_CONTACT && resultCode == RESULT_OK) {
Uri contactUri = data.getData();
// Do something with the selected contact at contactUri
...
}
}