第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

將 json 值密鑰對解包到 SharedPreferences 的變量

將 json 值密鑰對解包到 SharedPreferences 的變量

元芳怎么了 2021-12-30 20:17:16
我有一個(gè) json,我需要一些幫助來格式化它,以便我可以將這些值保存在 SharedPreferences 中,這是困擾我的代碼。public class MainActivity extends AppCompatActivity {public static final String EXTRA_MESSAGE = "com.example.cumaskp.mercfood";private SharedPreferences mPreferences;private SharedPreferences.Editor mEditor;EditText username;EditText password;Button loginbutton;Button signupBtn;@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    mPreferences = PreferenceManager.getDefaultSharedPreferences(this);    mEditor = mPreferences.edit();    username = (EditText) findViewById(R.id.usernameEditText);    password = (EditText) findViewById(R.id.mailEditText);    signupBtn = (Button) findViewById(R.id.signUpButton);    loginbutton = (Button) findViewById(R.id.loginBtn);    signupBtn.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View view){            Intent myIntent = new Intent(MainActivity.this, getData.class);            MainActivity.this.startActivity(myIntent);        }    });    loginbutton.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View view) {            new SendPostRequest().execute();        }    });}我認(rèn)為這個(gè)問題經(jīng)常被問到,但我嘗試在 google 上搜索一個(gè) anwser 并且很不清楚我應(yīng)該如何將字符串格式化為變量。我的應(yīng)用程序的字符串輸出如下所示:{"api_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJsdW1lbi1qd3QiLCJzdWIiOjEsImlhdCI6MTU0MTQyNjYxMiwiZXhwIjoxNTQxNTEzMDEyLCJuYW0iOiIxMjM0In0.7TR1ueOB-xqAkI6XgStUnn7HZxBTvxx3wzjKGHDnD4I","user_id":1}有人告訴我,代碼總是更好,中間有一個(gè)指針。
查看完整描述

2 回答

?
翻過高山走不出你

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超3個(gè)贊

您不需要創(chuàng)建變量。由于響應(yīng)是字符串,請保存 json 本身,另外我看到一個(gè)語法錯(cuò)誤OnPostExecute()result參數(shù)是字符串,字符串沒有調(diào)用方法,getJsonObject()因此您需要執(zhí)行以下操作

JSONObject resultAsJsonObject=new  JSONObject(result);

與字符串不同,上述方式將讓您將變量用作對象

我建議您將整個(gè) json 保存到共享首選項(xiàng)中,這樣您此時(shí)就不需要轉(zhuǎn)換它您可以創(chuàng)建一個(gè)模型并使用GSON這樣您就不需要將其轉(zhuǎn)換為 JSONObject 但是結(jié)果將是 json 結(jié)構(gòu), Gson 庫會將你的 json 結(jié)果轉(zhuǎn)換為 java 對象


查看完整回答
反對 回復(fù) 2021-12-30
?
喵喔喔

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊

這看起來非常復(fù)雜,假設(shè) json String 是您要返回的格式,您所要做的就是將其輸入到 JSON 對象中:


JSONObject obj = new JSONObject(responseString);  

然后你可以直接訪問數(shù)據(jù):


String token = obj.getString("api_token");

int userID = obj.getInt("user_id");  

然后你可以對他們做任何你想做的事情。


查看完整回答
反對 回復(fù) 2021-12-30
  • 2 回答
  • 0 關(guān)注
  • 160 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號