SharedPreferencesを使用して間違った方法🤔


簡単でシンプルにしましょう

共有設定


共有設定を使用すると、デバイス上のファイルのキー/値のペアとして原始的なデータの少量を格納することができます
  • 重要な小さなビットを追跡する
  • ストレージ許可を必要としないストア情報
  • 簡単な説明


    ビデオ

    メインアクティビティコード


    public class MainActivity extends AppCompatActivity {
        TextView sharedPref;
        Button buttonAdd;
        int count=0;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            SharedPreferences sp = getSharedPreferences("your_prefs", Activity.MODE_PRIVATE);
            count = sp.getInt("your_int_key", -1);
    
    
            sharedPref=findViewById(R.id.sharedPref);
            buttonAdd=findViewById(R.id.buttonAdd);
            sharedPref.setText(""+count);
    
            buttonAdd.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    count++;
                    sharedPref.setText(""+count);
    
                    SharedPreferences sp = getSharedPreferences("your_prefs", Activity.MODE_PRIVATE);
                    SharedPreferences.Editor editor = sp.edit();
                    editor.putInt("your_int_key", count);
                    editor.commit();
                }
            });
    
        }
    }
    

    を選択します


    あなたは、なぜ🤔 , なぜ我々がこれを使うべきかについて見ましょう。


    1)非常にクリーンで読みやすいコード.
    2 )任意のクラスから任意の変数にアクセスできます.
    --値を取得するPreferenceUtil.getInstance(MainActivity.this).getCountNum();----値を設定するにはPreferenceUtil.getInstance(MainActivity.this).SetCountNum(count);3)コードを削減する.
    4)共有設定を用いた変数は一つの場所にある.
    5 )キー命名によるエラーが少ない.
    6)viewmodelで使いやすい.
    7 )大きなプロジェクトを処理するのに非常に良い.

    私は、これらの利点は、あなたが移動するのに十分良いことを願って😎.


    ビデオCLICK LINK

    メインアクティビティコード


    package com.androxus.prefranceutil;
    
    import androidx.appcompat.app.AppCompatActivity;
    import androidx.lifecycle.ViewModelProvider;
    
    
    import android.app.Activity;
    import android.content.SharedPreferences;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
    
    public class MainActivity extends AppCompatActivity {
        TextView sharedPref;
        Button buttonAdd;
        int count=0;
    
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
    
            sharedPref=findViewById(R.id.sharedPref);
            buttonAdd=findViewById(R.id.buttonAdd);
    
    
    //        SharedPreferences sp = getSharedPreferences("your_prefs", Activity.MODE_PRIVATE);
    //        count = sp.getInt("your_int_key", -1);
            count=PreferenceUtil.getInstance(MainActivity.this).getCountNum();
    
    
            sharedPref.setText(""+count);
            buttonAdd.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    count++;
                    sharedPref.setText(""+count);
                    PreferenceUtil.getInstance(MainActivity.this).SetCountNum(count);
    
    
    //                SharedPreferences sp = getSharedPreferences("your_prefs", Activity.MODE_PRIVATE);
    //                SharedPreferences.Editor editor = sp.edit();
    //                editor.putInt("your_int_key", count);
    //                editor.commit();
                }
            });
    
        }
    }
    

    クラスコード


    package com.androxus.prefranceutil;
    import android.content.Context;
    import android.content.SharedPreferences;
    import android.preference.PreferenceManager;
    
    public class PreferenceUtil {
    
    
        public static final String COUNT_VALUE = "count_value";
        public static final String COUNT_NUM = "count";
        private static com.androxus.prefranceutil.PreferenceUtil sInstance;
        private SharedPreferences mPref;
        private SharedPreferences.Editor mEditor;
    
        private PreferenceUtil(final Context context) {
            mPref = PreferenceManager.getDefaultSharedPreferences(context);
        }
        public static com.androxus.prefranceutil.PreferenceUtil getInstance(final Context context) {
            if (sInstance == null)
                sInstance = new com.androxus.prefranceutil.PreferenceUtil(context.getApplicationContext());
            return sInstance;
        }
    
        public final int getCountNum() {
            return mPref.getInt(COUNT_NUM,0);
        }
    
        public final int getCount() {
            return mPref.getInt(COUNT_VALUE,0);
        }
    
        public void setCount(int count) {
            final SharedPreferences.Editor editor = mPref.edit();
            editor.putInt(COUNT_VALUE, count);
            editor.apply();
        }
    
        public void SetCountNum(int count) {
            final SharedPreferences.Editor editor = mPref.edit();
            editor.putInt(COUNT_NUM, count);
            editor.apply();
        }
    }
    

    希望を楽しむ😁


    何か提案があれば下記の詳細を知らせてください。



    お問い合わせ


    [email protected]

    我々の仕事


    androxus

    著者リンケディン