Desenhe o plano de fundo da vista personalizada do arquivo .png no Android

Criei uma visualização personalizada estendendo-a. No onDraw () eu consegui desenhar alguns círculos e outras coisas. Mas agora eu quero adicionar um plano de fundo de um recurso (cartão SD ou fluxo) que é na verdade um mapa que eu baixa do nosso servidor e depois o desenho. É para Android 8 +

@Override
protected void onDraw(Canvas canvas) {
    Canvas g = canvas;
    String file = "/mnt/sdcard/download/tux.png";
    Bitmap bg = null;
    try {
        bg = BitmapFactory.decodeFile(file);
        g.setBitmap(bg);
    } catch (Exception e) {
        Log.d("MyGraphics", "setBitmap() failed according to debug");
    }
}

Somehow g.setBitmap (bg) continua falhando, eu não olhei as especificações da imagem, mas na verdade é apenas uma imagem de smoking (sem cores de 24 bits) no formato PNG. Alguém pode me dar algumas dicas de como adicionar uma imagem de plano de fundo para que eu possa desenhar nela? Obrigado

questionAnswers(4)

yourAnswerToTheQuestion