Prezados, boa tarde.
Na Aula 2 "Botões funcionando" do módulo Android 2 tive vários erros, mesmo seguindo as orientações da Aula 6 (Invocando a câmera) onde o professor escreveu "No Android 7". Além disto no texto o código está um pouco diferente do que o que foi feito até nesta aula.
Segue passo a passo para correção:
No Lister do botão "botaoFoto" o intentCamera.putExtra até a aula 2 é da seguinte forma:
intentCamera.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(arquivoFoto));
Nas orientações da Aula 6 foi sugerido realizar da seguinte forma abaixo. Contudo desta forma ocorre erro ao acionar o método GetUriForFile:
intentCamera.putExtra(MediaStore.EXTRA_OUTPUT, FileProvider.getUriForFile(FormularioActivity.this, BuildConfig.APPLICATION_ID + "provider", arquivoFoto));
SOLUÇÃO:
Configure a linha intentCamera.putExtra conforme abaixo, observando que a alteração foi realizada no segundo parâmetro. O fileprovider também foi alterado no AndroidManifest.xml na tag authorities:
intentCamera.putExtra(MediaStore.EXTRA_OUTPUT, FileProvider.getUriForFile(FormularioActivity.this, "aluracursoandroid.com.agenda.fileprovider", arquivoFoto));
AndroidManifest.xml
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="aluracursoandroid.com.agenda.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provider_paths" />
</provider>