MyContentProvider does not specify a android.test.InstrumentationTestRunner instrumentation or does

本文介绍了如何解决在Android测试过程中遇到的问题,特别是由于缺少必要的配置而导致的测试失败情况。通过在AndroidManifest.xml文件中添加特定的InstrumentationTestRunner和uses-library配置项来实现。

原因:主要是你采用了第一种的android的测试方法担忧没有在AndroidManifest.xml中进行相应的配置。

解决办法:在AndroidManifest.xml中的相应位置加上以下代码即可:

<instrumentation
        android:name="android.test.InstrumentationTestRunner"
        android:targetPackage="com.njupt.junit1" />
<uses-library android:name="android.test.runner" />



分析以下报错; FATAL EXCEPTION: main Process: com.example.contacts2, PID: 12148 java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.contacts2/com.example.contacts2.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.ApplicationInfo android.content.Context.getApplicationInfo()' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4186) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4467) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:222) at android.app.servertransaction.TransactionExecutor.executeNonLifecycleItem(TransactionExecutor.java:133) at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:103) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:80) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2823) at android.os.Handler.dispatchMessage(Handler.java:110) at android.os.Looper.loopOnce(Looper.java:248) at android.os.Looper.loop(Looper.java:338) at android.app.ActivityThread.main(ActivityThread.java:9067) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932) Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.ApplicationInfo android.content.Context.getApplicationInfo()' on a null object reference at android.content.ContextWrapper.getApplicationInfo(ContextWrapper.java:208) at android.view.ContextThemeWrapper.getTheme(ContextThemeWrapper.java:174) at android.content.Context.obtainStyledAttributes(Context.java:1103) at androidx.appcompat.app.AppCompatDelegateImpl.createSubDecor(AppCompatDelegateImpl.java:922) at androidx.appcompat.app.AppCompatDelegateImpl.ensureSubDecor(AppCompatDelegateImpl.java:889) at androidx.appcompat.app.AppCompatDelegateImpl.findViewById(AppCompatDelegateImpl.java:691) at androidx.appcompat.app.AppCompatActivity.findViewById(AppCompatActivity.java:264) at com.example.contacts2.MainActivity.<init>(MainActivity.java:36) at java.lang.Class.newInstance(Native Method) at android.app.AppComponentFactory.instantiateActivity(AppComponentFactory.java:95) at androidx.core.app.CoreComponentFactory.instantiateActivity(CoreComponentFactory.java:45) at android.app.Instrumentation.newActivity(Instrumentation.java:1443) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4173) ... 13 more
07-23
[Issue Title ]: Parcel.createExceptionOrNull [Issue SubTitle ]: java.lang.SecurityException - Calling uid: 10180 doesn't match source uid: 10031 【Stack Trace】 Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.tplink.omada/com.tplink.omada.sdncontroller.ui.monitor.mspv2.MspV2Activity}: java.lang.SecurityException: Calling uid: 10180 doesn't match source uid: 10031 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4634) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4845) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:113) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:149) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:103) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2931) at android.os.Handler.dispatchMessage(Handler.java:117) at android.os.Looper.loopOnce(Looper.java:205) at android.os.Looper.loop(Looper.java:293) at android.app.ActivityThread.main(ActivityThread.java:9689) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:586) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1211) Caused by java.lang.SecurityException: Calling uid: 10180 doesn't match source uid: 10031 at android.os.Parcel.createExceptionOrNull(Parcel.java:2465) at android.os.Parcel.createException(Parcel.java:2449) at android.os.Parcel.readException(Parcel.java:2432) at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:190) at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:142) at android.content.ContentProviderProxy.call(ContentProviderNative.java:732) at android.provider.Settings$NameValueCache.getStringForUser(Settings.java:3064) at android.provider.Settings$Global.getStringForUser(Settings.java:15519) at android.provider.Settings$Global.getString(Settings.java:15507) at android.provider.Settings$Global.getInt(Settings.java:15715) at com.android.internal.policy.PhoneWindow.<init>(PhoneWindow.java:426) at com.android.internal.policy.PhoneWindow.<init>(PhoneWindow.java:484) at com.android.internal.policy.HwPhoneWindow.<init>(HwPhoneWindow.java:92) at com.android.internal.policy.HwPolicyFactoryImpl.getHwPhoneWindow(HwPolicyFactoryImpl.java:44) at com.android.internal.policy.HwPolicyFactory.getHwPhoneWindow(HwPolicyFactory.java:53) at android.app.Activity.attach(Activity.java:8367) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4576) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4845) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:113) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:149) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:103) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2931) at android.os.Handler.dispatchMessage(Handler.java:117) at android.os.Looper.loopOnce(Looper.java:205) at android.os.Looper.loop(Looper.java:293) at android.app.ActivityThread.main(ActivityThread.java:9689) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:586) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1211) Caused by android.os.RemoteException: Remote stack trace: at android.content.AttributionSource.enforceCallingUid(AttributionSource.java:264) at android.content.AttributionSource.enforceCallingUidAndPid(AttributionSource.java:250) at android.content.AttributionSource.<init>(AttributionSource.java:171) at android.content.AttributionSource$1.createFromParcel(AttributionSource.java:506) at android.content.AttributionSource$1.createFromParcel(AttributionSource.java:498)
09-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

帅气的东哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值