2017-06-05 45 views
0

当我使用“getSharedPreferences”android api时,出现了java内部错误。 这是我的代码:当我在android 7.1中使用getSharedPreferences时,出现InternalError

private int getByte() { 
    final SharedPreferences prefs = m_ctx.getSharedPreferences("config", 0); 
    ... 
} 

,但我觉得Android的源代码和下面的了:

private void startLoadFromDisk() { 
    synchronized (this) { 
     mLoaded = false; 
    } 
    new Thread("SharedPreferencesImpl-load") { 
     public void run() { 
      loadFromDisk(); 
     } 
    }.start(); 
} 

我donnot知道这是错的?非常感谢你!

日志是:

java.lang.InternalError: 
at java.lang.Thread.nativeCreate(Native Method:0) 
at java.lang.Thread.start(Thread.java:730) 
at android.app.SharedPreferencesImpl.startLoadFromDisk(SharedPreferencesImpl.java:98) 
at android.app.SharedPreferencesImpl.<init>(SharedPreferencesImpl.java:91) 
at android.app.ContextImpl.getSharedPreferences(ContextImpl.java:360) 
at android.app.ContextImpl.getSharedPreferences(ContextImpl.java:349) 
at android.content.ContextWrapper.getSharedPreferences(ContextWrapper.java:164) 
... 

回答

0

试试这个, 除了使用mCtx(),您可以尝试使用getApplicationContext ..

(I,E)。

final SharedPreferences prefs = getApplicationContext().getSharedPreferences("config", 0); 
相关问题