共有インテントを呼び出すボタン アクションがあります。string.xml から文字列を作成したい
以下に私の文字列があります:
<string name="app_name">NowIcons</string> <string name="market">market://details?id=com.nmiltner.nowicon</string>
私の文字列コンストラクターは次のとおりです。
public String share = "Check out " + getResources().getString(R.string.app_name) + getResources().getString(R.string.market);
ボタンをクリックすると、ここにあります:
btn_share.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// Launching Share Intent
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, share);
sendIntent.setType("text/plain");
startActivity(sendIntent);
}
});
アプリをテストすると、強制的に閉じられ、エラー ログに null ポインター例外が記録されます。
また、同様の方法を使用して、ユーザーをプレイ ストアに送信し、アプリを評価しています。
public String marketurl = getResources().getString(R.string.market);
btn_rate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// Go to market Listing
Uri uri1 = Uri.parse(marketurl);
startActivity(new Intent(Intent.ACTION_VIEW, uri1));
}
});
修繕!!!
編集:
私はそれを解決することができました、ここに修正があります:
public String marketurl;
public String share;
btn_rate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// Go to market Listing
String marketurl = getResources().getString(R.string.market);
Uri uri1 = Uri.parse(marketurl);
startActivity(new Intent(Intent.ACTION_VIEW, uri1));
}
});
btn_share.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// Launching Share Intent
String share = "Check out " + getResources().getString(R.string.app_name) + " " + getResources().getString(R.string.market) + " on the Play Store";
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, share);
sendIntent.setType("text/plain");
startActivity(sendIntent);
}
});