调试时会忽略依赖项 org.apache.httpcomponents:httpclient:4.5,因为它可能与提供的内部版本冲突

2024-04-18

我试图将图像上传到服务器。由于我是 Android 新手,我正在尝试使用其他代码。

这是我的错误:错误文件 https://i.stack.imgur.com/rZnw6.jpg

这是我的活动文件:-

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.provider.MediaStore;
import android.support.v7.app.AppCompatActivity;
import android.util.Base64;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;

import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;

import java.io.ByteArrayOutputStream;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {

    Button btpic, btnup;
    private Uri fileUri;
    String picturePath;
    Uri selectedImage;
    Bitmap photo;
    String ba1;
    public static String URL = "http://127.0.0.1/image.php";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btpic = (Button) findViewById(R.id.cpic);
        btpic.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                clickpic();
            }
        });

        btnup = (Button) findViewById(R.id.up);
        btnup.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                upload();
            }
        });
    }

    private void upload() {
        // Image location URL
        Log.e("path", "----------------" + picturePath);

        // Image
        Bitmap bm = BitmapFactory.decodeFile(picturePath);
        ByteArrayOutputStream bao = new ByteArrayOutputStream();
        bm.compress(Bitmap.CompressFormat.JPEG, 90, bao);
        byte[] ba = bao.toByteArray();
        ba1 = Base64.encodeToString(ba,Base64.DEFAULT);

        Log.e("base64", "-----" + ba1);

        // Upload image to server
        new uploadToServer().execute();

    }

    private void clickpic() {
        // Check Camera
        if (getApplicationContext().getPackageManager().hasSystemFeature(
                PackageManager.FEATURE_CAMERA)) {
            // Open default camera
            Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);

            // start the image capture Intent
            startActivityForResult(intent, 100);

        } else {
            Toast.makeText(getApplication(), "Camera not supported", Toast.LENGTH_LONG).show();
        }
    }

    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == 100 && resultCode == RESULT_OK) {

            selectedImage = data.getData();
            photo = (Bitmap) data.getExtras().get("data");

            // Cursor to get image uri to display

            String[] filePathColumn = {MediaStore.Images.Media.DATA};
            Cursor cursor = getContentResolver().query(selectedImage,
                    filePathColumn, null, null, null);
            cursor.moveToFirst();

            int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
            picturePath = cursor.getString(columnIndex);
            cursor.close();

            Bitmap photo = (Bitmap) data.getExtras().get("data");
            ImageView imageView = (ImageView) findViewById(R.id.Imageprev);
            imageView.setImageBitmap(photo);
        }
    }

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

        private ProgressDialog pd = new ProgressDialog(MainActivity.this);
        protected void onPreExecute() {
            super.onPreExecute();
            pd.setMessage("Wait image uploading!");
            pd.show();
        }

        @Override
        protected String doInBackground(Void... params) {

            ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
            nameValuePairs.add(new BasicNameValuePair("base64", ba1));
            nameValuePairs.add(new BasicNameValuePair("ImageName", System.currentTimeMillis() + ".jpg"));
            try {
                HttpClient httpclient = new DefaultHttpClient();
                HttpPost httppost = new HttpPost(URL);
                httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                HttpResponse response = httpclient.execute(httppost);
                String st = EntityUtils.toString(response.getEntity());
                Log.v("log_tag", "In the try Loop" + st);

            } catch (Exception e) {
                Log.v("log_tag", "Error in http connection " + e.toString());
            }
            return "Success";

        }

        protected void onPostExecute(String result) {
            super.onPostExecute(result);
            pd.hide();
            pd.dismiss();
        }
    }}

梯度页面:在此输入图像描述 https://i.stack.imgur.com/gKPMm.jpg


如果您使用目标 sdk 作为23

然后在里面build.gradle add:

    android
    {
         useLibrary  'org.apache.http.legacy'
    }

随着 Marshmallow 的到来,Apache Http 已被弃用。

而根据这个问题,do not使用这些 gradle 文件中的任何一个,因为它似乎已损坏,

compile 'org.apache.httpcomponents:httpcore:4.4.1'
compile 'org.apache.httpcomponents:httpclient:4.5'
compile 'org.apache.httpcomponents:httpclient-android:4.3.5.1'

希望能帮助到你!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

调试时会忽略依赖项 org.apache.httpcomponents:httpclient:4.5,因为它可能与提供的内部版本冲突 的相关文章

随机推荐

  • 如何将 Quickbooks 桌面应用程序与 PHP(网络应用程序)集成?

    在我的应用程序中 我想使用 php 通过 PHP 集成 QuickBooks 因此 我想从网络服务器 使用PHP 调用QuickBooks桌面版应用程序来推送数据和检索数据 我被困在这里了 我不知道从哪里开始 有人让我从 webconnec
  • 通用应用程序,适用于 iPhone 的纵向方向和 iPad 的横向方向

    我正在使用 Swift 创建一个通用应用程序 我使用过故事板和自动布局 要求是创建一个通用应用程序 仅支持 iPhone 的纵向方向和仅 iPad 的横向方向 我已经为 iPhone 开发了 UI 现在我将开始开发 iPad UI 此外 为
  • 温莎城堡生活方式问题

    我正在实现hangFire 它是我的项目中的一个作业调度库 我面临着与此相同的问题link https stackoverflow com questions 11873905 castle windsor lifestyle depend
  • 使用 for..of 迭代时删除 Set 中的元素是否安全?

    是否指定可以删除实例中的任意元素Set迭代时使用for of然后 你不会在一个元素上迭代多次 除了删除的元素之外 您不会错过迭代开始时集合中的任何其他元素 Yes 在迭代集合时添加元素和删除元素是完全可以的 JavaScript 2015
  • 分析 Windbg 中 !threadpool 和 !threads 的输出

    我已经在四台服务器上生成了转储 并正在分析 threadpool 和 threads 的输出 我注意到以下输出大致一致 0 024 gt threadpool CPU utilization 0 Worker Thread Total 2
  • 在 silverlight 中保存文件和异步回调

    在 Silverlight 中 您必须使用保存文件对话框来保存文件 您只能通过用户事件 即按钮单击 打开此对话框 我从 Web 服务调用异步返回文件数据 我如何将其保存到文件 如果我在服务调用之前询问他们 我将无法在数据返回后使用该流 如果
  • OpenJDK 8:无法解析主机名

    我正在尝试奔跑slf4j with log4jopenJDK 8 上的 2 8 Ubuntu 上的最新版本8u131 b11 0ubuntu1 17 04 1 当通过 maven openjdk 运行简单的 java 类时 无法解析本地主机
  • 如何读取cassandra数据而不区分大小写

    我需要从 cassandra 获取数据而不区分大小写 请帮我 Cassandra 中没有区分大小写的概念 所有数据都存储为byte 所以它甚至不是一个字符串 您可以制作自定义比较器 参见API http wiki apache org ca
  • 如何在 Excel 中根据验证结果进行条件格式设置?

    如果单元格无效 我想更改单元格的格式 在这种情况下 有效 意味着单元格未通过数据验证规则 我问这个问题是因为我在SO上找不到答案 我最终解决了它 我将发布我的答案 看看人们是否愿意发表评论或提供更好的答案 这是一个基本大纲 我想在本周晚些时
  • 局部变量和全局变量默认是如何初始化的?

    根据以下内容 我对吗 global A 引用被初始化为 null global int 为 0 local A 引用为空 local int 未初始化 global A x 和 local A x 均未初始化 谢谢你的帮助 A global
  • 如何在 IDE 中使用 Grails 依赖项

    So I finally https stackoverflow com questions 1867064 grails and local maven dependencies让我的依赖项与 Grails 一起工作 现在 我的 IDE
  • 如何创建行列总和为 1 和 0 的对称矩阵

    我试图找到一种优雅的算法来创建 1 和 0 的 N x N 矩阵 但有以下限制 每行每列之和必须为Q 可自由选择 对角线必须是 0 矩阵必须是对称的 矩阵不一定是随机的 然而 随机和非随机解都很有趣 因此对于 Q 偶数 只需使每一行成为向量
  • Spring验证字符串值是JSON

    我的配置文件中有一些值 它应该是 JSON 它将作为字符串加载 我希望 Spring 在注入之前验证该值确实是有效的 JSON 否则会抛出错误 我已经阅读了现有的验证注释 例如 NotNull Size Min Max Email NotE
  • 使用 Read::read_to_string 从 TcpStream 读取会挂起,直到远程端关闭连接

    我正在尝试实施Haskell IRC 机器人教程 https wiki haskell org Roll your own IRC bot在 Rust 中 我在阅读连接后服务器发送给我的内容时遇到一些困难 似乎发生的情况是 我连接并从服务器
  • C 中正确的 Hello World [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 正确的 C 语言 Hello World 程序是什么 从第一页开始 c 你好世界 的 Google 搜索结果 http www google c
  • 离线时如何将数据写入firebase?斯威夫特3

    在 tableView 中我有一个工作列表 这些作业可以由多个用户访问 因此我需要使用 FIRTransaction 根据第一次写入 FirebaseDatabase 的结果 我需要写入 不写入 Firebase 中的另一个路径 架构如下
  • Firebase 通知主题的限制

    我想为我的 Android 应用程序使用 Firebase 通知 我想知道主题数量是否有限制 或者可以订阅某个主题的用户数量 例如 我可以有 10000 个主题 每个主题有 100 万用户吗 主题或订阅的数量没有限制 主题最初推出后第一年的
  • 自己的图像作为范围内的滑块拇指。如何在CSS上设置样式

    如何使用 css 将图像设置为范围输入类型上的拇指滑块 它在 Internet Explorer 中不起作用 Chrome 和 Firefox 没问题 但在 IE 上我的图像被隐藏了还是怎么的 我用 ms thumb 并尝试将图像设置为背景
  • 使用 TEXT 或 VARCHAR 哪种 DATATYPE 更好?

    这个问题基于两件事表现 and size 使用 TEXT 或 VARCHAR 哪种 DATATYPE 更好 基于哪些性能会影响哪些性能会得到改善 这取决于你用它做什么 我不想给出如此笼统的答案 但这是事实 一般来说 尝试尽可能具体地获取数据
  • 调试时会忽略依赖项 org.apache.httpcomponents:httpclient:4.5,因为它可能与提供的内部版本冲突

    我试图将图像上传到服务器 由于我是 Android 新手 我正在尝试使用其他代码 这是我的错误 错误文件 https i stack imgur com rZnw6 jpg 这是我的活动文件 import android app Activ