Android Приложение отправляет данные в скрипт веб-приложения. Как мне заставить его перестать отправлять Item1, Item2 и т. Д. - PullRequest
0 голосов
/ 10 июля 2020

Вот код в моей Android программе:

    @Override
    public void onClick(View v) {

        if(v==buttonAddItem){

            final ProgressDialog loading = ProgressDialog.show(this,"Adding Item","Please wait");
            final String name = editTextItemName.getText().toString().trim();
            final String brand = editTextBrand.getText().toString().trim();

            StringRequest stringRequest = new StringRequest(Request.Method.POST, "https://script.google.com/macros/s/xxxxxxxxxxxxxxxxx/exec",
                    new Response.Listener<String>() {
                        @Override
                        public void onResponse(String response) {
                            loading.dismiss();
                            Toast.makeText(MainActivity.this,response, Toast.LENGTH_LONG).show();
                            Intent intent = new Intent(getApplicationContext(),MainActivity.class);
                            startActivity(intent);
                        }
                    },
                    new Response.ErrorListener() {
                        @Override
                        public void onErrorResponse(VolleyError error) {

                        }
                    }
            ) {
                @Override
                protected Map<String, String> getParams() {
                    Map<String, String> parmas = new HashMap<>();
                    parmas.put("action","addItem");
                    parmas.put("itemName",name);
                    parmas.put("brand",brand);

                    return parmas;
                }
            };
            int socketTimeOut = 50000;
            RetryPolicy retryPolicy = new DefaultRetryPolicy(socketTimeOut, 0, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT);
            stringRequest.setRetryPolicy(retryPolicy);
            RequestQueue queue = Volley.newRequestQueue(this);
            queue.add(stringRequest);

        }

    }
}

и вот мое опубликованное веб-приложение:

var ss = SpreadsheetApp.openByUrl("https://docs.google.com/spreadsheets/d/xxxxxxxxxxxxxxxxxxxxxxx/edit#gid=0");

var sheet = ss.getSheetByName('Items'); // be very careful ... it is the sheet name .. so it should match 


function doPost(e){
var action = e.parameter.action;

if(action == 'addItem'){
  return addItem(e);

}

}





function addItem(e){

var date =  new Date();

var id  =  e.parameter.doesntmatterwhatiwritehere;

var itemName = e.parameter.itemName;

var brand = e.parameter.brand;

sheet.appendRow([date,id,itemName,brand]);

   return ContentService.createTextOutput("Success").setMimeType(ContentService.MimeType.TEXT);



}

Думаю, я пробовал редактировать практически все. Я не могу избавиться от столбца 2, отправляющего Item2, Item3, Item4 ... каждый раз, когда я нажимаю отправить. Любые идеи? Кроме того, почему нет никакого влияния, если я удалю контент из скрипта приложений? Например, похоже, что вары ничего не делают.

1 Ответ

0 голосов
/ 10 июля 2020

Забудь! Сценарий Ap не будет обновляться, если я не выберу новую версию во время публикации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...