Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当我在android studio中将django API连接到我的应用程序时,它会显示错误_Java_Android_Api_Android Studio_Django Rest Framework - Fatal编程技术网

Java 当我在android studio中将django API连接到我的应用程序时,它会显示错误

Java 当我在android studio中将django API连接到我的应用程序时,它会显示错误,java,android,api,android-studio,django-rest-framework,Java,Android,Api,Android Studio,Django Rest Framework,我的笔记本电脑上安装了Django版本,我想将API连接到我的android应用程序 我也创建了一个虚拟环境 我无法连接到Django API,请帮助我如何连接到API。提前谢谢 我在互联网上冲浪,但无法获得任何输出。我第一次在这里发布问题,对所犯的任何错误表示抱歉 我想将Django API连接到我的项目。我想在移动应用程序中以json格式查看信息 当我连接android studio中的Django API应用程序时,它显示了一个错误,我在上面附加了一个文件 我正在附加我的android文

我的笔记本电脑上安装了Django版本,我想将API连接到我的android应用程序

我也创建了一个虚拟环境

我无法连接到Django API,请帮助我如何连接到API。提前谢谢

我在互联网上冲浪,但无法获得任何输出。我第一次在这里发布问题,对所犯的任何错误表示抱歉

我想将Django API连接到我的项目。我想在移动应用程序中以json格式查看信息

当我连接android studio中的Django API应用程序时,它显示了一个错误,我在上面附加了一个文件

我正在附加我的android文件

我用了一个改装过的图书馆。我想将API连接到我的应用程序

MainActivity.java

ListView listView;
GridView gridView;
public String cap;
public String cap1;
String[] pid;
String[] ptitle;
String[] pdes;
String[] dt;
String[] lk;
TextView name,descrip;

int capnum;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Retrofit retrofit = new Retrofit.Builder().baseUrl(djangoApi.BASE_URL).addConverterFactory(GsonConverterFactory.create()).build();
    djangoApi api = retrofit.create(djangoApi.class);
    name= findViewById(R.id.text);
    descrip=findViewById(R.id.image);
    Call<List<PostTable>> call = api.gettabledata();

    call.enqueue(new Callback<List<PostTable>>() {
        @Override
        public void onResponse(Call<List<PostTable>> call, Response<List<PostTable>> response) {
            List<PostTable> pt = response.body();
            assert pt != null;
            String[] pid = new String[pt.size()];
            String[] ptitle = new String[pt.size()];
            String[] pdes = new String[pt.size()];
            String[] pdt = new String[pt.size()];
            String[] plk = new String[pt.size()];
            for (int i = 0; i < pt.size(); i++) {
                pid[i] = pt.get(i).getid();
                ptitle[i] = pt.get(i).gettitle();
                pdes[i] = pt.get(i).getdescription();
                pdt[i] = pt.get(i).getdatetime();
                plk[i] = pt.get(i).getlikes();

            }
            for (int i = 0; i < pt.size(); i++) {
                if (ptitle[i].equalsIgnoreCase("drhsrh")) {
                    capnum = i;
                    cap = pdes[capnum];
                    cap1=ptitle[capnum];

                }
            }
            name.setText(cap1);
            descrip.setText(cap);
            //Glide.with(getApplicationContext()).load(cap).into(imageView);
            //name.setText(cap1);
}
        @Override
        public void onFailure(Call<List<PostTable>> call, Throwable t) {
            Toast.makeText(getApplicationContext(), t.getMessage(), Toast.LENGTH_SHORT).show();
        }
    });
}
}
ListView-ListView;
GridView;
公共弦帽;
公共字符串cap1;
字符串[]pid;
字符串[]ptitle;
字符串[]pdes;
字符串[]dt;
字符串[]lk;
TextView名称,descripp;
int capnum;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
改装改装=新建改装.Builder().baseUrl(djangoApi.BASE_URL).addConverterFactory(GsonConverterFactory.create()).build();
djangoApi=reformation.create(djangoApi.class);
name=findviewbyd(R.id.text);
descripp=findviewbyd(R.id.image);
Call Call=api.gettabledata();
call.enqueue(新回调(){
@凌驾
公共void onResponse(调用、响应){
List pt=response.body();
断言pt!=null;
字符串[]pid=新字符串[pt.size()];
String[]ptitle=新字符串[pt.size()];
字符串[]pdes=新字符串[pt.size()];
String[]pdt=新字符串[pt.size()];
字符串[]plk=新字符串[pt.size()];
对于(int i=0;i
这是接口类的代码

interface djangoApi {
    String BASE_URL="http://127.0.0.1:8000/";
    @GET("post_table/?format=json")
    Call<List<PostTable>> gettabledata();
接口API{ 字符串BASE_URL=”http://127.0.0.1:8000/"; @获取(“post_table/?format=json”) 调用gettabledata();
从Android 9(API级别28)开始,默认情况下禁用明文支持

请检查此文档

如果您想在本地进行测试,请在AndroidManifest.xml的应用程序标记中添加以下安卓:usesCleartextTraffic=“true”

<application
    android:name=".App"
    android:allowBackup="false"
    android:fullBackupContent="false"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme"
    android:usesCleartextTraffic="true">


你能澄清你的回答吗?你是如何从应用程序到服务器拨打电话的?请确保在“假设”应用程序代码中存在问题之前,地址是可访问的。