第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我會得到這個 NullPointerException:

為什么我會得到這個 NullPointerException:

蕪湖不蕪 2021-06-17 18:23:46
在 Kotlin 中,我正在構(gòu)建一個使用相機(jī)的應(yīng)用程序。但是,每當(dāng)我在模擬器或?qū)嶋H設(shè)備上單擊相機(jī)按鈕時,它都會崩潰。我收到以下錯誤。java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.XmlResourceParser android.content.pm.ProviderInfo.loadXmlMetaData(android.content.pm.PackageManager, java.lang.String)' on a null object reference此錯誤類型是非特定的,Java(非 kotlin)lang 用戶已多次詢問過該錯誤類型。解決方案通常是清單文件中的身份驗證與代碼函數(shù)調(diào)用中的用法之間的名稱不匹配,但是沒有提出的解決方案對我有用。這是我進(jìn)行“空引用”調(diào)用的代碼片段:var currentPath: String? = nullval TAKE_PICTURE = 1val SELECT_PICTURE = 2fun dispatchCameraIntent() {val intent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)    if(intent.resolveActivity(packageManager) != null){    var photoFile: File? = null    try {        photoFile = createImage()    }catch (e: IOException){        e.printStackTrace()    }    if (photoFile != null){        // you must create a content provider matching the authority        var photoUri = FileProvider.getUriForFile(this, "com.my_company.my_app.fileprovider", photoFile)        intent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri)        startActivityForResult(intent, TAKE_PICTURE)    }   }}    fun createImage(): File{        val timeStamp =       SimpleDateFormat("yyyyMMMM_HHmmss").format(Date())//getDateTimeInstance()        val imageName = "JPEG_"+timeStamp+"_"        var storageDir = getExternalFilesDir(Environment.DIRECTORY_PICTURES)        var image = File.createTempFile(imageName, ".jpg", storageDir)        currentPath = image.absolutePath        return image    }我的 xml file_paths 文件位于 res>xml>file_paths.xml,如下所示:<?xml version="1.0" encoding="utf-8"?><paths     xmlns:android="http://schemas.android.com/apk/res/android"><external-path    name="my_pictures"        path="SDCARD/Android/data/com.my_company.my_app/files/Pictures"/>
查看完整描述

1 回答

?
ibeautiful

TA貢獻(xiàn)1993條經(jīng)驗 獲得超6個贊

這是導(dǎo)致問題的代碼。它在FileProvider課堂上。


    final ProviderInfo info = context.getPackageManager()

            .resolveContentProvider(authority, PackageManager.GET_META_DATA);

    final XmlResourceParser in = info.loadXmlMetaData(

            context.getPackageManager(), META_DATA_FILE_PROVIDER_PATHS);

堆棧跟蹤清楚地表明 NPE 正在為loadXmlMetaData調(diào)用發(fā)生,并且它正在發(fā)生是因為info是null。(FileProvider類中該方法只有一個調(diào)用點...)

這方面的證據(jù)指向的東西是不對的你定義了你的方式FileProvider。

  • 檢查/重新檢查文檔

  • 檢查清單中的拼寫錯誤或不匹配等。


查看完整回答
反對 回復(fù) 2021-06-30
  • 1 回答
  • 0 關(guān)注
  • 245 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號