diff --git a/chapters/03-nativo/3an-diagnostic.md b/chapters/03-nativo/3an-diagnostic.md new file mode 100644 index 0000000..6df0995 --- /dev/null +++ b/chapters/03-nativo/3an-diagnostic.md @@ -0,0 +1,65 @@ +Diagnostic +=========== + +``` +$ ionic plugin add cordova.plugins.diagnostic +``` + +Repositório: [https://github.com/dpa99c/cordova-diagnostic-plugin](https://github.com/dpa99c/cordova-diagnostic-plugin) + + +Métodos estáticos +----------------- + +``` isLocationEnabled() ``` + +Verifica se o app está apto a acessar a localização do dispositivo. + +``` isWifiEnabled() ``` + +Verifica se o Wifi está conectado/habilitado. No iOS retorna true se o dispositivo está conectado a uma rede via WiFi. No Android e no Windows 10 Mobile retorna true se o WiFi estiver habilitado nas configurações. No Android é necessário permissão. + + +``` isCameraEnabled() ``` + +Verifica se o dispositivo tem uma câmera. No Android retorna true se o dispositivo tem uma câmera. No iOS retorna true se o dispositivo tem uma câmera e se a aplicação pode acessa-la. No Windows 10 Mobile returna true se o dispositivo tem uma câmera e a aplicação tem autorização para acessa-la. + +``` isBluetoothEnabled() ``` + +Verifica se o dispositivo tem capacidade Bluetooth e se o mesmo está ligado (funciona da mesma maneira no Android, iOS e Windows 10 Mobile). No Android é necessario permissão. + +``` requestLocationAuthorization() ``` + +Retorna o status de autorização de localização para a aplicação. Nota para Android: pretendido para Android 6 / API 23 e mais novos. Realizar uma chamada no Android 5 / API 22 ou menor vai sempre retornar GRANTED status como uma permissão garantida na hora da instalação. + +modo - (somente-iOS / opcional) modo de autorização da localização: “always” ou “when_in_use”. Se não for especificado, o padrão para “when_in_use”. + + +``` isLocationAuthorized() ``` + +Verifica se a aplicação está autorizada a utilizar a localização. Nota para Android: pretendido para Android 6 / API 23 e mais novos. Realizar uma chamada no Android 5 / API 22 ou menor vai sempre retornar GRANTED status como uma permissão garantida na hora da instalação. + +``` isCameraPresent() ``` + +Verifica se existe uma câmera no dispositivo. + +``` isCameraAuthorized() ``` + +Verifica se a aplicação tem autorização para utilizar a câmera. Nota para Android: pretendido para Android 6 / API 23 e mais novos. Realizar uma chamada no Android 5 / API 22 ou menor vai sempre retornar GRANTED status como uma permissão garantida na hora da instalação. + +``` isGpsLocationEnabled() ``` + +Verifica se a localização está no modo de alta precisão via GPS. Retorna true se o modo localização estiver habilitado e estiver definido como: Somente dispositivo = somente o GPS (alta precisão) - Alta Precisão = GPS, triangulação de rede e rede WiFi IDs (alta e baixa precisão). + +``` isNetworkLocationEnabled() ``` + +Verifica se o modo de localização está definido para retornar localizações com baixa precisão via triangulação de rede/pontos de acesso WiFi. Retorna true se o modo de localização estiver habilitado e definido como: - Economia de Bateria = triangulação de rede e rede WiFi IDs (baixa precisão) - Alta Precisão = GPS, triangulação de rede e rede WiFi IDs (alta ou baixa precisão). + +``` isRemoteNotificationsEnabled() ``` + +Verifica se notificações remotas (push) estão habilitadas. No iOS 8+, retorna true se a aplicação está registrada para notificações remotas E "Allow Notifications" está ligado E o estilo dos alertas está definido como "None" (i.e "Banners" ou "Alerts"). No iOS <=7, retorna true se a aplicação está registrada para notificações remotas E o estilo dos alertas está definido como "None" (i.e "Banners" ou "Alerts") - igual a isRegisteredForRemoteNotifications() + +``` isRegisteredForRemoteNotifications() ``` + +Indica se a aplicação está registrada para receber notificações remotas (push) no dispotivo. No iOS 8+, retorna true se a aplicação está registrada para receber notificações remotas e recebeu o token do dispositivo, ou false se o registro não ocorreu, falhou ou foi negado pelo usuário. Nota: as preferencias do usuario para notificações nas Configurações não ira afetar esta operação. No iOS <=7, retorna true se a aplicação está registrada para receber notificações remotas E o estilo dos alertas está definido como "None" (i.e "Banners" ou "Alerts") - igual a isRemoteNotificationsEnabled(). +