supported solucion mode_world_readable longer cloner app android android-sharedpreferences android-7.0-nougat android-securityexception

android - solucion - mode_world_readable no longer supported app cloner



java.lang.SecurityException: MODE_WORLD_READABLE ya no es compatible (1)

Los archivos legibles en todo el mundo pueden ser una falla de seguridad. Así que Android primero lo desaprobó y luego lo eliminó por completo. MODE_WORLD_READABLE fue desaprobado en versiones hasta Android M Pero en Android N ya no es compatible y lanza SecurityException excepción SecurityException . Así que intenta un modo diferente. Utilicé Context.MODE_PRIVATE y funcionó.

La excepción solo ocurre en los dispositivos Android 7.0 Nougat (emulator).

java.lang.SecurityException: MODE_WORLD_READABLE ya no es compatible

Mi código:

public void SessionMaintainence(Context context) { this.context = context; preferences = context.getSharedPreferences(PREF_NAME, Context.MODE_WORLD_READABLE); editor = preferences.edit(); editor.commit(); }

LogCat:

> E/AndroidRuntime: FATAL EXCEPTION: main > Process: burpp.av.feedback, PID: 2796 > java.lang.RuntimeException: Unable to create application > burpp.av.feedback.FeedbackApplication: java.lang.SecurityException: > MODE_WORLD_READABLE no longer supported > at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5364) > at android.app.ActivityThread.-wrap2(ActivityThread.java) > at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1528) > at android.os.Handler.dispatchMessage(Handler.java:102) > at android.os.Looper.loop(Looper.java:154) > at android.app.ActivityThread.main(ActivityThread.java:6077) > at java.lang.reflect.Method.invoke(Native Method) > at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865) > at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755) > Caused by: java.lang.SecurityException: MODE_WORLD_READABLE no longer supported > at android.app.ContextImpl.checkMode(ContextImpl.java:2162) > at android.app.ContextImpl.getSharedPreferences(ContextImpl.java:363) > at android.app.ContextImpl.getSharedPreferences(ContextImpl.java:358) > at android.content.ContextWrapper.getSharedPreferences(ContextWrapper.java:164) > at burpp.av.feedback.support.SessionMaintainence.<init>(SessionMaintainence.java:63) > at burpp.av.feedback.FeedbackApplication.onCreate(FeedbackApplication.java:43) > at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1024)