Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Runtime Exception #6

Closed
MadhubStudio opened this issue Nov 27, 2020 · 2 comments
Closed

Runtime Exception #6

MadhubStudio opened this issue Nov 27, 2020 · 2 comments

Comments

@MadhubStudio
Copy link

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.adhub.media.status.saver/com.adhub.media.status.saver.ui.activity.VideoViewerActivity}: android.view.InflateException: Binary XML file line #10 in com.adhub.media.status.saver:layout/activity_video_viewer: Binary XML file line #10 in com.adhub.media.status.saver:layout/activity_video_viewer: Error inflating class egolabsapps.basicodemine.videolayout.VideoLayout
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3488)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3635)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2175)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:7857)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1068)
Caused by: android.view.InflateException: Binary XML file line #10 in com.adhub.media.status.saver:layout/activity_video_viewer: Binary XML file line #10 in com.adhub.media.status.saver:layout/activity_video_viewer: Error inflating class egolabsapps.basicodemine.videolayout.VideoLayout
Caused by: android.view.InflateException: Binary XML file line #10 in com.adhub.media.status.saver:layout/activity_video_viewer: Error inflating class egolabsapps.basicodemine.videolayout.VideoLayout
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
at android.view.LayoutInflater.createView(LayoutInflater.java:854)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1006)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:961)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1123)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084)
at android.view.LayoutInflater.inflate(LayoutInflater.java:682)
at android.view.LayoutInflater.inflate(LayoutInflater.java:534)
at android.view.LayoutInflater.inflate(LayoutInflater.java:481)
at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:696)
at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:170)
at androidx.databinding.DataBindingUtil.setContentView(DataBindingUtil.java:303)
at androidx.databinding.DataBindingUtil.setContentView(DataBindingUtil.java:284)
at com.adhub.media.status.saver.ui.activity.VideoViewerActivity.onCreate(VideoViewerActivity.kt:16)
at android.app.Activity.performCreate(Activity.java:7955)
at android.app.Activity.performCreate(Activity.java:7944)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1307)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3463)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3635)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2175)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:7857)
at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1068)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.contains(java.lang.CharSequence)' on a null object reference
at egolabsapps.basicodemine.videolayout.VideoLayout.(VideoLayout.java:87)
... 30 more

@AsynctaskCoffee
Copy link
Owner

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.contains(java.lang.CharSequence)' on a null object reference

Hello! Problem comes from my code 😞 Sorry for this. I can only give some tips for overcome this issue for now. I will fix it later 🦊

videoLayout.setGravity(VideoLayout.VGravity.centerCrop)
videoLayout.setIsLoop(true)
videoLayout.setSound(true)
videoLayout.setPathOrUrl("loginvideotype3.mp4") 

or

app:sound="true"
app:video_gravity="centerCrop"
app:path_or_url="loginvideotype3.mp4"
app:loop="true"

Problem comes from isUrl = FILE_NAME.contains("http://") || FILE_NAME.contains("https://");

If you want to implement video layout programmatically please follow below steps;

frameLayout = findViewById(R.id.frameLayout)
videoLayout = VideoLayout(this)
videoLayout.setGravity(VideoLayout.VGravity.centerCrop)
videoLayout.setIsLoop(true)
videoLayout.setPathOrUrl("loginvideotype3.mp4")
frameLayout.addView(videoLayout)

@AsynctaskCoffee
Copy link
Owner

solved 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants