NPX react-native run-android在执行99%后失败



我一直试图在我的移动设备上运行一个react-native应用程序,但每次我运行命令npx react-native run-android,我的构建失败后执行高达99%添加它给出错误说:


* What went wrong:
Execution failed for task ':app:installDebug'.
> java.util.concurrent.ExecutionException: com.android.builder.testing.api.DeviceException: com.android.ddmlib.
InstallException: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED: Failed parse during installPackageLI: /data/app/vmdl431548781.tmp/base.apk (at Binary XML file line #158): androidx.media.session.MediaButtonReceiver: Targeting S+ (version 31 and above) requires that an explicit value for android:exported be defined when intent filters are present

我不知道是什么原因导致这个问题,我尝试了很多东西,但似乎没有工作的错误'INSTALL_PARSE_FAILED_MANIFEST_MALFORMED'所以我猜这是与manifest文件有关,所以这里是我的manifest.xml文件

package="com.masjidapp">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" android:required="false" />
<uses-feature android:name="android.hardware.camera.front" android:required="false" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
<uses-permission  android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />

<application
android:usesCleartextTraffic="true"
android:name=".MainApplication"
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:allowBackup="false"
android:theme="@style/AppTheme"
>
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode"

android:launchMode="singleTask"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

我还尝试在activity中添加"android:exported="false"或"android:exported="true",但仍然没有用。

我通过删除android studio中的模拟器来解决这个问题,然后我通过将quick boot的选项更改为cool boot来创建新的模拟器。coolboot意味着当我们启动模拟器时,他们清除所有以前的数据,在快速启动时,我的模拟器挂起,他们不响应打开应用程序。

最新更新