当前位置: 首页 > 知识库问答 >
问题:

无法从azure easy表中检索数据&将其绑定到Android Studio中的列表

姚乐家
2023-03-14

我正在开发一个Android应用程序,并且在Azure中创建了一个应用程序services&我一直在试图理解如何通过MobileAppServices与DB通信。

public void onClickVerify(View view)  {

        if (mClient == null)
            return;

        AsyncTask<Void, Void, Void> task = new AsyncTask<Void, Void, Void>(){
            @Override
            protected Void doInBackground(Void... params) {
                try {
                    final List<Users> URS = GetItemsFromMobileServiceTable();
                    runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            Verified = "Account is not Verified";
                            for (Users i : URS) {
                                if (i.getUN() == null)
                                    break;

                                else if( i.getUN() == Username.toString()) {
                                    Verified = "Account Verified";
                                }
                            }
                        }
                    });
                } catch (final Exception e) {}

                return null;
            }
        }.execute();

        runAsyncTask(task);

    }


   private List<Users> GetItemsFromMobileServiceTable() throws ExecutionException, InterruptedException, MobileServiceException {
        return mUser.where().field("UN").eq(Username.toString()).execute().get();
    }
                                              --------- beginning of crash 03-14 12:40:54.623 3500-3500/com.himk.karam.h
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);
    try {
        mClient = new MobileServiceClient("https://khim.azurewebsites.net",this);

        mClient.setAndroidHttpClientFactory(new OkHttpClientFactory() {
            @Override
            public OkHttpClient createOkHttpClient() {
                OkHttpClient client = new OkHttpClient();
                client.setReadTimeout(20, TimeUnit.SECONDS);
                client.setWriteTimeout(20, TimeUnit.SECONDS);
                return client;
            }
        });

        List<Users> mUsers = mClient.getTable(Users.class).execute().get();//if I remove this line the activity will load normally       
        Username = (EditText) findViewById(R.id.etUN);
    } catch (MalformedURLException | InterruptedException | ExecutionException | MobileServiceLocalStoreException e) {
        e.printStackTrace();
    }
}

注意:我想做的只是在ANDROID中有一个列表中的数据,我不想查看它给用户。

共有1个答案

逄学潞
2023-03-14

正如Aaron Chen所指出的,例外情况是多次执行AsyncTask。在使用AsyncTask的#1实现中,任务执行两次。第一次在asynctask task=new asynctask (){@override protected Void doInBackground(Void...params){/*..*/}.execute(); ,第二次在muser.where().field(“un”).eq(username.toString()).execute().get();中。如果您从第一次中删除execute(),它应该可以正常工作。

在#2实现中,活动没有加载,因为您正在oncreate()方法中的UI线程上运行一个异步查询。如果在后台线程上运行,这个问题就会消失。您可以查看关于如何从移动应用后端查询数据的azure文档。有很多例子应该是有用的。

 类似资料:
  • 我在从两个表中检索数据然后列出它们时遇到了一些问题。我想将用户的提要帖子和他们喜欢的活动全部列在一个列表中。 提要-用户帖子表 我想做的是:在活动墙中列出提要和类似用户的活动。 所以它应该输出如下(按时间戳desc排序): “这是用户A的帖子” 我的当前SQL: 然而,我的问题是我不知道如何链接这两个表,因为我的“feed”中的ID与“likes”中的ID不同

  • 我一直在做一个应用程序,它有一个SQL数据库。我正在尝试检索SQL数据库“year_details”的特定列“col3”中的数据,但当按下一个按钮时,我得到了很多错误,谁能告诉我,我做错了什么。

  • 我有一个返回列表的函数。我试图在drools when子句中调用此函数,并将其绑定到名为l1的变量。如果像这样绑定变量,则子句不会执行。然而,如果我以类似的方式绑定映射,则执行then子句中的语句。我正在使用最新版本的drools。 这是代码 这里规则'test1'执行并打印值。但是我没有看到规则'test2'的任何输出。 任何帮助都将不胜感激。

  • 问题内容: 我正在MVC 4应用程序中工作..我想使用jQuery将json数据绑定到应用程序中的表。我能够使用方法将数据集(我从数据库中获取数据)转换为json数据并获取json数据。但是我不知道如何使用jquery将其绑定到表。请告诉我解决此问题的方法。 JSon数据 : 我的json数据是这样的。 jQuery : 查看 : 控制器 : 问题答案: 首先,您应该将返回的json 字符串 解析

  • 本文向大家介绍从SAP ABAP中的表中检索数据,包括了从SAP ABAP中的表中检索数据的使用技巧和注意事项,需要的朋友参考一下 通常,在ABAP中,您使用OpenSql语句来检索数据。OpenSql语句类似于普通的SQL语句。 如果需要在远程系统上使用功能模块,则需要使用诸如RFC_READ_TABLE之类的远程功能调用。它也使您可以查询远程呼叫中的数据。

  • 问题内容: 我试图学习有关MySQL的更多信息,并使用Java(在Android上)从WAMS服务器上的数据库访问和检索信息。我的应用程序的设置方式是它具有一个初始登录屏幕,该屏幕还捕获(从另一个表中)登录的用户名的“ uid”并进行存储。 登录后(功能正常- 我设置了一个敬酒通知,其中显示了登录用户的检索到的用户名和uid),它会转到一个新屏幕(dashboard.xml),该屏幕具有一个Tex