Search code examples
androidandroid-layoutandroid-activityandroid-fragmentsandroid-source

No resource identifier found for attribute layout_childtype in android AOSP 4.4.2


I am working on android source code 4.4.2. I tried to make a build adding a new layout file in Keyguard module in frameworks/base/ and I get the following errors.

frameworks/base/packages/Keyguard/res/layout-land/keyguard_host_view_ads.xml:57: error: No resource identifier found for attribute 'layout_childType' in package 'android'
frameworks/base/packages/Keyguard/res/layout-land/keyguard_host_view_ads.xml:64: error: No resource identifier found for attribute 'layout_centerWithinArea' in package 'android'

The new source file for key guard_host_view_ads.xml looks like:

<com.android.keyguard.KeyguardHostView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/res/android"
android:id="@+id/keyguard_host_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">

<com.android.keyguard.MultiPaneChallengeLayout
    android:id="@+id/multi_pane_challenge"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:clipChildren="false"
    android:orientation="vertical">

    <include layout="@layout/keyguard_widget_remove_drop_target"
        android:id="@+id/keyguard_widget_pager_delete_target"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="top|center_horizontal"
        androidprv:layout_childType="pageDeleteDropTarget" />

    <include layout="@layout/keyguard_widget_pager"
        android:id="@+id/app_widget_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        androidprv:layout_centerWithinArea="0.5"
        androidprv:layout_childType="widget"
        androidprv:layout_maxWidth="480dp"
        androidprv:layout_maxHeight="480dp" />

    <include layout="@layout/keyguard_multi_user_selector"/>

    <View android:layout_width="match_parent"
          android:layout_height="match_parent"
          androidprv:layout_childType="scrim"
          android:background="#99000000" />

    <com.android.keyguard.KeyguardSecurityContainer
        android:id="@+id/keyguard_security_container"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        androidprv:layout_centerWithinArea="0.5"
        androidprv:layout_childType="challenge"
        android:layout_gravity="center_horizontal|bottom">
        <com.android.keyguard.KeyguardSecurityViewFlipper
            android:id="@+id/view_flipper"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:clipChildren="false"
            android:clipToPadding="false"
            android:paddingLeft="@dimen/keyguard_security_view_margin"
            android:paddingTop="@dimen/keyguard_security_view_margin"
            android:paddingRight="@dimen/keyguard_security_view_margin"
            android:paddingBottom="@dimen/keyguard_security_view_margin"
            android:gravity="center">
        </com.android.keyguard.KeyguardSecurityViewFlipper>
    </com.android.keyguard.KeyguardSecurityContainer>

</com.android.keyguard.MultiPaneChallengeLayout>

Could some explain difference between android and androidprv?

How can I fix this issue?


Solution

  • The namespace androidprv is wrongly assigned. This is the correct link.

    xmlns:androidprv="http://schemas.android.com/apk/res/com.android.keyguard"