title: Neither user 10063 nor current process has android.permission.ACCESS_NETWORK_STATE
body: <p>I'm working a Earthquake Reporting app and I have added permissions to the manifest file for both INTERNET and ACCESS_NETWORK_STATE.  I went into the emulator's settings and developer's settings and made sure all the network settings were set appropriately.  I've researched the question here &amp; tried those suggestions which did not work for me.  I also saw where others had this issue due to the firewall.  I am running Norton, however their fix instructions were, ahem, over my head.  Something about setting the proxy in Android Studio - either from the command line or from the Settings > HTTP Proxy dialog box.  There, I have "Auto-detect proxy settings" selected.  If I were to configure the proxy settings manually, I would not know what to input for the information.  If anyone has any suggestions as to how I might fix this (I did cleans &amp; rebuilds, this is day two on this issue) please share!  </p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  </code></pre>
  
  <p></p>
  
  <pre><code>&lt;application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:supportsRtl="true"
      android:theme="@style/AppTheme"&gt;
  
      &lt;uses-permission android:name="android.permission.INTERNET" /&gt;
      &lt;uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /&gt;
  
      &lt;activity android:name=".EarthquakeActivity"&gt;
          &lt;intent-filter&gt;
              &lt;action android:name="android.intent.action.MAIN" /&gt;
              &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
          &lt;/intent-filter&gt;
      &lt;/activity&gt;&lt;!-- ATTENTION: This was auto-generated to add Google Play services to your project for
   App Indexing.  See https://g.co/AppIndexing/AndroidStudio for more information. --&gt;
      &lt;meta-data
          android:name="com.google.android.gms.version"
          android:value="@integer/google_play_services_version" /&gt;
  &lt;/application&gt;
  </code></pre>
  
  <p></p>
  
  <pre><code>public class EarthquakeActivity extends AppCompatActivity
      implements LoaderManager.LoaderCallbacks&lt;List&lt;Earthquake&gt;&gt; {
  
  private static final String LOG_TAG = EarthquakeActivity.class.getName();
  
  /** URL for earthquake data from the USGS dataset */
  private static final String USGS_REQUEST_URL =
          "http://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson&amp;orderby=time&amp;minmag=6&amp;limit=10";
  
  private static final int EARTHQUAKE_LOADER_ID = 1;
  
  /** Adapter for the list of earthquakes */
  private EarthquakeAdapter mAdapter;
  
  /** TextView that is displayed when the list is empty */
  private TextView mEmptyStateTextView;
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.earthquake_activity);
  
      // Find a reference to the {@link ListView} in the layout
      ListView earthquakeListView = (ListView) findViewById(R.id.list);
  
      mEmptyStateTextView = (TextView) findViewById(R.id.empty_view);
      earthquakeListView.setEmptyView(mEmptyStateTextView);
  
      // Create a new adapter that takes an empty list of earthquakes as input
      mAdapter = new EarthquakeAdapter(this, new ArrayList&lt;Earthquake&gt;());
  
      // Set the adapter on the {@link ListView}
      // so the list can be populated in the user interface
      earthquakeListView.setAdapter(mAdapter);
  
      // Set an item click listener on the ListView, which sends an intent to a web browser
      // to open a website with more information about the selected earthquake.
      earthquakeListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
          @Override
          public void onItemClick(AdapterView&lt;?&gt; adapterView, View view, int position, long l) {
              // Find the current earthquake that was clicked on
              Earthquake currentEarthquake = mAdapter.getItem(position);
  
              // Convert the String URL into a URI object (to pass into the Intent constructor)
              Uri earthquakeUri = Uri.parse(currentEarthquake.getUrl());
  
              // Create a new intent to view the earthquake URI
              Intent websiteIntent = new Intent(Intent.ACTION_VIEW, earthquakeUri);
  
              // Send the intent to launch a new activity
              startActivity(websiteIntent);
          }
      });
  
  
  
      // Get a reference to the ConnectivityManager to check state of network connectivity
      ConnectivityManager connMgr = (ConnectivityManager)
              getSystemService(Context.CONNECTIVITY_SERVICE);
  
      // Get details on the currently active default data network
      NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
  
      // If there is a network connection, fetch data
      if (networkInfo != null &amp;&amp; networkInfo.isConnected()) {
          // Get a reference to the LoaderManager, in order to interact with loaders.
          LoaderManager loaderManager = getLoaderManager();
  
          // Initialize the loader. Pass in the int ID constant defined above and pass in null for
          // the bundle. Pass in this activity for the LoaderCallbacks parameter (which is valid
          // because this activity implements the LoaderCallbacks interface).
          loaderManager.initLoader(EARTHQUAKE_LOADER_ID, null, this);
      } else {
          // Otherwise, display error
          // First, hide loading indicator so error message will be visible
          View loadingIndicator = findViewById(R.id.loading_indicator);
          loadingIndicator.setVisibility(View.GONE);
  
          // Update empty state with no connection error message
          mEmptyStateTextView.setText(R.string.no_internet_connection);
      }
  }
  
  @Override
  public Loader&lt;List&lt;Earthquake&gt;&gt; onCreateLoader(int i, Bundle bundle) {
      // Create a new loader for the given URL
      return new EarthquakeLoader(this, USGS_REQUEST_URL);
  }
  
  @Override
  public void onLoadFinished(Loader&lt;List&lt;Earthquake&gt;&gt; loader, List&lt;Earthquake&gt; earthquakes) {
      // Hide loading indicator because the data has been loaded
      View loadingIndicator = findViewById(R.id.loading_indicator);
      loadingIndicator.setVisibility(View.GONE);
  
      // Set empty state text to display "No earthquakes found."
      mEmptyStateTextView.setText(R.string.no_earthquakes);
  
      // Clear the adapter of previous earthquake data
      mAdapter.clear();
  
      // If there is a valid list of {@link Earthquake}s, then add them to the adapter's
      // data set. This will trigger the ListView to update.
      if (earthquakes != null &amp;&amp; !earthquakes.isEmpty()) {
          mAdapter.addAll(earthquakes);
      }
  }
  
  @Override
  public void onLoaderReset(Loader&lt;List&lt;Earthquake&gt;&gt; loader) {
      // Loader reset, so we can clear out our existing data.
      mAdapter.clear();
  }
  </code></pre>
  
  <p>}</p>