Mediaplugin: [Android] Unhandled exception at application startup

Created on 28 Apr 2017  路  8Comments  路  Source: jamesmontemagno/MediaPlugin

Bug

Version Number of Plugin: 2.6.2
Compile using Android version: Use Latest Platform (Android 7.1 (Nougat))
Target Android version: Use Compile using SDK version
Device Tested On: Moto G4, Android 7.0 (build NPJ25.93-14)
Simulator Tested On: None

Expected Behavior

The application should start properly without errors when the plugin is installed and set up as per the instructions.

Actual Behavior

Upon starting the application, an unhandled Exception is raised when calling base.OnCreate(bundle) within MainActivity.OnCreate override:

Java.Lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setId(int)' on a null object reference

Steps to reproduce the Behavior

  • I added the plugin to a Xamarin.Forms (PCL) application along with the corresponding Android device application.
  • I updated the AndroidManifest.xml as per the "readme.txt"
  • I added the xml folder to the Resources folder
  • I added the file file_paths.xml to the xml folder
  • I ran the application on the device

I am also using Prism.Forms with Unity within the application if that makes any difference, though the application does not get as far as creating the App class.

MainActivity.OnCreate()

protected override void OnCreate(Android.OS.Bundle bundle) {

    TabLayoutResource = Resource.Layout.Tabbar;
    ToolbarResource = Resource.Layout.Toolbar;

    base.SetTheme(Resource.Style.MainTheme);

    base.OnCreate(bundle);
    //base.SetStatusBarColor(Color.Orange);

    global::Xamarin.Forms.Forms.Init(this, bundle);
    Acr.UserDialogs.UserDialogs.Init(this);
    LoadApplication(new App(new AndroidInitializer()));
}

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="auto" package="com.mydomain.myapp">
    <application android:label="My application" android:icon="@drawable/icon">
        <provider android:name="android.support.v4.content.FileProvider" android:authorities="com.mydomain.myapp.fileprovider" android:exported="false" android:grantUriPermissions="true">
            <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"></meta-data>
        </provider>
    </application>
    <uses-feature android:name="android.hardware.camera" android:required="true" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-sdk android:minSdkVersion="15" />
</manifest>

file_paths.xml

<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
    <external-path name="my_images" path="Android/data/com.mydomain.myapp/files/Pictures" />
    <external-path name="my_movies" path="Android/data/com.mydomain.myapp/files/Movies" />
</paths>

I have found an article in the Xamarin forums indicating that the error is caused by the presence of any file within the Resources/xml folder. If I exclude this folder from the project then the application starts without issue leading me to believe that this is in fact the cause of the problem but there has been no reply within that forum post as to any workaround.

Most helpful comment

delete bin and obj folders on Android project and rebuild it

All 8 comments

delete bin and obj folders on Android project and rebuild it

@pbielinski Thank you. That has indeed resolved the problem.

thank you pbielinski
Deleting the "bin" and "obj" folders has solved my issue too. 馃槃

Super, the solution is that delete bin and obj folders. Thanks pbielinski

delete the bin and object folder that solve problem 100%

I think it's mandatory as a xamarin developer to have a 'nuke' script which deletes all the solutions bin and obj folders :)

I think it's mandatory as a xamarin developer to have a 'nuke' script which deletes all the solutions bin and obj folders :)

I recomend https://github.com/madskristensen/CloseAllTabs

delete bin and obj folders on Android project and rebuild it

@pbielinski
Thank you, this solved my issue too

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Brosten picture Brosten  路  3Comments

erossini picture erossini  路  3Comments

ivmazurenko picture ivmazurenko  路  3Comments

mdcso picture mdcso  路  4Comments

Julien-Mialon picture Julien-Mialon  路  7Comments