답변:
이렇게하면 이메일, whatsapp 등에서 선택할 수 있습니다.
try {
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(Intent.EXTRA_SUBJECT, "My application name");
String shareMessage= "\nLet me recommend you this application\n\n";
shareMessage = shareMessage + "https://play.google.com/store/apps/details?id=" + BuildConfig.APPLICATION_ID +"\n\n";
shareIntent.putExtra(Intent.EXTRA_TEXT, shareMessage);
startActivity(Intent.createChooser(shareIntent, "choose one"));
} catch(Exception e) {
//e.toString();
}
지원 라이브러리의 ShareCompat 클래스 도 사용할 수 있습니다 .
ShareCompat.IntentBuilder.from(activity)
.setType("text/plain")
.setChooserTitle("Chooser title")
.setText("http://play.google.com/store/apps/details?id=" + activity.getPackageName())
.startChooser();
https://developer.android.com/reference/android/support/v4/app/ShareCompat.html
&hl
URL에 태그를 추가하는 것이 간단하다는 것을 알고 있지만 setLang과 같은 라이브러리에서 사용할 수 있는지 궁금합니다.
도마,
사용자에게 market://
앱의 세부 정보 페이지로 직접 연결되는 링크 를 제공 할 수 있습니다. 다음은 developer.android.com에서 가져온 것입니다.
응용 프로그램의 세부 정보 페이지로드
Android 마켓에서 모든 애플리케이션에는 사용자에게 애플리케이션의 개요를 제공하는 세부 정보 페이지가 있습니다. 예를 들어 페이지에는 개발자가 제공 한 경우 앱에 대한 간단한 설명과 사용중인 앱의 스크린 샷, 사용자의 피드백 및 개발자에 대한 정보가 포함됩니다. 세부 정보 페이지에는 사용자가 애플리케이션의 다운로드 / 구매를 트리거 할 수있는 "설치"버튼도 포함되어 있습니다.
사용자에게 특정 애플리케이션을 추천하려는 경우 애플리케이션은 사용자를 애플리케이션의 세부 정보 페이지로 직접 안내 할 수 있습니다. 이를 위해 애플리케이션은 다음 형식의 URI 및 쿼리 매개 변수를 포함하는 ACTION_VIEW 인 텐트를 전송합니다.
market : // details? id =
이 경우 packagename 매개 변수는 애플리케이션의 manifest 파일에있는 manifest 요소의 package 속성에 선언 된대로 대상 애플리케이션의 정규화 된 패키지 이름입니다. 예를 들면 :
market : // details? id = com.example.android.jetboy
출처 : http://developer.android.com/guide/publishing/publishing.html
이 메서드를 호출하십시오.
public static void shareApp(Context context)
{
final String appPackageName = context.getPackageName();
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "Check out the App at: https://play.google.com/store/apps/details?id=" + appPackageName);
sendIntent.setType("text/plain");
context.startActivity(sendIntent);
}
더 정확하게
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("https://play.google.com/store/apps/details?id=com.android.example"));
startActivity(intent);
또는 개발자의 다른 앱을 공유하려는 경우. 계정 당신은 이와 같은 것을 할 수 있습니다
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("https://play.google.com/store/apps/developer?id=Your_Publisher_Name"));
startActivity(intent);
애플리케이션 이름과 애플리케이션 ID를 자동으로 채우려면 다음을 사용할 수 있습니다.
int applicationNameId = context.getApplicationInfo().labelRes;
final String appPackageName = context.getPackageName();
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_SUBJECT, activity.getString(applicationNameId));
String text = "Install this cool application: ";
String link = "https://play.google.com/store/apps/details?id=" + appPackageName;
i.putExtra(Intent.EXTRA_TEXT, text + " " + link);
startActivity(Intent.createChooser(i, "Share link:"));
제목이 app_name 인 애플리케이션 공유, 콘텐츠는 애플리케이션 링크
private static void shareApp(Context context) {
final String appPackageName = BuildConfig.APPLICATION_ID;
final String appName = context.getString(R.string.app_name);
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
String shareBodyText = "https://play.google.com/store/apps/details?id=" +
appPackageName;
shareIntent.putExtra(Intent.EXTRA_SUBJECT, appName);
shareIntent.putExtra(Intent.EXTRA_TEXT, shareBodyText);
context.startActivity(Intent.createChooser(shareIntent, context.getString(R.string
.share_with)));
}
이 질문에 대한 답변을 받았지만 다른 해결책을 공유하고 싶습니다.
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
String shareSubText = "WhatsApp - The Great Chat App";
String shareBodyText = "https://play.google.com/store/apps/details?id=com.whatsapp&hl=en";
shareIntent.putExtra(Intent.EXTRA_SUBJECT, shareSubText);
shareIntent.putExtra(Intent.EXTRA_TEXT, shareBodyText);
startActivity(Intent.createChooser(shareIntent, "Share With"));
마지막 으로이 코드는 Android 장치에서 이메일 클라이언트를 여는 데 사용됩니다. 이 스 니펫을 시도하십시오.
Intent testIntent = new Intent(Intent.ACTION_VIEW);
Uri data = Uri.parse("mailto:?subject=" + "Feedback" + "&body=" + "Write Feedback here....." + "&to=" + "someone@example.com");
testIntent.setData(data);
startActivity(testIntent);
실제로 사용자간에 앱을 깎는 가장 좋은 방법 인 Google (firebase)은 새로운 기술을 입증했습니다 Firebase Dynamic Link 여러 줄을 통해 만들 수있는 문서는 https://firebase.google.com/docs/dynamic-links/ 및 코드입니다. 이다
Uri dynamicLinkUri = dynamicLink.getUri();
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink()
.setLink(Uri.parse("https://www.google.jo/"))
.setDynamicLinkDomain("rw4r7.app.goo.gl")
.buildShortDynamicLink()
.addOnCompleteListener(this, new OnCompleteListener<ShortDynamicLink>() {
@Override
public void onComplete(@NonNull Task<ShortDynamicLink> task) {
if (task.isSuccessful()) {
// Short link created
Uri shortLink = task.getResult().getShortLink();
Uri flowchartLink = task.getResult().getPreviewLink();
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND);
intent.putExtra(Intent.EXTRA_TEXT, shortLink.toString());
intent.setType("text/plain");
startActivity(intent);
} else {
// Error
// ...
}
}
});