android studio 中错误Failed to resolve:com.android.support:appcompat-v7的一个解决技巧

首先我的项目一开始是能正常运行的,后来我为了增加一个活动,新建一个java和xml文件,可刚建完问题就来了,错误出现在build.gradle(Module:app)文件下。

我在网上找了好多解决方案,都是说SDK tool 工具版本对应不上,改来改去还是不行,看来他们说的方法不适合我这种情况。

值得注意的一点是,我的项目一开始是能正常运行的,基于这一点我想了一招:

新建一个项目,找到该项目下的build.gradle(Module:app)文件,把新项目下的该文件和旧项目下的同名文件放在一起比较,果然这其中就有猫腻,旧项目中的dependencies下多了2条语句(如下红线所示),抱着尝试的心态,我把新项目下build.gradle(Module:app)下的内容复制到旧项目中并覆盖原有内容。结果再Syn居然成功了。

                        旧项目中的dependencies

                        新项目中的dependencies

再来分析以下问题产生的原因,在我新建activity时选择的时New—>Activity—>Empty activity,这样创建出来的activity会被系统自动配置一些内容(具体是什么不是关键)。正是这些配置导致了错误。所以我们选择手动建立activity。它有3个步骤

1. 新建xml页面文件,即需要显示的页面,也是用户唯一能看到的,根据自己的需要设计

2.新建java文件(New—>Java Class),在java文件中加入以下代码就将xml文件和Java文件绑定在了一起

 1 import android.app.Activity;
 2 import android.os.Bundle;
 3 
 4 public class DetectFailedActivity extends Activity {//类DetectFailedActivity继承自Activity类
 5     @Override
 6     protected void onCreate(Bundle savedInstanceState) {
 7             super.onCreate(savedInstanceState);
 8             setContentView(R.layout.activity_main);//activity_main为第一步创建的xml文件,次吃将2者绑定在一起
 9         }
10     }

3.在Manifest.xml中注册类DelectFailedActivity,加入标签<activity android:name=".DetectFailedActivity" />即可

这样一个手工的activity就形成了。不过需要注意的是,这种activity是不能直接显示的,它主要用于新加的activity,一般是从MainActivity中跳转到此处,当然也可以从这个手动的activity 跳转到其他activity

猜你喜欢

转载自www.cnblogs.com/happy2015-everyone/p/11068178.html