0

この例外があります"java.lang.ClassCastException:android.app.Applicationをcom.utility.TablePlussAndroidにキャストできません"理由がわかりません...ご協力いただきありがとうございます

package com.tableplustablet;
private com.utility.TablePlusAndroid session;

public class LoginActivity extends Activity {

    // ...

    // get session from Application                        
    session =  (TablePlusAndroid) this.getApplication(); // <--EXCEPTION
    session.setUserKey(userKey);
} 

// -------------------------------------------------------------

package com.utility;
import android.app.Application;

 //Save User Data in  application's context
 public class TablePlusAndroid extends Application{
private Long userKey;
private String userName;
private Long currentTableKey;  

    public Long getCurrentTableKey() {
        return currentTableKey;
}

    public void setCurrentTableKey(Long currentTableKey) {
        this.currentTableKey = currentTableKey;
    }
    public Long getUserKey(){ return userKey;}
    public void setUserKey(Long key){ userKey=key;}
    public String getUserName() { return userName; }
    public void setUserName(String userName) { this.userName = userName; }  
}
4

1 に答える 1

4

AndroidManifest.xmlファイルでアプリケーションクラスを使用する必要があります。

次のようになります。

<application android:name="application.package.and.class">
    <activity .... />
</application>
于 2012-12-20T17:34:44.070 に答える