Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java getApplicationContext返回null_Java_Android_Android Fragments_Android Context - Fatal编程技术网

Java getApplicationContext返回null

Java getApplicationContext返回null,java,android,android-fragments,android-context,Java,Android,Android Fragments,Android Context,我有以下片段。问题是每次启动此应用程序时,应用程序都会崩溃,出现以下异常:尝试在空对象引用上调用虚拟方法android.content.Context android.support.v4.app.FragmentActivity.getApplicationContext()。据我所知,getActivity被正确调用,但是FragmentActivityTesting不返回任何上下文,我不确定为什么会出现这种情况: public class FragmentATesting extends

我有以下片段。问题是每次启动此应用程序时,应用程序都会崩溃,出现以下异常:
尝试在空对象引用上调用虚拟方法android.content.Context android.support.v4.app.FragmentActivity.getApplicationContext()。据我所知,getActivity被正确调用,但是FragmentActivityTesting不返回任何上下文,我不确定为什么会出现这种情况:

public class FragmentATesting extends Fragment {

@Override
     public void onAttach(Activity activity) {
    super.onAttach(activity);
}
@Override
public void onCreate(Bundle SavedInstanceState) {
    super.onCreate(SavedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState) {
    return inflater.inflate(R.layout.fragment_a,container,false);

}
@Override
public void onActivityCreated(Bundle SavedInstanceState){
    super.onActivityCreated(SavedInstanceState);
}
@Override
public void onStart() {
    super.onStart();
    final SessionManager session = new SessionManager(getActivity().getApplicationContext());
    TextView username = (TextView) getView().findViewById(R.id.username_info_txt);
    HashMap<String,String> userString = session.getUserDetails();
    String usernamee = userString.get("username");
    username.setText(usernamee);
    vote(usernamee);
}
@Override
public void onResume() {
    super.onResume();
    final SessionManager session = new SessionManager(getActivity().getApplicationContext());
    TextView username = (TextView) getView().findViewById(R.id.username_info_txt);
    HashMap<String,String> userString = session.getUserDetails();
    String usernamee = userString.get("username");
    username.setText(usernamee);
    vote(usernamee);
}
@Override
public void onPause() {
    super.onPause();
}
@Override
public void onStop() {
    super.onStop();
}
@Override
public void onDestroyView() {
    super.onDestroyView();
}
@Override
public void onDestroy() {
    super.onDestroy();
}
private void vote(final String userId) {
    class UploadImage extends AsyncTask<String, Void, String> {

        RequestHandler rh = new RequestHandler();

        @Override
        protected String doInBackground(String... params) {
            HashMap<String, String> data = new HashMap<>();
            data.put("username",userId);
            String result = rh.sendPostRequest(SL_URL2, data);

            return result;
        }

        @Override
        protected void onPreExecute() {
            super.onPreExecute();
        }

        @Override
        protected void onPostExecute(String s) {
            super.onPostExecute(s);
            JSONObject jsonObject = null;
            String likess = "";
            try {
                jsonObject = new JSONObject(s);
            } catch (JSONException e) {
                e.printStackTrace();
            }
            try {
                likess = jsonObject.getString("amount");
            } catch (JSONException e) {
                e.printStackTrace();
            }
            TextView amount = (TextView) getView().findViewById(R.id.likes_info_txt);
            amount.setText(likess + " Likes");

        }}
    UploadImage ui = new UploadImage();
    ui.execute();


}`

}

我认为
getActivity
返回
null
。(见下文)哪一行产生了错误?发布整个崩溃日志。我认为
getActivity
返回
null
。(见下文)哪一行产生了错误?张贴您的整个崩溃日志。
public class FragmentActivityTesting extends FragmentActivity {
ViewPager viewPager = null;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_fragment_activity_testing);
    viewPager = (ViewPager) findViewById(R.id.pic_pager);
    setStatusBarColor();
    FragmentManager fragmentManager = getSupportFragmentManager();
    viewPager.setAdapter(new MyAdapter(fragmentManager));
    viewPager.setCurrentItem(1);
    IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction("CLOSE_ALL");
    BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            finish();
        }
    };
    registerReceiver(broadcastReceiver, intentFilter);

}
@TargetApi(21)
public void setStatusBarColor() {
    Window window = this.getWindow();
    // clear FLAG_TRANSLUCENT_STATUS flag:
    window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

    // add FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS flag to the window
    window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);

    if (Integer.valueOf(android.os.Build.VERSION.SDK) >= 21) {
        window.setStatusBarColor(this.getResources().getColor(R.color.green));

    }

}}

class MyAdapter extends FragmentStatePagerAdapter {
public MyAdapter(FragmentManager fm) {
    super(fm);
}

@Override
public Fragment getItem(int position) {
    Fragment fragment = null;
    if (position ==0) {
        fragment = new FragmentATesting();
    }
    else if (position == 1) {
        fragment = new FragmentBTesting();
    }
    else if (position == 2) {
        fragment = new FragmentCTesting();
    }
    return fragment;
}

@Override
public int getCount() {
    return 3;
}