Jump to content
Omar~

Android 9 Estragou meu telefone

Recommended Posts

Bom ainda não vi um tópico similar a esse aqui no iMasters, e também não condiz com seu conteúdo bruto. Mas vim aqui porque acredito que alguém possa me dar uma luz.

Bem possuo um Sansung j4+,  que ao realizar a gigantesca atualização para do sistema para versão 9 o telefone passou a apresentar inúmeras anomalias, como não atender ligação, não fechar aplicativos, falha em carregamentos, lentidão extrema, descarregamento da bateria em poucos minutos, além de super aquecimento entre outras sem mencionar que a interface ficou extremamente ridícula (horrível mesmo).

Tentei localizar um lugar para reportar ou reclamar de tais problemas, mas não encontrei.

Penso que se eu restaurar as configurações originais de fábrica ou formatar possa voltar o sistema a versão anterior (QUE FUNCIONAVA LINDAMENTE), porém me rebate nos termos de atualização que se não fazer como algumas pessoas me disseram o android pode deixar de funcionar.

Quem está mais por dentro desse ramo poderiam me dar dicas de qual a melhor forma de proceder?

Poque com essa versão 9 do android estou a ponto de atirar o telefone na parede de tão ruim que ele ficou.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Marcosjrpb
      ...
    • By godrugal
      Eu tenho minha tela de busca. Ao digitar, ele traz o resultado da busca. O resultado é mostrado em uma recyclerview. Meu Recyclerview foi modelado com algumas textviews e uma imagem. Queria que ao tocar no item da Recyclerview, que o texto da textview fosse passado para outra fragment (tela) que tenho. Consigo fazer até a parte da chamada da tela. Só não consigo resgatar o texto da textview na outra tela. Cheguei até a instanciar as textviews da outra tela que esta modelada o recycler.
      Minha classe do adaptador:
       
      public class CursosAdapterImg extends RecyclerView.Adapter<CursosAdapterImg.CursosHolder> { List<Curso>listaCursos; private OnNoteListener mOnNoteListener; public CursosAdapterImg(List<Curso> listaCursos, Context context,OnNoteListener onNoteListener) { this.listaCursos = listaCursos; this.mOnNoteListener = onNoteListener; } @NonNull @Override public CursosHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View vista = LayoutInflater.from(parent.getContext()).inflate(R.layout.lista_cursos_img, parent, false); RecyclerView.LayoutParams layoutParams = new RecyclerView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT ); vista.setLayoutParams(layoutParams); return new CursosHolder(vista, mOnNoteListener); } @Override public void onBindViewHolder(@NonNull CursosHolder holder, int position) { // holder.txtCodigo.setText(listaCursos.get(position).getCodigo().toString()); holder.txtNome.setText(listaCursos.get(position).getNome().toString()); holder.txtProfessor.setText(listaCursos.get(position).getProfessor().toString()); holder.txtCategoria.setText(listaCursos.get(position).getCategoria().toString()); if(listaCursos.get(position).getImagem()!=null){ holder.idImagem.setImageBitmap(listaCursos.get(position).getImagem()); }else{ holder.idImagem.setImageResource(R.drawable.sem_foto); } } @Override public int getItemCount() { return listaCursos.size(); } public class CursosHolder extends RecyclerView.ViewHolder implements View.OnClickListener { TextView txtNome,txtCodigo,txtProfessor, txtCategoria; ImageView idImagem; OnNoteListener onNoteListener; public CursosHolder(View itemView,OnNoteListener onNoteListener) { super(itemView); txtNome= (TextView) itemView.findViewById(R.id.nomeCurso); //txtCodigo= (TextView) itemView.findViewById(R.id.txtCodigo); txtProfessor= (TextView) itemView.findViewById(R.id.Professor); txtCategoria= (TextView) itemView.findViewById(R.id.Categoria); idImagem= itemView.findViewById(R.id.idImagem); this.onNoteListener = onNoteListener; itemView.setOnClickListener(this); } @Override public void onClick(View view) { onNoteListener.onNoteClick(getAdapterPosition()); } } public interface OnNoteListener{ void onNoteClick(int position); } } Abaixo a minha tela da busca que retorna uma Recyclerview:
       
      return vista; } private void carregarWEBService() { progresso = new ProgressDialog(getContext()); progresso.setMessage("Buscando..."); progresso.show(); String url = "http://192.168.0.5/webservices/consultarListaImagemUrlNome.php?nome="+ campoNome.getText().toString(); jsonObjectReq = new JsonObjectRequest(Request.Method.GET, url, null, this, this); request.add(jsonObjectReq); } @Override public void onErrorResponse(VolleyError error) { progresso.hide(); Toast.makeText(getContext(), "Não foi possível listar os cursos " +error.toString() , Toast.LENGTH_SHORT).show(); Log.i("ERROR", error.toString()); } @Override public void onResponse(JSONObject response) { progresso.hide(); Curso curso = null; JSONArray json = response.optJSONArray("curso"); // nome da tabela curso try { for(int i=0; i<json.length();i++){ curso = new Curso(); JSONObject jsonObject = null; jsonObject = json.getJSONObject(i); curso.setNome(jsonObject.optString("nome")); curso.setProfessor(jsonObject.optString("professor")); curso.setCategoria(jsonObject.optString("categoria")); curso.setDado(jsonObject.optString("imagem")); listaCursos.add(curso); } progresso.hide(); CursosAdapterImg adapter = new CursosAdapterImg(listaCursos,getContext(),this); recyclerCursos.setAdapter(adapter); }catch (JSONException e){ e.printStackTrace(); progresso.hide(); Toast.makeText(getContext(), "Não foi possível listar os cursos " +response , Toast.LENGTH_SHORT).show(); } } @Override public void onNoteClick(int position) { listaCursos.get(position); //Falta passar os parâmetros consultarCursoUrl fragmentConsulta = new consultarCursoUrl(); /* Estava testando nesse bloco passagem de parâmetros para outra fragment Bundle arguments = new Bundle(); arguments.putString( "professor" , "Testando a passagem"); fragmentConsulta.setArguments(arguments); */ FragmentManager fragmentManager = getActivity().getSupportFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.replace(R.id.content_main,fragmentConsulta).commit(); } E esse código abaixo, é minha tela que é chamada após tocar no item do recyclerview:
       
      @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (getArguments() != null) { mParam1 = getArguments().getString(ARG_PARAM1); mParam2 = getArguments().getString(ARG_PARAM2); } } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment View vista = inflater.inflate(R.layout.fragment_consultar_curso_url, container, false); campoCodigo = vista.findViewById(R.id.codigo); campoNome = vista.findViewById(R.id.txt_nome); campoCategoria = vista.findViewById(R.id.txt_categoria); campoProfessor = vista.findViewById(R.id.txt_professor); btnAtualizar = vista.findViewById(R.id.btnAtualizar); btnDeletar = vista.findViewById(R.id.btnDeletar); btnConsultar = vista.findViewById(R.id.btnConsultar); imgFoto = vista.findViewById(R.id.imagemId); /* Estava fazendo teste de parametros nesse bloco Bundle arguments = getArguments(); String nomeProfessor = arguments.getString("professor"); campoNome.setText(nomeProfessor); */ request = Volley.newRequestQueue(getContext()); btnConsultar.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { carregarWEBService(); } }); if(solicitarPermissoesVersoesSuperiores()){ imgFoto.setEnabled(true); }else{ imgFoto.setEnabled(false); } imgFoto.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { carregarDialog(); } }); btnAtualizar.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { carregarWEBServiceAtualizar(); } }); btnDeletar.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { carregarWEBServiceDeletar(); } }); return vista; }  
    • By vinihhylian0103
      Estou fazendo um projeto de Delphi escola e nele tenho que gravar dados no SQLITE. Estou usando o seguinte código:
       
      unit UClube; interface uses   System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,   FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,   FMX.ListView.Types, FMX.ListView.Appearances, FMX.ListView.Adapters.Base,   FMX.StdCtrls, FMX.ListView, FMX.DateTimeCtrls, FMX.Edit,   FMX.Controls.Presentation, FMX.TabControl, FireDAC.Stan.Intf,   FireDAC.Stan.Option, FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf,   FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys,   FireDAC.Phys.SQLite, FireDAC.Phys.SQLiteDef, FireDAC.Stan.ExprFuncs,   FireDAC.Stan.Param, FireDAC.DatS, FireDAC.DApt.Intf, FireDAC.DApt,   FireDAC.FMXUI.Wait, System.Rtti, System.Bindings.Outputs, Fmx.Bind.Editors,   Data.Bind.EngExt, Fmx.Bind.DBEngExt, Data.DB, FireDAC.Comp.DataSet,   Data.Bind.Components, Data.Bind.DBScope, FireDAC.Comp.UI, FireDAC.Comp.Client, System.IOUtils; type   TForm1 = class(TForm)     TabControl1: TTabControl;     TabItem2: TTabItem;     tb1: TTabItem;     lvSocio: TListView;     btnSalvar: TButton;     btnCancelar: TButton;     btnEditar: TButton;     btnExcluirr: TButton;     Panel1: TPanel;     edtDataNasc: TDateEdit;     edtCod: TEdit;     edtNome: TEdit;     edtRg: TEdit;     edtCPF: TEdit;     edtEndereco: TEdit;     Label1: TLabel;     Label2: TLabel;     Label3: TLabel;     Label4: TLabel;     Label5: TLabel;     labwl: TLabel;     NOME: TLabel;     Button5: TButton;     Panel2: TPanel;     edtDataA: TDateEdit;     edtCodSocio: TEdit;     Label6: TLabel;     Label10: TLabel;     Label11: TLabel;     Label12: TLabel;     rdbSocio: TRadioButton;     edtNomeA: TEdit;     btnNovoA: TButton;     edtHoraIA: TEdit;     Label7: TLabel;     Edit7: TEdit;     edtHoraFA: TLabel;     edtDescricaoA: TEdit;     Label9: TLabel;     edtValorA: TEdit;     btnCancelarA: TButton;     btnEditarA: TButton;     btnExcluirA: TButton;     btnSalvarA: TButton;     lvAgendamento: TListView;     FDConnPrincipal: TFDConnection;     qrSocio: TFDQuery;     qrAgendamento: TFDQuery;     FDPhysSQLiteDriverLink1: TFDPhysSQLiteDriverLink;     FDGUIxWaitCursor1: TFDGUIxWaitCursor;     BindSourceDB1: TBindSourceDB;     BindingsList1: TBindingsList;     LinkListControlToField1: TLinkListControlToField;     LinkControlToField1: TLinkControlToField;     LinkControlToField2: TLinkControlToField;     LinkControlToField3: TLinkControlToField;     LinkControlToField4: TLinkControlToField;     LinkControlToField5: TLinkControlToField;     LinkControlToField6: TLinkControlToField;     qrSocioID: TFDAutoIncField;     qrSocioNOME: TStringField;     qrSocioRG: TStringField;     qrSocioCPF: TStringField;     qrSocioENDERECO: TStringField;     qrSocioDATA_NASC: TDateField;     qrSocioCODIGO: TIntegerField;     qrAgendamentoID: TFDAutoIncField;     qrAgendamentoNOME: TStringField;     qrAgendamentoCODIGO: TIntegerField;     qrAgendamentoDESCRICAO: TWideMemoField;     qrAgendamentoDATA: TDateField;     qrAgendamentoHORA_INICIO: TStringField;     qrAgendamentoHORARIO_FIM: TStringField;     qrAgendamentoVALOR: TLargeintField;     qrAgendamentoSOCIO: TStringField;     procedure rdbSocioChange(Sender: TObject);     procedure btnSalvarClick(Sender: TObject);     procedure Button5Click(Sender: TObject);     procedure btnCancelarClick(Sender: TObject);     procedure btnEditarClick(Sender: TObject);     procedure btnExcluirrClick(Sender: TObject);     procedure FormShow(Sender: TObject);   private     { Private declarations }   public     { Public declarations }   end; var   Form1: TForm1; implementation {$R *.fmx} procedure TForm1.btnCancelarClick(Sender: TObject); begin qrSocio.Cancel; Panel1.Enabled := False; end; procedure TForm1.btnEditarClick(Sender: TObject); begin if qrSocio.RecordCount > 0 then begin   qrSocio.Edit;   Panel1.Enabled := True;   edtNome.SetFocus; end; end; procedure TForm1.btnExcluirrClick(Sender: TObject); begin if qrSocio.RecordCount = 0 then abort; qrSocio.Delete; ShowMessage('Dados excluídos!'); end; procedure TForm1.btnSalvarClick(Sender: TObject); begin if edtNome.Text = '' then begin ShowMessage('O nome não pode estar vázio!'); edtNome.SetFocus; abort; end; qrSocio.Post; qrSocio.Refresh; Panel1.Enabled := False; end; procedure TForm1.Button5Click(Sender: TObject); begin Panel1.Enabled := True; edtNome.SetFocus; qrSocio.Append; end; procedure TForm1.FormShow(Sender: TObject);   begin   FDConnPrincipal.Connected := True;   try  {$IF DEFINED (IOS) or DEFINED (ANDROID)}   FDConnPrincipal.Params.Values['DATABASE'] := TPath.Combine(TPath.GetDocumentsPath, 'BD_CLUBE.s3db');   {$ENDIF}   except on E: Exception do   ShowMessage(e.Message);   end;   qrSocio.Open(); end; procedure TForm1.rdbSocioChange(Sender: TObject); begin  if rdbSocio.IsChecked = true then  begin  edtCodSocio.Enabled := true;  edtCodSocio.SetFocus;  end; end; end.
      E recebo o seguinte erro: 
    • By gamesmax2
      Pessoal criei um app Webview, com leitor de código de barra, porém tiver que utilizar a Bíblioteca zxing barcode, tá funcionando só que é queria que ao ler o código de barra, no lugar do alert fizesse um redirecionamento com código via get para tá salvando com php no banco de dados.
       
      creio que seja uma função simples um redirecionamento, como tenho conhecimento somente com php, tenho dificuldades com Java do Android.
    • By cristianomg
      Preciso de uma orientação estou iniciando com programação para android, e tenho o seguinte caso.
      Possuo dois models Usuario e Anuncio, 
      Quando eu crio um novo usuario e cadastro ele eu adiciono os seguintes dados:
       

       
      Quando eu salvo um anuncio do usuario acima por exemplo, eu quero implementar um contador e adicionar +1 no campo qtdAnuncio, ai vem minha pergunta
      Como eu posso fazer ao exemplo clicar no botão de cadastrar anuncio e colocar dentro de uma variavel o valor do campo qtdAnuncio que esta salvo o dado no nó de usuario?
       
      Ex:  int valorAnuncios = qtdAnuncio que seria 1
      Eu preciso primeiramente resgatar este campo qtdAnuncio do usuario logado
       
      Eu tentei nomear 
      private Usuario usuarioLogado; e xecutar a chamada de um metodo 
      usuarioLogado = UsuarioFirebase.getDadosUsuarioLogado() Método chamado
      public static Usuario getDadosUsuarioLogado(){ FirebaseUser firebaseUser = getUsuarioAtual(); Usuario usuario = new Usuario(); usuario.setEmail( firebaseUser.getEmail() ); usuario.setNome( firebaseUser.getDisplayName().toUpperCase() ); usuario.setId( firebaseUser.getUid() ); return usuario; }  
      E depois em uma dado momento dentro do meu código no 
       
      @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_editar_perfil); //validar permissoes Permissao.validarPermissoes(permissoesNecessarias, this, 1); //configuracoes iniciais usuarioLogado = UsuarioFirebase.getDadosUsuarioLogado(); //Tentei aqui buscar o valor do qtdAnuncio desta forma int valor = String.valueof(usuariologado.getQtdAnuncio()); Só que ao depurar o valor é sempre zero , sendo que tenho qtdAnuncio = 1 no banco do firebase, cfe imagem no inicio
      Alguém pode me orientar como pegar este valor ??
       
×

Important Information

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