Intereting Posts
«DRAW OVER OTHER APP» – это какое разрешение в android AudioSource.VOICE_CALL не работает в android 4.0, но работает в android 2.3 Можете ли вы запустить событие, когда Android Dialog будет уволен? Android-эмулятор настолько медленный, что он непригоден Сообщение об ошибке: неизвестный доставить цель Как настроить экран приложения Google для приложений Как использовать камеру для съемки в фоновом режиме Сервис на Android? Куда поместить ключ API? Ресурсы, метаданные в манифесте или статическая переменная? Замена драйвера сенсорного экрана в Android-ядре Android: в чем разница между сосредоточенными, включенными, нажатыми и выбранными состояниями? TextureView против GLSurfaceView или Как использовать GLSurfaceView с EGL14 CallLog.Calls.NEW? Что это значит? В playstore у нас есть два приложения с одинаковым именем с различным пакетом – Android Как использовать собственный код для Android в телефонном разговоре? Создание проекта Android с Ant / Ivy

Изменение пользовательского интерфейса индивидуального приложения (телефон, контакты) в ICS AOSP

Я уже успешно модифицировал несколько приложений (Launcher, SMS, Gallery, Email, Calendar) AOSP, но у меня возникают проблемы с изменением приложений Phone,Contacts .

Я выполнил следующие шаги для изменения приложений Launcher,SMS,Gallery,Email,Calendar :

  1. Я загрузил ICS AOSP и импортировал отдельное приложение в eclipse.
  2. Я изменил имена пакетов.ie com.android.launcher2 на com.test.launcher2
  3. После Step 1 и Step 2 я столкнулся с ошибками в отдельном приложении из-за отсутствия классов framework. Я решил их, импортировав те недостающие классы в моем приложении.
  4. У меня есть изменение пользовательского интерфейса моего приложения.
  5. Я запустил приложение на эмуляторе. И он работает нормально.

Теперь я столкнулся с проблемой при изменении контактов, приложений для телефона в Step 3 :

-> Когда я импортирую недостающие классы инфраструктуры java.* Или javax.* В моем приложении, Консоль сообщает мне об ошибке, например, Ill-advised or mistaken usage of a core class (java.* or javax.*) when not building a core library.

-> Чтобы решить проблемы, я попытался включить несколько библиотек jar, которые были указаны в файле Android.mk и были созданы при создании загруженного AOSP (ICS). Но это не решило мою проблему.

-> Я думаю, файл com.android.phone.common jar может решить проблему, но я не могу ее решить, поскольку я подозреваю, что классы отсутствуют в том файле, который я получил от сборки. Поэтому я пытаюсь найти его в Интернете Начиная с нескольких дней, но я не мог его найти. Если у кого-то есть полная (рабочая) версия этого файла jar, пожалуйста, поделитесь им .

ПРИМЕЧАНИЕ. У моей машины разработки Windows 7, и моя краткосрочная цель – изменить интерфейс приложений Contact, Phone и запустить его.

EDIT: Скриншоты Buildpath Введите описание изображения здесьВведите описание изображения здесь

EDIT После помещения TimSort.java в пакет по умолчанию,

Введите описание изображения здесь

Я описал этот шаг в демонстрации github также, сказав «когда я импортирую TimSort.java, он пытается получить доступ к скрытому методу класса Arrays.java, поэтому мне нужно импортировать этот класс» .Эта ошибка является причиной того, что я создал java .util, чтобы включить Arrays.java class.otherwise. Я доволен тем, что импортировал только TimSort.java.by, на скриншоте мы можем увидеть comment котором говорится что-то особенно о следующих двух методах

Solutions Collecting From Web of "Изменение пользовательского интерфейса индивидуального приложения (телефон, контакты) в ICS AOSP"

Как я уже сказал в последнем комментарии, основная проблема заключается в том, что вы включаете java. * И javax. *, Которые уже существуют в android.jar. Так что строитель думал, что вы строите основную библиотеку, пока вы этого не делаете.

Я просто удалю пакет java.util. * В вашем проекте. И никаких ошибок. В Android.jar уже включено множество пакетов, включая java.xxx и javax.xxx. Если действительно существует недостающая базовая библиотека java, которую вы должны использовать, попробуйте рефакторинг.

Заставка Eclipse

Я проверил источник Android, dx сначала проверит имя вашего источника, позвонив:

 private static void checkClassName(String name) { boolean bogus = false; if (name.startsWith("java/")) { bogus = true; } else if (name.startsWith("javax/")) { int slashAt = name.indexOf('/', 6); if (slashAt == -1) { // Top-level javax classes are verboten. bogus = true; } else { String pkg = name.substring(6, slashAt); bogus = (Arrays.binarySearch(JAVAX_CORE, pkg) >= 0); } } if (! bogus) { return; } /* * The user is probably trying to include an entire desktop * core library in a misguided attempt to get their application * working. Try to help them understand what's happening. */ DxConsole.err.println("\ntrouble processing \"" + name + "\":\n\n" + IN_RE_CORE_CLASSES); errors++; throw new StopProcessing(); } 

IN_RE_CORE_CLASSES – это строка ошибки, которую вы видите в консоли. Это объясняет, почему это показывает эту ошибку.

ОБНОВИТЬ:

Снимок экрана после добавления TimSort.java.

Снимок экрана после добавления TimSort.java