これは私の非活動クラスです:
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
public class PostManager {
private Bundle bundle;
private Context context;
private Session session;
private String victimId=null;
public PostManager() {
SavedFriend savedFriend = new SavedFriend();
bundle = savedFriend.getBundle();
context = savedFriend.getContext();
session = savedFriend.getSession();
victimId = savedFriend.getfriendsId();
Log.e("postManager", victimId);
Log.e("postManager", bundle.getString("message"));
}
}
これは私のアプリケーションクラスです:
import java.util.List;
import android.app.Application;
import android.content.Context;
import android.os.Bundle;
import com.facebook.Session;
import com.facebook.model.GraphUser;
public class SavedFriend extends Application {
private List<GraphUser> selectedUsers;
private String friendsId;
private Session session;
private Bundle bundle;
private Context context;
public List<GraphUser> getSelectedUsers() {
return selectedUsers;
}
public void setSelectedUsers(List<GraphUser> selectedUsers) {
this.selectedUsers = selectedUsers;
}
public String getfriendsId() {
return friendsId;
}
public void setfriendsId(String id) {
this.friendsId = id;
}
public Session getSession(){
return session;
}
public void setSession(Session session){
this.session = session;
}
public void setContext(Context context){
this.context = context;
}
public Context getContext(){
return context;
}
public void setBundle(Bundle bundle){
this.bundle = bundle;
}
public Bundle getBundle(){
return bundle;
}
}
(friendsId)
nullではないフラグメントクラスでアプリケーションクラスのデータを使用しました。
それからアプリケーションクラスのデータを呼び出すとPostManager
、値nullが返されます。
との値を確認しようとfriendsId
しmessage
ましたLog.e
。しかし、nullPointer例外が発生します。
PostManager constructor
これは、アプリケーションクラスから呼び出すすべての値がnullであることを意味しますか?はいの場合、どうすればよいですか?
クラスにsession、applicationcontext、message、friendsIdの値が必要ですPostManager
。これらの値をに渡すことはできますが、このクラスはどのクラスが拡張するかPostManager
によって呼び出され、このアラームは。を拡張する別のクラスから設定されます。必要なすべての値は、を除いてこのクラスによって作成されます。これらの値をfirst class-> alarmclass->postmanagerクラスから渡す方法がわかりません。onReceive()
alarm class
BroadcastReceiver
Fragment
friendsId
アラームクラスのマニフェスト:
<application android:name=".SavedFriend"
.......>
....
<receiver android:name="package name.Alarm"/>
....
</application>