Ir para conteúdo
osrsabetudo

Qual é o melhor programa para criar games para android?

Recommended Posts

Galera preciso da ajuda de vocês, para um programa para a criação de games na plataforma android, de preferencia free, mas se não for possível, pode ser pago mas de preferencia barato.      

Compartilhar este post


Link para o post
Compartilhar em outros sites

VERDADE A UNITY TEM OTIMAS FERRAMENTAS,MAS SE FOR CRIAR UM GAME EM 2D INDICO UTILIZAR O CONSTRUC 2 POIS É IDEAL PARA QUEM TA COMEÇANDO PORQUE NÃO PRECISA PROGRAMAR APENAS CRIA EVENTOS .

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Euler Belfortt
      Olá pessoal alguém pode me ajudar?
      Preciso abrir uma url ao clicar em uma imagem dentro de um textsliderview
      Se alguém puder me ajudar fico grato.
      textSliderView.setOnSliderClickListener(new BaseSliderView.OnSliderClickListener() { @Override public void onSliderClick(BaseSliderView slider) { String url = "http://www.google.com"; // Preciso passar a slider_url aqui Toast.makeText(getActivity(), "ID '" + name.get("slider_url")+"' url '"+ name.get("slider_url") + "' url recebida.", Toast.LENGTH_LONG).show(); Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); startActivity(browserIntent); } });  
    • Por Euler Belfortt
      Olá bom dia.
       
      Tenho uma aplicação android na qual tenho um slider que pego os dados do webserver php.
      Gostaria de saber como faço para abrir a url vinda do banco de dados, quando a imagem for clicada.
       
      Este é meu código eu fiz o código pegando como base uma URL fixa de uma variavel local. mas preciso pegar o a url que vem do banco seria a var = slider_url
      Se alguém puder me ajudar fico muito grato!
      private void makeGetSliderRequest() {         JsonArrayRequest req = new JsonArrayRequest(BaseURL.GET_SLIDER,                 new Response.Listener<JSONArray>() {                     @Override                     public void onResponse(JSONArray response) {                         Log.d(TAG, response.toString());                         try {                             // Parsing json array response                             // loop through each json object                             // arraylist list variable for store data;                             final ArrayList<HashMap<String, String>> listarray = new ArrayList<>();                             for (int i = 0; i < response.length(); i++) {                                 JSONObject jsonObject = (JSONObject) response                                         .get(i);                                 final HashMap<String, String> url_maps = new HashMap<String, String>();                                 url_maps.put("slider_title", jsonObject.getString("slider_title"));                                 url_maps.put("slider_image", BaseURL.IMG_SLIDER_URL + jsonObject.getString("slider_image")); url_maps.put("slider_url", BaseURL.IMG_SLIDER_URL + jsonObject.getString("slider_url"));                                 listarray.add(url_maps);                             }                             for (HashMap<String, String> name : listarray) {                                 final TextSliderView textSliderView = new TextSliderView(getActivity());                                 // initialize a SliderLayout                                 textSliderView                                         .description(name.get("slider_title"))                                         .image(name.get("slider_image"))                                         .setScaleType(BaseSliderView.ScaleType.Fit);                                 //adiciono o slider title no slider                                 textSliderView.bundle(new Bundle());                                 textSliderView.getBundle()                                         .putString("extra", name.get("slider_title"));                                 imgSlider.addSlider(textSliderView);                                 textSliderView.setOnSliderClickListener(new BaseSliderView.OnSliderClickListener() {                                     @Override // Aqui eu capturo o clique na imagem e abro a url. // Preciso pegar a url desta string (slider_url) e inserir no lugar da string url                                     public void onSliderClick(BaseSliderView slider) {                                         String url = "http://www.google.com.br";                                         Toast.makeText(getActivity(), "clicou:", Toast.LENGTH_SHORT).show();                                         Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));                                         startActivity(browserIntent);                                     }                                 });                             }                         } catch (JSONException e) {                             e.printStackTrace();                             Toast.makeText(getActivity(),                                     "Error: " + e.getMessage(),                                     Toast.LENGTH_LONG).show();                         }                         hidepDialog();                     }                 }, new Response.ErrorListener() {             @Override             public void onErrorResponse(VolleyError error) {                 VolleyLog.d(TAG, "Error: " + error.getMessage());                 Toast.makeText(getActivity(),                         error.getMessage(), Toast.LENGTH_SHORT).show();                 hidepDialog();             }         });         // Adding request to request queue         AppController.getInstance().addToRequestQueue(req);     }  
    • Por cristianomg
      E ae pessoal, gostaria de uma orientação sobre um erro que estou tomando e não consegui contornar corretamente, meu conhecimento com android é de basico autodidata.
      Bom o cenário é eu ger uma lista vinda de uma api que traz dados do banco de dados , imagem, nome de cidade e descrição.
      Quero que ao clicar seja aberta uma activity onde a mesma exiba os dados da cidade selecionada exibindo a imagem maior, nome cidade, descrição e data de saida do turismo.
      Pois bem quando eu clico num item da lista tomo o erro:
       
      java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getPackageName()' on a null object reference at android.content.ComponentName.<init>(ComponentName.java:77) at android.content.Intent.<init>(Intent.java:4280) at garagetalke.com.laftturismo.adaptador.GramadoAdapter$GramadoHolder.onClick(GramadoAdapter.java:97)  
      Eu uso fragmento para gerar a lista no recyclerView e criei um activity DetalhesLugares com o seu xml certinho para exibir os dados da cidade que eu cliquei, o meu fragmento que gera a lista de itens esta abaixo:
       
      fragment_lista_lugares_gramado.java
      public class fragment_lista_lugares_gramado extends Fragment implements Response.Listener<JSONObject>, Response.ErrorListener{ private static final String ARG_PARAM1 = "param1"; private static final String ARG_PARAM2 = "param2"; private String mParam1; private String mParam2; RecyclerView recyclerAnuncio; ArrayList<Lugares> listaLugares; ProgressDialog progresso; RequestQueue request; JsonObjectRequest jsonObjectReq; private fragment_lista_lugares_gramado.OnFragmentInteractionListener mListener; public fragment_lista_lugares_gramado() { // Required empty public constructor } public static fragment_lista_lugares_gramado newInstance(String param1, String param2) { fragment_lista_lugares_gramado fragment = new fragment_lista_lugares_gramado(); Bundle args = new Bundle(); args.putString(ARG_PARAM1, param1); args.putString(ARG_PARAM2, param2); fragment.setArguments(args); return fragment; } @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) { View vista = inflater.inflate(R.layout.places_recycler_list, container, false); listaLugares=new ArrayList<>(); recyclerAnuncio= (RecyclerView) vista.findViewById(R.id.listRecycler); recyclerAnuncio.setLayoutManager(new LinearLayoutManager(this.getContext())); recyclerAnuncio.setHasFixedSize(true); request= Volley.newRequestQueue(getContext()); carregarWEBService(); //aqui chamo minha API que me traz os dados do banco corretamente e exibe no App return vista; } private void carregarWEBService() { ....minha API que faz a busca } // TODO: Rename method, update argument and hook method into UI event public void onButtonPressed(Uri uri) { if (mListener != null) { mListener.onFragmentInteraction(uri); } } @Override public void onDetach() { super.onDetach(); mListener = null; } @Override public void onErrorResponse(VolleyError error) { progresso.hide(); Toast.makeText(getContext(), "Não foi possível listar os lugares " +error.toString() , Toast.LENGTH_SHORT).show(); Log.i("ERROR", error.toString()); } @Override public void onResponse(JSONObject response) { progresso.hide(); Lugares lugares = null; Retorno do meu json da API - OK try { for(int i=0; i<json.length();i++){ lugares = new Lugares(); JSONObject jsonObject = null; jsonObject = json.getJSONObject(i); lugares.setId(jsonObject.optString("id")); //seto todos os dados de retorno - OK listaLugares.add(lugares); } progresso.hide(); GramadoAdapter adapter = new GramadoAdapter(listaLugares, fragment_lista_lugares_gramado.this); recyclerAnuncio.setAdapter(adapter); }catch (JSONException e){ e.printStackTrace(); progresso.hide(); Toast.makeText(getContext(), "Não foi possível listar os lugares " +response , Toast.LENGTH_SHORT).show(); } } public interface OnFragmentInteractionListener { // TODO: Update argument type and name void onFragmentInteraction(Uri uri); } }  
      Aqui esta meu Adapter : GramadoAdapter.java
       
      public class GramadoAdapter extends RecyclerView.Adapter<GramadoAdapter.GramadoHolder> { ArrayList<Lugares> listaLugares = new ArrayList<>(); fragment_lista_lugares_gramado ctx; Context fragment_lista_lugares_gramado; public GramadoAdapter(ArrayList<Lugares> listaLugares, fragment_lista_lugares_gramado ctx ){ this.listaLugares = listaLugares; this.ctx = ctx; } @NonNull @Override public GramadoHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_lugares,parent,false); GramadoHolder gramadoViewHolder = new GramadoHolder(view, fragment_lista_lugares_gramado,listaLugares); return gramadoViewHolder; } @Override public void onBindViewHolder(@NonNull GramadoHolder holder, int position) { Lugares LUG = listaLugares.get(position); holder.id.setText(LUG.getId().toString()); holder.cidade.setText(LUG.getCidade()); holder.descricao.setText(LUG.getDescricao()); holder.dataSaida.setText("Quando? "+(LUG.getDataSaida())); if(listaLugares.get(position).getImagem() != null){ holder.idImagem.setImageBitmap(LUG.getImagem()); }else{ holder.idImagem.setImageResource(R.drawable.publicacao_sem_foto); } } @Override public int getItemCount() { return listaLugares.size(); } public class GramadoHolder extends RecyclerView.ViewHolder implements View.OnClickListener { TextView id, cidade, descricao, dataSaida, lugaresOnibus, valor, rating; ImageView idImagem; ArrayList<Lugares> listaLugares = new ArrayList<Lugares>(); Context ctx; Context fragment_lista_lugares_gramado; public GramadoHolder(View view, Context fragment_lista_lugares_gramado, ArrayList<Lugares> listaLugares) { super(view); this.listaLugares = listaLugares; view.setOnClickListener(this); id = (TextView) view.findViewById(R.id.id_place); cidade = (TextView) view.findViewById(R.id.cidade_place); descricao = (TextView) view.findViewById(R.id.descricao_place); dataSaida = (TextView) view.findViewById(R.id.datasaida_place); idImagem = view.findViewById(R.id.place_image); } @Override public void onClick(View v) { int position = getAdapterPosition(); Lugares lugares = this.listaLugares.get(position); //Eu acho que aqui esta meu problema mas nao sei o que pode ser...tipo nao abre a activity detalhes //ja tentei getActivity(), getApplication() e outras coisas tb, como é o fragmento que gera a lista //então nao o que fazer pra instanciar Intent intent = new Intent(fragment_lista_lugares_gramado, DetalhesLugares.class); intent.putExtra("tvImagem",lugares.getImagem()); intent.putExtra("tvCidade",lugares.getCidade()); intent.putExtra("tvdescricao",lugares.getDescricao()); this.fragment_lista_lugares_gramado.startActivity(intent); } } }  
      DetalhesActivity.java
      ImageView imageView; TextView text_Cidade, text_Descricao; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_detalhes_lugares); imageView = (ImageView) findViewById(R.id.tvImagem); text_Cidade = (TextView) findViewById(R.id.tvCidade); text_Descricao = (TextView) findViewById(R.id.tvDesricao); imageView.setImageResource(getIntent().getIntExtra("tvImagem",00)); text_Cidade.setText("Cidade: "+getIntent().getStringExtra("tvCidade")); text_Descricao.setText("Descrição: "+getIntent().getStringExtra("tvdescricao")); }   Alguém sabe me orientar do que fazer pra conseguir?
       
    • Por lucas85235
      Olá, estou montando uma equipe e procuro pessoas que tenham disposição de aprender e trabalhar neste projeto, que se trata de um jogo para mobile(android inicialmente) de complexidade media, o projeto já tem uma base o GDD detalhes no link abaixo, o projeto do jogo ainda não esta totalmente completo mas a mecânica já esta bem definida.
        Qualquer futuro lucro com o projeto sera divido entre a equipe.
        Pra quem gostar do projeto pode entrar em contato comigo pelo skype: lucas85235  ou  whatzap 92994822837 ou pela propiá postagem mesmo.
       
      GDD do projeto: https://drive.google.com/file/d/1942RNyPOySmoCdfhtk72w9w2iKxE3Lmz/view?usp=sharing
       
    • Por kathsystems
      Olá,
       
      Pessoal estou tentando criar um arquivo xml em tempo de execução no Android: "CliendDataSet.SaveToFile('/data/data/App/files/Arquivo.xml');" .Não da erro mas não cria o arquivo.
       
      Meu Mainfast:
       
      <?xml version="1.0" encoding="utf-8"?>
      <!-- BEGIN_INCLUDE(manifest) -->
      <manifest xmlns:android="http://schemas.android.com/apk/res/android"
              package="%package%"
              android:versionCode="%versionCode%"
              android:versionName="%versionName%"
              android:installLocation="%installLocation%">
          <!-- This is the platform API where NativeActivity was introduced. -->
          <uses-sdk android:minSdkVersion="%minSdkVersion%" android:targetSdkVersion="%targetSdkVersion%" />
          String[] permissoes = new String[]{
              Manifest.permission.READ_CONTACTS, Manifest.permission.WRITE_CONTACTS,};
              PermissionUtils.validate(this, 0, permissoes);
      <%uses-permission%>
          <uses-permission android:name="android.permission.INTERNET" />
          <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
          <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
          <uses-permission android:name="android.permission.WRITE_OWNER_DATA" />
          <uses-permission android:name="android.permission.READ_OWNER_DATA" />
          <uses-feature android:glEsVersion="0x00020000" android:required="True"/>
          <application android:persistent="%persistent%"
              android:restoreAnyVersion="%restoreAnyVersion%"
              android:label="%label%"
              android:debuggable="%debuggable%"
              android:largeHeap="%largeHeap%"
              android:icon="%icon%"
              android:theme="%theme%"
              android:hardwareAccelerated="%hardwareAccelerated%">
       
      alguém sabe onde estou errando?
       
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.