代码之家  ›  专栏  ›  技术社区  ›  Matt Ke Alex Santos

使用活动别名时,android构建失败

  •  1
  • Matt Ke Alex Santos  · 技术社区  · 6 年前

    添加活动别名后,生成失败:

    error: attribute 'android:name' in <activity-alias> tag must be a valid Java class name.
    

    即使android开发人员文档中提到,这个名称也没有引用实际的类。

    Android:名字

    别名的唯一名称。该名称应类似于完全限定的类名。但是,与目标活动的名称不同,别名是任意的;它不引用实际的类。

    这是我的活动宣言:

    ...
    
    <activity android:name=".MainActivity" />
    
    <activity-alias
        android:name="MainActivity-2"
        android:targetActivity=".MainActivity"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity-alias>
    
    ...
    
    1 回复  |  直到 6 年前
        1
  •  5
  •   Matt Ke Alex Santos    6 年前

    这里很清楚,我们可以为别名选择任何唯一的名称,但不清楚的是,唯一的名称应该是有效的类名(即名称不应包含“-”、空格、特殊字符等)。

    这就是为什么你会犯错误( error: attribute 'android:name' in <activity-alias> tag must be a valid Java class name. )在构建应用程序时。