คำถามติดแท็ก sharedpreferences

SharedPreferences ช่วยให้คุณสามารถบันทึกและเรียกดูคู่คีย์ - ค่าถาวรของประเภทข้อมูลดั้งเดิมในแอปพลิเคชัน Android สามารถใช้ได้ทั้งภายในแอพเดียวหรือใช้ร่วมกันระหว่างหลายแอพ

14
ฉันจะดูไฟล์ค่ากำหนดที่แชร์โดยใช้ Android Studio ได้อย่างไร
ฉันใช้การตั้งค่าร่วมเพื่อจัดเก็บค่าบางอย่างสำหรับแอปของฉัน ฉันต้องการดูไฟล์ที่เก็บข้อมูลไว้ในโทรศัพท์ของฉัน ฉันพบหลายวิธีในการดำเนินการนี้ใน Eclipse แต่ฉันกำลังแก้ไขข้อบกพร่องใน Android Studio โทรศัพท์ของฉันรูทแล้ว ฉันอ่านว่าการเข้าถึงรูทเป็นสิ่งสำคัญในการอ่านไฟล์ประเภทนี้ หากไม่มีวิธีใดฉันจะค้นหาวิธีเข้าถึงข้อมูลผ่านโปรแกรมของฉันจากนั้นส่งออกไปยัง log cat หวังว่าฉันจะสามารถดูไฟล์บนโทรศัพท์ได้โดยตรงเพราะมันง่ายกว่ามาก ขอบคุณ.

9
จะรับฟังการเปลี่ยนแปลงความชอบภายใน PreferenceFragment ได้อย่างไร
ตามที่อธิบายไว้ที่นี่ฉันกำลังคลาสย่อย PreferenceFragment และแสดงไว้ในกิจกรรม เอกสารนั้นจะอธิบายวิธีการรับฟังการเปลี่ยนแปลงค่ากำหนดที่นี่แต่เฉพาะในกรณีที่คุณซับคลาส PreferenceActivity เนื่องจากฉันไม่ได้ทำอย่างนั้นฉันจะรับฟังการเปลี่ยนแปลงความชอบได้อย่างไร ฉันได้ลองใช้ OnSharedPreferenceChangeListener ใน PreferenceFragment แล้ว แต่ดูเหมือนจะไม่ได้ผล ( onSharedPreferenceChangedดูเหมือนจะไม่ได้รับการเรียก) นี่คือรหัสของฉันจนถึงตอนนี้: SettingsActivity.java public class SettingsActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Display the fragment as the main content. getFragmentManager().beginTransaction().replace(android.R.id.content, new SettingsFragment()).commit(); } } SettingsFragment.java public class SettingsFragment extends PreferenceFragment implements OnSharedPreferenceChangeListener …



5
ไม่สามารถใส่ SharedPreferences สองเท่า
ได้รับข้อผิดพลาดเมธอด put double ไม่ได้กำหนดไว้สำหรับเอดิเตอร์ sharedPreferences ประเภทนี้ Eclipse ได้รับการแก้ไขด่วนหนึ่งรายการเพิ่ม cast ให้กับเอดิเตอร์ แต่เมื่อฉันทำเช่นนั้นข้อผิดพลาดยังคงได้รับเหตุใดฉันจึงใส่ double ไม่ได้ รหัส: @Override protected void onPause() { // TODO Auto-generated method stub super.onPause(); if (TextUtils.isEmpty(editBl.getText().toString())) { numberOfBl = 0; } else { numberOfBl = Integer.parseInt(editBl.getText().toString(); } if (TextUtils.isEmpty(editSt.getText().toString())) { tonOfSt = 0; } else { tonOfSt = Double.parseDouble(editSt.getText().toString()); …

10
Android SharedPreferences ใน Fragment
ฉันพยายามอ่าน SharedPreferences ใน Fragment รหัสของฉันคือสิ่งที่ฉันใช้เพื่อรับค่ากำหนดในกิจกรรมอื่น ๆ SharedPreferences preferences = getSharedPreferences("pref", 0); ฉันได้รับข้อผิดพลาด Cannot make a static reference to the non-static method getSharedPreferences(String, int) from the type ContextWrapper ผมได้พยายามที่จะติดตามการเชื่อมโยงเหล่านี้ แต่ไม่มีโชคเข้าถึง SharedPreferences ผ่านวิธีการแบบคงที่และ SharedPreferences แบบคงที่ ขอบคุณสำหรับวิธีแก้ปัญหาใด ๆ

6
ดึงค่าจาก SharedPreferences หลังจากติดตั้งใหม่และด้วย allowBackup = true โดยใช้การสำรองข้อมูลอัตโนมัติของ Android
ฉันมีปัญหาในการเรียกคืนค่า (บนอุปกรณ์ Android 9.0) จากการตั้งค่าที่ใช้ร่วมกันหลังจากที่ฉันติดตั้งแอพอีกครั้งและในขณะที่มี allowBackup = true <manifest ... > ... <application android:allowBackup="true" ... > ... </application> </manifest> ตามนี้: https://developer.android.com/guide/topics/data/autobackup การตั้งค่าที่ใช้ร่วมกันควรคืนค่า? SharedPreferences prefs = getSharedPreferences("TEST", MODE_PRIVATE); String name = prefs.getString("name", "No name defined");//"No name defined" is the default value. int idName = prefs.getInt("idName", 0); //0 is the default value. …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.