title: NullPointerException: Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()'
body: <pre><code>public class CategoryAdapter extends BaseAdapter {
  Context context;
  ArrayList&lt;ModelCategory&gt; model;
  LayoutInflater layoutInflater;
  
  public CategoryAdapter(Activity activity, ArrayList&lt;ModelCategory&gt; model) {
      this.model = model;
      this.context = activity;
  }
  
  @Override
  public int getCount() {
      return model.size();
  }
  
  @Override
  public Object getItem(int position) {
      return null;
  }
  
  @Override
  public long getItemId(int position) {
      return position;
  }
  
  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
  
      ViewHolder viewHolder = null;
      layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
      if (convertView == null) {
          viewHolder = new ViewHolder();
          convertView = layoutInflater.inflate(R.layout.category_adapter, parent, false);
          viewHolder.imageView = (ImageView) convertView.findViewById(R.id.category_grid_image);
          viewHolder.textView = (TextView) convertView.findViewById(R.id.get_category_title);
          convertView.setTag(viewHolder);
  
      } else {
          viewHolder = (ViewHolder) convertView.getTag();
      }
  
      viewHolder.textView.setText(model.get(position).getCategoryName());
      if(position&lt;=3){
          viewHolder.imageView.setImageBitmap(StringToBitMap(model.get(position).getCategoryImage()));
      }
      else {
          viewHolder.imageView.setImageBitmap(getBitmap(model.get(position).getCategoryImage()));
      }
      return convertView;
  }
  
  private class ViewHolder {
      public ImageView imageView;
      public TextView textView;
  }
  
  private Bitmap getBitmap(String path) {
  
      BitmapFactory.Options option = new BitmapFactory.Options();
      option.inSampleSize = 8;
      Bitmap bitmap = BitmapFactory.decodeFile(path, option);
      Matrix matrix = new Matrix();
      matrix.postRotate(getImageOrientation(path));
      Bitmap rotatedBitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix, true);
      Bitmap resized = Bitmap.createScaledBitmap(rotatedBitmap, 150, 150, true);
      return resized;
  }
  
  
  private static int getImageOrientation(String imagePath) {
      int rotate = 0;
      try {
          File imageFile = new File(imagePath);
          ExifInterface exif = new ExifInterface(
                  imageFile.getAbsolutePath());
          int orientation = exif.getAttributeInt(
                  ExifInterface.TAG_ORIENTATION,
                  ExifInterface.ORIENTATION_NORMAL);
  
          switch (orientation) {
              case ExifInterface.ORIENTATION_ROTATE_270:
                  rotate = 270;
                  break;
              case ExifInterface.ORIENTATION_ROTATE_180:
                  rotate = 180;
                  break;
              case ExifInterface.ORIENTATION_ROTATE_90:
                  rotate = 90;
                  break;
          }
      } catch (IOException e) {
          e.printStackTrace();
      }
  
      return rotate;
  }
  
  
  public Bitmap StringToBitMap(String encodedString){
      try {
          byte [] encodeByte=Base64.decode(encodedString, Base64.DEFAULT);
          Bitmap bitmap=BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length);
          return bitmap;
      } catch(Exception e) {
          e.getMessage();
          return null;
      }
  }
  </code></pre>
  
  <p>}</p>
  
  <p>I am getting <code>error</code> like below..</p>
  
  <blockquote>
    <p>java.lang.NullPointerException: Attempt to invoke virtual method 'int
    android.graphics.Bitmap.getWidth()' on a null object reference
                at com.adapter.CategoryAdapter.getBitmap(CategoryAdapter.java:92)
                at com.adapter.CategoryAdapter.getView(CategoryAdapter.java:75)
                at android.widget.AbsListView.obtainView(AbsListView.java:2896)
                at android.widget.GridView.makeAndAddView(GridView.java:1456)
                at android.widget.GridView.makeRow(GridView.java:361)
                at android.widget.GridView.fillDown(GridView.java:302)
                at android.widget.GridView.fillFromTop(GridView.java:437)
                at android.widget.GridView.layoutChildren(GridView.java:1284)
                at android.widget.AbsListView.onLayout(AbsListView.java:2700)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1077)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
                at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.support.v4.widget.DrawerLayout.onLayout(DrawerLayout.java:1043)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1702)
                at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1556)
                at android.widget.LinearLayout.onLayout(LinearLayout.java:1465)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1077)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
                at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1702)
                at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1556)
                at android.widget.LinearLayout.onLayout(LinearLayout.java:1465)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
                at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1702)
                at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1556)
                at android.widget.LinearLayout.onLayout(LinearLayout.java:1465)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)
                at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
                at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
                at android.view.View.layout(View.java:16899)
                at android.view.ViewGroup.layout(ViewGroup.java:5405)</p>
  </blockquote>
  
  <p>How can I solve this?</p>