自动产生代码并得到错误

时间:2018-07-02 12:21:22

标签: java android gradle android-gradle

我在AndroidManifest.xml中使用了<uses-permission android:name="android.permission.INTERNET" />此代码,但错误的行,我试图更改不同的行,却出现错误。如果删除此行,则在运行或清理或重建时,<uses-permission android:name="android.permission.INTERNET" />此代码会自动添加到错误的行中。我什么也做不了。这是代码:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.berkancalikoglu.deadbydaylightguide"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="15"
        android:targetSdkVersion="27" />

    <application
        android:allowBackup="true"
        android:debuggable="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:testOnly="true"
        android:theme="@style/AppTheme" >
        <uses-permission android:name="android.permission.INTERNET" />

        <activity android:name="com.berkancalikoglu.deadbydaylightguide.Main36Activity" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

</manifest>

4 个答案:

答案 0 :(得分:1)

  1. uses-permission必须在 application 标签上方。
  2. 您可以删除 uses-sdk 。从 build.gradle 部分进行维护。
  3. 请勿编辑 auto-generate Manifest 文件。

尝试

 <uses-permission android:name="android.permission.INTERNET" />

 <application
        android:allowBackup="true"
        android:debuggable="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:testOnly="true"
        android:theme="@style/AppTheme" >

然后 Clean-Rebuild-Run

答案 1 :(得分:1)

您正在编辑自动生成的清单。您应该从源代码(在src目录中编辑一个,而不是从生成的源文件(在build目录中)编辑。

答案 2 :(得分:0)

Google Play使用您的应用清单中声明的​​元素来从不符合其硬件和软件功能要求的设备中过滤应用。

通过指定应用程序所需的功能,可以使Google Play仅向其设备满足应用程序功能要求的用户展示应用程序,而不向所有用户展示该应用程序。

有关Google Play如何使用功能作为过滤基础的重要信息,请阅读下面的Google Play and Feature-Based Filtering

  

因此,您应该在用户权限之外定义   <application>...</application>标签

例如:

<uses-permission android:name="android.permission.INTERNET" />
<uses-sdk
        android:minSdkVersion="15"
        android:targetSdkVersion="27" />

    <application
        android:allowBackup="true"
        android:debuggable="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:testOnly="true"
        android:theme="@style/AppTheme" >

        ...

</application>

答案 3 :(得分:0)

您可以在清单文件下定义它,但不能在任何标签中定义它。另外,您应该删除uses-sdk标签。

 <ion-content >
    <a *ngIf="user?.isConnected">Connected</a>
    <a *ngIf="!user?.isConnected">Disconnected</a>
  </ion-content>

Kolay明胶:)