Revert "Fix issue with using locally defined attrs in a shared lib"

This reverts commit 5069dd69898bd0d9c69ba2bbd37239ec8d1c9dc6.

The reverted commit caused issues loading resources supplied by static libraries.

Bug 17748356

Change-Id: I860a4f31451ee7c03c02974826472a67226b029f
diff --git a/core/jni/android_util_AssetManager.cpp b/core/jni/android_util_AssetManager.cpp
index 8753660..4859ee6 100644
--- a/core/jni/android_util_AssetManager.cpp
+++ b/core/jni/android_util_AssetManager.cpp
@@ -1324,21 +1324,7 @@
         config.density = 0;
 
         // Skip through XML attributes until the end or the next possible match.
-        // We make two assumptions about the order of attributes:
-        // 1) Among attributes with the same package ID, the attributes are
-        //    sorted by increasing resource ID.
-        // 2) Groups of attributes with the same package ID are in the same
-        //    order.
-        // 3) The same sorting is applied to the input attributes as is
-        //    to the attributes in the XML.
-        //
-        // ex: 02010000, 02010001, 010100f4, 010100f5
-        //
-        // The total order of attributes (including package ID) can not be linear
-        // as shared libraries get assigned dynamic package IDs at runtime, which
-        // may break the sort order established at build time.
-        while (ix < NX && (Res_GETPACKAGE(curIdent) != Res_GETPACKAGE(curXmlAttr) ||
-                    curIdent > curXmlAttr)) {
+        while (ix < NX && curIdent > curXmlAttr) {
             ix++;
             curXmlAttr = xmlParser->getAttributeNameResID(ix);
         }
@@ -1353,9 +1339,7 @@
         }
 
         // Skip through the style values until the end or the next possible match.
-        while (styleEnt < endStyleEnt &&
-                (Res_GETPACKAGE(curIdent) != Res_GETPACKAGE(styleEnt->map.name.ident) ||
-                 curIdent > styleEnt->map.name.ident)) {
+        while (styleEnt < endStyleEnt && curIdent > styleEnt->map.name.ident) {
             styleEnt++;
         }
         // Retrieve the current style attribute if it matches, and step to next.
@@ -1371,9 +1355,7 @@
         }
 
         // Skip through the default style values until the end or the next possible match.
-        while (defStyleEnt < endDefStyleEnt &&
-                (Res_GETPACKAGE(curIdent) != Res_GETPACKAGE(defStyleEnt->map.name.ident) ||
-                 curIdent > defStyleEnt->map.name.ident)) {
+        while (defStyleEnt < endDefStyleEnt && curIdent > defStyleEnt->map.name.ident) {
             defStyleEnt++;
         }
         // Retrieve the current default style attribute if it matches, and step to next.
@@ -1535,8 +1517,7 @@
         config.density = 0;
 
         // Skip through XML attributes until the end or the next possible match.
-        while (ix < NX && (Res_GETPACKAGE(curIdent) != Res_GETPACKAGE(curXmlAttr) ||
-                    curIdent > curXmlAttr)) {
+        while (ix < NX && curIdent > curXmlAttr) {
             ix++;
             curXmlAttr = xmlParser->getAttributeNameResID(ix);
         }
diff --git a/libs/androidfw/ResourceTypes.cpp b/libs/androidfw/ResourceTypes.cpp
index 61a767c..8cef137 100644
--- a/libs/androidfw/ResourceTypes.cpp
+++ b/libs/androidfw/ResourceTypes.cpp
@@ -1185,11 +1185,7 @@
 {
     int32_t id = getAttributeNameID(idx);
     if (id >= 0 && (size_t)id < mTree.mNumResIds) {
-        uint32_t resId = dtohl(mTree.mResIds[id]);
-        if (mTree.mDynamicRefTable == NULL ||
-                mTree.mDynamicRefTable->lookupResourceId(&resId) == NO_ERROR) {
-            return resId;
-        }
+        return dtohl(mTree.mResIds[id]);
     }
     return 0;
 }
diff --git a/tests/SharedLibrary/lib/res/layout/main.xml b/tests/SharedLibrary/lib/res/layout/main.xml
deleted file mode 100644
index df0204d9..0000000
--- a/tests/SharedLibrary/lib/res/layout/main.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:orientation="vertical">
-
-    <TextView
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:text="@string/sample_layout"/>
-
-    <com.google.android.test.shared_library.AddressView xmlns:address="http://schemas.android.com/apk/res-auto"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_weight="1"
-        android:background="#03a9f4"
-        address:name="Librarian L"
-        address:streetNumber="21"
-        address:streetName="Android Lane"
-        address:city="AndroidVille"
-        address:state="OS"
-        address:zip="12345"
-        address:country="Mobile"/>
-
-</LinearLayout>
diff --git a/tests/SharedLibrary/lib/res/values/strings.xml b/tests/SharedLibrary/lib/res/values/strings.xml
index 9beccd9..6827f93 100644
--- a/tests/SharedLibrary/lib/res/values/strings.xml
+++ b/tests/SharedLibrary/lib/res/values/strings.xml
@@ -28,5 +28,4 @@
     </string-array>
 
     <string name="racoon">Racoon</string>
-    <string name="sample_layout">This is an example of a layout this library provides.</string>
 </resources>
diff --git a/tests/SharedLibrary/lib/src/com/google/android/test/shared_library/ActivityMain.java b/tests/SharedLibrary/lib/src/com/google/android/test/shared_library/ActivityMain.java
index 4b4893c..895aced 100644
--- a/tests/SharedLibrary/lib/src/com/google/android/test/shared_library/ActivityMain.java
+++ b/tests/SharedLibrary/lib/src/com/google/android/test/shared_library/ActivityMain.java
@@ -18,11 +18,15 @@
 
 import android.app.Activity;
 import android.os.Bundle;
+import android.widget.TextView;
 
 public class ActivityMain extends Activity {
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-        setContentView(R.layout.main);
+
+        TextView content = new TextView(this);
+        content.setText("Dummy main entry for this apk; not really needed...");
+        setContentView(content);
     }
 }