简体   繁体   English

将Android源代码导入ADT(Eclipse)时报告的错误

[英]Errors reported when importing Android source code into ADT (Eclipse)

I downloaded source code and built Android (version 4.3) without errors (it works fine if I run it in emulator). 我下载了源代码并构建了Android(4.3版),没有错误(如果我在模拟器中运行它,效果很好)。 Now I'm following this tutorial https://source.android.com/source/using-eclipse.html to import Android Project into eclipse workspace. 现在,我将按照本教程https://source.android.com/source/using-eclipse.html将Android Project导入eclipse工作区。 After creating project from existing code, when workspace rebuild, eclipse throws 5131 errors and 12029 warnings. 从现有代码创建项目后,当重建工作空间时,eclipse会引发5131错误和12029警告。

As far as I see, all errors are of same origin "Something cannot be resolved..." 据我所知,所有错误均源于“某些问题无法解决...”

For example in packages/apps/Calendar/src in package com.android.calendar there is EventInfoFragment class with following imports: 例如,在包com.android.calendar的packages / apps / Calendar / src中,有EventInfoFragment类,其中包含以下导入:

import static android.provider.CalendarContract.EXTRA_EVENT_ALL_DAY;
import static android.provider.CalendarContract.EXTRA_EVENT_BEGIN_TIME;
import static android.provider.CalendarContract.EXTRA_EVENT_END_TIME;
import static com.android.calendar.CalendarController.EVENT_EDIT_ON_LAUNCH;

import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.ObjectAnimator;
import android.app.Activity;
import android.app.Dialog;
import android.app.DialogFragment;
import android.app.FragmentManager;
import android.app.Service;
import android.content.ActivityNotFoundException;
import android.content.ContentProviderOperation;
import android.content.ContentResolver;
import android.content.ContentUris;
import android.content.ContentValues;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.res.Resources;
import android.database.Cursor;
import android.graphics.Color;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.provider.CalendarContract;
import android.provider.CalendarContract.Attendees;
import android.provider.CalendarContract.Calendars;
import android.provider.CalendarContract.Colors;
import android.provider.CalendarContract.Events;
import android.provider.CalendarContract.Reminders;
import android.provider.ContactsContract;
import android.provider.ContactsContract.CommonDataKinds;
import android.provider.ContactsContract.Intents;
import android.provider.ContactsContract.QuickContact;
import android.text.Spannable;
import android.text.SpannableStringBuilder;
import android.text.TextUtils;
import android.text.format.Time;
import android.text.method.LinkMovementMethod;
import android.text.method.MovementMethod;
import android.text.style.ForegroundColorSpan;
import android.text.util.Rfc822Token;
import android.util.Log;
import android.util.SparseIntArray;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.view.accessibility.AccessibilityEvent;
import android.view.accessibility.AccessibilityManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.ScrollView;
import android.widget.TextView;
import android.widget.Toast;

import com.android.calendar.CalendarController.EventInfo;
import com.android.calendar.CalendarController.EventType;
import com.android.calendar.CalendarEventModel.Attendee;
import com.android.calendar.CalendarEventModel.ReminderEntry;
import com.android.calendar.alerts.QuickResponseActivity;
import com.android.calendar.event.AttendeesView;
import com.android.calendar.event.EditEventActivity;
import com.android.calendar.event.EditEventHelper;
import com.android.calendar.event.EventColorPickerDialog;
import com.android.calendar.event.EventViewUtils;
import com.android.calendarcommon2.DateException;
import com.android.calendarcommon2.Duration;
import com.android.calendarcommon2.EventRecurrence;
import com.android.colorpicker.ColorPickerSwatch.OnColorSelectedListener;
import com.android.colorpicker.HsvColorComparator;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

These imports cannot be resolved: 这些进口无法解决:

import com.android.colorpicker.ColorPickerSwatch.OnColorSelectedListener;
import com.android.colorpicker.HsvColorComparator;

My eclipse is from ADT. 我的日食来自ADT。

I think that project is missing some libs/jars but I'm stuck here. 我认为该项目缺少一些库/罐子,但我被困在这里。 If anyone have an idea, I will be most thankfull. 如果有人有想法,我将非常感谢。

There are no such imports: com.android.colorpicker.* in the official SDK. 没有此类导入:官方SDK中的com.android.colorpicker.*
A little search brought me up with this library: Android Colorpicker that uses the packagename com.android.colorpicker . 经过一番搜索,我发现了这个库:使用包名称com.android.colorpicker Android com.android.colorpicker So try importing this library and add it to your imported project. 因此,请尝试导入该库并将其添加到导入的项目中。

Delete bin folder in your project then clean your project. 删除项目中的bin文件夹,然后清理项目。
if your problem is not solved, probably problem is SDK files. 如果您的问题没有解决,则可能是SDK文件。
also you can try this way: 您也可以尝试这种方式:
1 - create a new project 1-创建一个新项目
2 - delete fragment_main in res/layout 3 - delete all generated code in main_activity class except: 2-删除res / layout中的fragment_main 3-删除main_activity类中所有生成的代码,除了:

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}


Note: MainActivity must extend Activity instead of ActionBarActivity 注意:MainActivity必须扩展Activity而不是ActionBarActivity

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM