簡體   English   中英

無法在Android Studio中構建應用

[英]Cannot build app in Android Studio

我最近開始使用Android Studio。 我正在通過教程學習,並制作了可下載原始數據的閃爍應用程序。 每當我嘗試運行它時,我都會在“消息”選項卡中收到此錯誤:

錯誤:配置項目':app'時發生問題。 無法解析配置':app:_debugCompile'的所有依賴項。 找不到com.android.support:appcompat-v7:22.+的任何匹配項,因為沒有可用的com.android.support:appcompat-v7版本。 在以下位置搜索: https : //jcenter.bintray.com/com/android/support/appcompat-v7/maven-metadata.xml https://jcenter.bintray.com/com/android/support/appcompat-v7 /要求:FlickrBrowser:app:unspecified

控制台顯示此錯誤:

執行任務:[:app:assembleDebug]

按需配置是一個孵化功能。

失敗:構建失敗,發生異常。

建立失敗

總時間:8.603秒

我的主要活動:

package org.example.flickrbrowser;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;

public class MainActivity extends AppCompatActivity {

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

    GetRawData getRawData = new GetRawData("https://api.flickr.com/services/feeds/photos_public.gne?tags=android,lollipop&format=json");
    getRawData.execute();

}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    if (id == R.id.action_settings) {
        return true;
    }

    return super.onOptionsItemSelected(item);
   }
}

GetRawData.class:

 package org.example.flickrbrowser;

import android.os.AsyncTask;
import android.util.Log;

import org.apache.http.HttpConnection;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

/**
 * Created by Shahbaz on 07/08/15.
 */

enum DownloadStatus {
IDLE, PROCESSING, NOT_INITIALISED, FAILED_OR_EMPTY, OK
};

public class GetRawData {

private String LOG_TAG = GetRawData.class.getSimpleName();
private String mData;
private String mGetRawUrl;
private DownloadStatus mDownloadStatus;

public GetRawData(String mGetRawData) {
    this.mGetRawUrl = mGetRawData;
    this.mDownloadStatus = DownloadStatus.IDLE;
}


public void reset() {
    this.mDownloadStatus = DownloadStatus.IDLE;
    this.mGetRawUrl = null;
    this.mData = null;
}


public String getmGetRawUrl() {
    return mGetRawUrl;
}

public DownloadStatus getmDownloadStatus() {
    return mDownloadStatus;
}

public void execute() {
    this.mDownloadStatus = DownloadStatus.PROCESSING;
    DownloadRawData downloadrawdata = new DownloadRawData();
    downloadrawdata.execute(mGetRawUrl);
}

public class DownloadRawData extends AsyncTask<String, Void, String> {

    public void onPostExecute(String webData) {
        mData = webData;
        Log.v(LOG_TAG, "data returned is:" + mData);
        if (mData == null) {
            if (mGetRawUrl == null) {
                mDownloadStatus = DownloadStatus.NOT_INITIALISED;
            } else {
                mDownloadStatus = DownloadStatus.FAILED_OR_EMPTY;
            }
        } else {
            mDownloadStatus = DownloadStatus.OK;
        }


    }

    public void doInBackgroud(String... params) {
        HttpURLConnection urlconnection = null;
        BufferedReader reader = null;
        if (params == null) {
            return null;
        }

        try {

            URL url = new URL(params[0]);
            urlconnection = (HttpURLConnection) url.openConnection();
            urlconnection.setRequestMethod("GET");
            urlconnection.connect();

            InputStream inputstream = urlconnection.getInputStream();
            if (inputstream == null) {
                return null;
            }
            StringBuffer buffer = new StringBuffer();
            reader = new BufferedReader(new InputStreamReader(inputstream));
            String line;

            while ((line = reader.readLine()) != null) {
                buffer.append(line + "\n");
            }
            return buffer.toString();


        } catch (IOException e) {
            Log.e(LOG_TAG, "Error", e);
            return null;
        } finally {
            if (urlconnection != null) {
                urlconnection.disconnect();
            }
            if (reader != null) {
                reader.close();
            }
        }


    }
}

}

您需要確保已在Android SDK中下載了Android支持信息庫

請從您的android SDK下載Android支持存儲庫。 那就是你所缺少的。 那它應該很好

在您的Android Studio中:

工具->安卓-> SDK管理器

等待SDK管理器完全加載。 然后在Extras部分下檢查選項Android Support Repository ,然后單擊Install Packages下載並安裝此軟件包。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM