[Android] Unhandled exception at application startup
See original GitHub issueBug
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.
Issue Analytics
- State:
- Created 6 years ago
- Comments:8
Top GitHub Comments
delete bin and obj folders on Android project and rebuild it
I recomend https://github.com/madskristensen/CloseAllTabs