1

共有インテントを呼び出すボタン アクションがあります。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);

        }
    });
4

0 に答える 0