의도에 대한 질문이 있습니다 … SMS 앱을 시작하려고합니다 …
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setType("vnd.android-dir/mms-sms");
int flags = Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP |
Intent.FLAG_ACTIVITY_CLEAR_TOP;
intent.setFlags(flags);
intent.setData(Uri.parse("content://sms/inbox"));
context.startActivity(intent);
그래서, 당신은 내 의도에 너무 많은 것들을 넣었 음을 알 수 있지만, 내가 할 수있는 방법을 모르기 때문입니다 … 감사합니다.
답변
SMS 활동을 시작하려면 다음과 같이하십시오.
Intent sendIntent = new Intent(Intent.ACTION_VIEW);
sendIntent.setData(Uri.parse("sms:"));
당신은 당신의 자신의 메시지를 채울 여분을 추가 할 수 있습니다
sendIntent.putExtra("sms_body", x);
그런 다음 의도로 Activity를 시작하십시오.
startActivity(sendIntent);
답변
Intent smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("address", "12125551212");
smsIntent.putExtra("sms_body","Body of Message");
startActivity(smsIntent);
답변
Android 버전이 Kitkat 이상인 경우 사용자는 기본 SMS 애플리케이션을 변경할 수 있습니다. 이 방법은 기본 SMS 앱을 가져오고 기본 SMS 앱을 시작합니다.
private void sendSMS() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) // At least KitKat
{
String defaultSmsPackageName = Telephony.Sms.getDefaultSmsPackage(this); // Need to change the build to API 19
Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setType("text/plain");
sendIntent.putExtra(Intent.EXTRA_TEXT, "text");
if (defaultSmsPackageName != null)// Can be null in case that there is no default, then the user would be able to choose
// any app that support this intent.
{
sendIntent.setPackage(defaultSmsPackageName);
}
startActivity(sendIntent);
}
else // For early versions, do what worked for you before.
{
Intent smsIntent = new Intent(android.content.Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("address","phoneNumber");
smsIntent.putExtra("sms_body","message");
startActivity(smsIntent);
}
}
답변
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.setType("vnd.android-dir/mms-sms");
startActivity(intent);
그게 당신이 필요한 전부입니다.
답변
다른 활동에서 SMS 작성 활동을 시작하고 전화 번호와 SMS 텍스트도 전달해야하는 경우이 코드를 사용하십시오.
Uri sms_uri = Uri.parse("smsto:+92xxxxxxxx");
Intent sms_intent = new Intent(Intent.ACTION_SENDTO, sms_uri);
sms_intent.putExtra("sms_body", "Good Morning ! how r U ?");
startActivity(sms_intent);
참고 : 여기 sms_body
와는 smsto:
그래서 여기주의, 더 SMS의 작성 활동에서 텍스트와 전화를 인식하지위한 키입니다.
답변
다음은 SMS를 보내야하는 전화 번호로 미리 채워진 SMS 활동을 여는 코드입니다. 이것은 장치뿐만 아니라 에뮬레이터에서도 잘 작동합니다 .
Intent smsIntent = new Intent(Intent.ACTION_SENDTO);
smsIntent.addCategory(Intent.CATEGORY_DEFAULT);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.setData(Uri.parse("sms:" + phoneNumber));
startActivity(smsIntent);
답변
사용하다
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setClassName("com.android.mms", "com.android.mms.ui.ConversationList");