Jump to content
  • ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By daemon
      Boa noite,
       
      Estou desenvolvendo um site multi idomas e gostaria de saber qual é a melhore maneira para indexar...
       
      https://ar.dominio.com
      https://br.dominio.com
       
      ou
       
      https://dominio.com/es/es-ar
      https://dominio.com/br/pt-br
       
      Vejo sites como godaddy que coloca a região antes do domínio, e sites como uber que fazem igual a 2 opção.
    • By willianlq
      Boa tarde a todos,
      Estou realizando uma integração da API do google pay, basicamente trabalho com duas classes(MainActivity e GooglePay.java) e estou com alguns problemas na classe principal, mais especificamente no método "possiblyShowGooglePayButton" e "onActivityResult", no qual enfrento problema de NullPointer e erros na conversão de Objetos JSON.
      package com.example.testeapi; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import com.google.android.gms.common.api.ApiException; import com.google.android.gms.common.api.Status; import com.google.android.gms.tasks.OnCompleteListener; import com.google.android.gms.tasks.Task; import com.google.android.gms.wallet.AutoResolveHelper; import com.google.android.gms.wallet.IsReadyToPayRequest; import com.google.android.gms.wallet.PaymentData; import com.google.android.gms.wallet.PaymentDataRequest; import com.google.android.gms.wallet.PaymentsClient; import com.google.android.gms.wallet.Wallet; import com.google.android.gms.wallet.WalletConstants; import org.json.JSONObject; import java.util.Optional; public class MainActivity extends AppCompatActivity { public PaymentsClient mPaymentsClient; private View mGooglePayButton; private static final int LOAD_PAYMENT_DATA_REQUEST_CODE = 42; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mPaymentsClient = Wallet.getPaymentsClient( this, new Wallet.WalletOptions.Builder() .setEnvironment(WalletConstants.ENVIRONMENT_TEST) .build()); possiblyShowGooglePayButton(); } private void possiblyShowGooglePayButton() { final Optional<JSONObject> isReadyToPayJson = GooglePay.getIsReadyToPayRequest(); if (!isReadyToPayJson.isPresent()) { return; } IsReadyToPayRequest request = IsReadyToPayRequest.fromJson(isReadyToPayJson.get().toString()); if (request == null) { return; } Task<Boolean> task = mPaymentsClient.isReadyToPay(request); task.addOnCompleteListener( new OnCompleteListener<Boolean>() { @Override public void onComplete(@NonNull Task<Boolean> task) { try { boolean result = task.getResult(ApiException.class); if (result) { // show Google as a payment option mGooglePayButton = findViewById(R.id.googlepay); mGooglePayButton.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { requestPayment(view); } }); mGooglePayButton.setVisibility(View.VISIBLE); } } catch (ApiException exception) { // Erro } } }); } public void requestPayment(View view) { Optional<JSONObject> paymentDataRequestJson = GooglePay.getPaymentDataRequest(); if (!paymentDataRequestJson.isPresent()) { return; } PaymentDataRequest request = PaymentDataRequest.fromJson(paymentDataRequestJson.get().toString()); if (request != null) { AutoResolveHelper.resolveTask( mPaymentsClient.loadPaymentData(request), this, LOAD_PAYMENT_DATA_REQUEST_CODE); } } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); // valor passado ao AutoResolveHelper if (requestCode == LOAD_PAYMENT_DATA_REQUEST_CODE) { switch (resultCode) { case Activity.RESULT_OK: PaymentData paymentData = PaymentData.getFromIntent(data); String json = paymentData.toJson(); String paymentMethodData = new JSONObject(json) .getJSONObject(paymentMethodData); String paymentToken = ((JSONObject) paymentMethodData) .getJSONObject("tokenizationData") .getString("token"); break; case Activity.RESULT_CANCELED: break; case AutoResolveHelper.RESULT_ERROR: Status status = AutoResolveHelper.getStatusFromIntent(data); Log.i("Status", "Erro na requisição"); // Generally, there is no need to show an error to the user. // The Google Pay payment sheet will present any account errors. break; default: } } } } Se alguém puder me ajudar agradeço, já estou tentando resolver a um bom tempo.


    • By felipeguido
      O site de um cliente da agência foi hackeado e através de um plugin instalado, gerou uma série de páginas aleatórias com alfabetos dos mais diversos.
      Retirei todos os links vindos desse plugin, no entanto, um link ainda permanece nas buscas embora eu tenha já solicitado a remoção na ferramenta de remover url's do Google e adicionado o mesmo em disallow no robots do site.
       
      o link é esse: https://vipoffice.com.br/?30002074-harpsichorksanga_ceo
      Aparece dessa maneira:

       
      O curioso é que embora a url esteja dessa maneira e na serp fique da forma acima, o link direciona direto para a home. Alguém poderia me dar um help nisso?
       
    • By Motta
      Google oferece bolsas para curso online de suporte em TI
    • By Motta
      Google espera triplicar força de trabalho para computação em nuvem na América Latina até fim de 2020
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.