Android 我在logcat hw_get_module_by_类中发现了这个错误:module name gralloc

Android 我在logcat hw_get_module_by_类中发现了这个错误:module name gralloc,android,android-studio,android-fragments,mobile,Android,Android Studio,Android Fragments,Mobile,我在手机上运行我的应用程序。一切都很顺利。。但是在我为调试签入日志之后。 让我看看这个错误是很难的 E/HAL:hw_获取模块由类:模块名称gralloc E/HAL:hw_获取模块由类:模块名称gralloc 当用户第一次运行应用程序时显示。它在应用程序启动屏幕上及时显示。我不确定是哪种代码导致了这件事。 因此,我将向您展示我的启动代码和片段主代码 这是我的splasactivity代码: package com.apps.mathar; import android.content.Int

我在手机上运行我的应用程序。一切都很顺利。。但是在我为调试签入日志之后。 让我看看这个错误是很难的

E/HAL:hw_获取模块由类:模块名称gralloc E/HAL:hw_获取模块由类:模块名称gralloc

当用户第一次运行应用程序时显示。它在应用程序启动屏幕上及时显示。我不确定是哪种代码导致了这件事。 因此,我将向您展示我的启动代码和片段主代码

这是我的splasactivity代码:

package com.apps.mathar;

import android.content.Intent;
import android.content.res.Resources;
import android.os.Build;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.TypedValue;
import android.view.Window;
import android.view.WindowManager;

import com.apps.utils.Constant;
import com.apps.utils.JsonUtils;

public class SplashActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_splash);

//        hideStatusBar();
        setStatusColor();

        try {
           Constant.isFromPush = getIntent().getExtras().getBoolean("ispushnoti", false);
           Constant.pushID = getIntent().getExtras().getString("noti_nid");
        } catch (Exception e) {
            Constant.isFromPush = false;
        }
        try {
            Constant.isFromNoti = getIntent().getExtras().getBoolean("isnoti", false);
        } catch (Exception e) {
            Constant.isFromNoti = false;
        }

        JsonUtils jsonUtils = new JsonUtils(SplashActivity.this);

        Resources r = getResources();
        float padding = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, Constant.GRID_PADDING, r.getDisplayMetrics());
        Constant.columnWidth = (int) ((jsonUtils.getScreenWidth() - ((Constant.NUM_OF_COLUMNS + 1) * padding)) / Constant.NUM_OF_COLUMNS);

        if(!Constant.isFromNoti) {
            new Handler().postDelayed(new Runnable() {
                @Override
                public void run() {
                    openMainActivity();
                }
            }, 2000);
        } else {
            openMainActivity();
        }
    }

    private void openMainActivity() {
        Intent intent = new Intent(SplashActivity.this,MainActivity.class);
        startActivity(intent);
        finish();
    }

    public void setStatusColor()
    {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP)
        {
            Window window = getWindow();
            window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
            window.setStatusBarColor(getResources().getColor(R.color.statusBar));
        }
    }
}
这是我的家庭密码

    package com.apps.mathar;

        import android.content.Context;
        import android.content.Intent;
        import android.os.AsyncTask;
        import android.os.Bundle;
        import android.support.v4.app.Fragment;
        import android.support.v4.view.PagerAdapter;
        import android.support.v4.view.ViewPager;
        import android.support.v7.widget.DefaultItemAnimator;
        import android.support.v7.widget.LinearLayoutManager;
        import android.support.v7.widget.RecyclerView;
        import android.view.LayoutInflater;
        import android.view.View;
        import android.view.ViewGroup;
        import android.widget.ImageView;
        import android.widget.ProgressBar;
        import android.widget.RelativeLayout;
        import android.widget.TextView;
        import android.widget.Toast;

        import com.apps.adapter.AdapterRecent;
        import com.apps.item.ItemSong;
        import com.apps.utils.Constant;
        import com.apps.utils.DBHelper;
        import com.apps.utils.JsonUtils;
        import com.apps.utils.RecyclerItemClickListener;
        import com.apps.utils.ZProgressHUD;
        import com.google.android.gms.ads.AdListener;
        import com.squareup.picasso.Callback;
        import com.squareup.picasso.Picasso;

        import org.json.JSONArray;
        import org.json.JSONException;
        import org.json.JSONObject;

        import java.util.ArrayList;

public class FragmentHome extends Fragment {

    DBHelper dbHelper;
    RecyclerView recyclerView;
    ArrayList<ItemSong> arrayList;
    ArrayList<ItemSong> arrayList_recent;
    AdapterRecent adapterRecent;
    ZProgressHUD progressHUD;
    LinearLayoutManager linearLayoutManager;
    public ViewPager viewpager;
    ImagePagerAdapter adapter;
    TextView textView_empty;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        View rootView = inflater.inflate(R.layout.fragment_home, container, false);
        setHasOptionsMenu(true);

        dbHelper = new DBHelper(getActivity());

        progressHUD = ZProgressHUD.getInstance(getActivity());
        progressHUD.setMessage(getActivity().getResources().getString(R.string.loading));
        progressHUD.setSpinnerType(ZProgressHUD.FADED_ROUND_SPINNER);

        textView_empty = (TextView)rootView.findViewById(R.id.textView_recent_empty);

        adapter = new ImagePagerAdapter();
        viewpager = (ViewPager)rootView.findViewById(R.id.viewPager_home);
        viewpager.setPadding(80,20,80,20);
        viewpager.setClipToPadding(false);
        viewpager.setPageMargin(40);
        viewpager.setClipChildren(false);
//        viewpager.setPageTransformer(true,new BackgroundToForegroundTransformer());

        arrayList = new ArrayList<ItemSong>();
        arrayList_recent = new ArrayList<ItemSong>();
        recyclerView = (RecyclerView)rootView.findViewById(R.id.recyclerView_home_recent);
        linearLayoutManager = new LinearLayoutManager(getActivity(),LinearLayoutManager.HORIZONTAL,false);
        recyclerView.setLayoutManager(linearLayoutManager);
        recyclerView.setItemAnimator(new DefaultItemAnimator());
        recyclerView.setHasFixedSize(true);

        if (JsonUtils.isNetworkAvailable(getActivity())) {
            new LoadLatestNews().execute(Constant.URL_LATEST);
        } else {
            Toast.makeText(getActivity(), getResources().getString(R.string.internet_not_conn), Toast.LENGTH_SHORT).show();
        }

        recyclerView.addOnItemTouchListener(new RecyclerItemClickListener(getActivity(), new RecyclerItemClickListener.OnItemClickListener() {
            @Override
            public void onItemClick(View view, int position) {
                if(JsonUtils.isNetworkAvailable(getActivity())) {
                    Constant.isOnline = true;
                    Constant.arrayList_play.clear();
                    Constant.arrayList_play.addAll(arrayList_recent);
                    Constant.playPos = position;
                    ((MainActivity)getActivity()).changeText(arrayList_recent.get(position).getMp3Name(),arrayList_recent.get(position).getCategoryName(),position+1,arrayList_recent.size(),arrayList_recent.get(position).getDuration(),arrayList_recent.get(position).getImageBig(),"home");

                    Constant.context = getActivity();
                    if(position == 0) {
                        Intent intent = new Intent(getActivity(), PlayerService.class);
                        intent.setAction(PlayerService.ACTION_FIRST_PLAY);
                        getActivity().startService(intent);
                    }
                } else {
                    Toast.makeText(getActivity(), getResources().getString(R.string.internet_not_conn), Toast.LENGTH_SHORT).show();
                }
            }
        }));

        return rootView;
    }

    private class LoadLatestNews extends AsyncTask<String, String, String> {

        @Override
        protected void onPreExecute() {
            progressHUD.show();
            arrayList.clear();
            super.onPreExecute();
        }

        @Override
        protected String doInBackground(String... strings) {
            try {
                String json = JsonUtils.getJSONString(strings[0]);

                JSONObject mainJson = new JSONObject(json);
                JSONArray jsonArray = mainJson.getJSONArray(Constant.TAG_ROOT);
                JSONObject objJson = null;
                for (int i = 0; i < jsonArray.length(); i++) {
                    objJson = jsonArray.getJSONObject(i);

                    String id = objJson.getString(Constant.TAG_ID);
                    String cid = objJson.getString(Constant.TAG_CAT_ID);
                    String cname = objJson.getString(Constant.TAG_CAT_NAME);
                    String artist = objJson.getString(Constant.TAG_ARTIST);
                    String name = objJson.getString(Constant.TAG_SONG_NAME);
                    String url = objJson.getString(Constant.TAG_MP3_URL);
                    String desc = objJson.getString(Constant.TAG_DESC);
                    String duration = objJson.getString(Constant.TAG_DURATION);
                    String image = objJson.getString(Constant.TAG_THUMB_B).replace(" ","%20");
                    String image_small = objJson.getString(Constant.TAG_THUMB_S).replace(" ","%20");

                    ItemSong objItem = new ItemSong(id,cid,cname,artist,url,image,image_small,name,duration,desc);
                    arrayList.add(objItem);
                }

                return "1";
            } catch (JSONException e) {
                e.printStackTrace();
                return "0";
            } catch (Exception ee) {
                ee.printStackTrace();
                return "0";
            }

        }

        @Override
        protected void onPostExecute(String s) {
            recyclerView.setAdapter(adapterRecent);
            if(s.equals("1")) {
                progressHUD.dismissWithSuccess(getResources().getString(R.string.success));
//                setLatestVariables(0);

                if(Constant.isAppFirst) {
                    if(arrayList.size()>0) {
                        Constant.isAppFirst = false;
                        Constant.arrayList_play.addAll(arrayList);
                        ((MainActivity)getActivity()).changeText(arrayList.get(0).getMp3Name(),arrayList.get(0).getCategoryName(),1,arrayList.size(),arrayList.get(0).getDuration(),arrayList.get(0).getImageBig(),"home");
                        Constant.context = getActivity();
                    }
                }

                viewpager.setAdapter(adapter);

                loadRecent();
//                adapterPagerTrending = new AdapterPagerTrending(getActivity(),Constant.arrayList_trending);
//                viewPager_trending.setAdapter(adapterPagerTrending);

//                adapterTopStories = new AdapterTopStories(getActivity(),Constant.arrayList_topstories);
//                listView_topstories.setAdapter(adapterTopStories);

//                setListViewHeightBasedOnChildren(listView_topstories);
                adapterRecent.notifyDataSetChanged();

            } else {
                progressHUD.dismissWithFailure(getResources().getString(R.string.error));
                Toast.makeText(getActivity(), getResources().getString(R.string.server_no_conn), Toast.LENGTH_SHORT).show();
            }
            super.onPostExecute(s);
            recyclerView.setAdapter(adapterRecent);
        }
    }


    private void loadRecent() {
        arrayList_recent = dbHelper.loadDataRecent();
        adapterRecent = new AdapterRecent(getActivity(),arrayList_recent);
        recyclerView.setAdapter(adapterRecent);

        if(arrayList_recent.size() == 0) {
            recyclerView.setVisibility(View.GONE);
            textView_empty.setVisibility(View.VISIBLE);
        } else {
            recyclerView.setVisibility(View.VISIBLE);
            textView_empty.setVisibility(View.GONE);
        }
    }

    private class ImagePagerAdapter extends PagerAdapter {

        private LayoutInflater inflater;

        public ImagePagerAdapter() {
            // TODO Auto-generated constructor stub

            inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        }

        @Override
        public int getCount() {
            return arrayList.size();
        }

        @Override
        public boolean isViewFromObject(View view, Object object) {
            return view.equals(object);
        }

        @Override
        public Object instantiateItem(ViewGroup container, int position) {

            View imageLayout = inflater.inflate(R.layout.viewpager_home, container, false);
            assert imageLayout != null;
            ImageView imageView = (ImageView) imageLayout.findViewById(R.id.imageView_pager_home);
            final ProgressBar spinner = (ProgressBar) imageLayout.findViewById(R.id.loading_home);
            TextView title = (TextView) imageLayout.findViewById(R.id.textView_pager_home_title);
            TextView cat = (TextView) imageLayout.findViewById(R.id.textView_pager_home_cat);
            RelativeLayout rl = (RelativeLayout)imageLayout.findViewById(R.id.rl_homepager);

            title.setText(arrayList.get(position).getMp3Name());
            cat.setText(arrayList.get(position).getCategoryName());

            Picasso.with(getActivity())
                    .load(arrayList.get(position).getImageBig())
                    .placeholder(R.mipmap.app_icon)
                    .into(imageView, new Callback() {
                        @Override
                        public void onSuccess() {
                            spinner.setVisibility(View.GONE);
                        }

                        @Override
                        public void onError() {
                            spinner.setVisibility(View.GONE);
                        }
                    });

            rl.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    if(JsonUtils.isNetworkAvailable(getActivity())) {
                        //showInter();
                        playIntent();
                    } else {
                        Toast.makeText(getActivity(), getResources().getString(R.string.internet_not_conn), Toast.LENGTH_SHORT).show();
                    }
                }
            });

            container.addView(imageLayout, 0);
            return imageLayout;
        }

        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
            container.removeView((View) object);
        }
    }

    /*    private void showInter() {
            Constant.adCount = Constant.adCount + 1;
            if(Constant.adCount % Constant.adDisplay == 0) {
                ((MainActivity)getActivity()).mInterstitial.setAdListener(new AdListener() {

                    @Override
                    public void onAdClosed() {
                        playIntent();
                        super.onAdClosed();
                    }
                });
                if(((MainActivity)getActivity()).mInterstitial.isLoaded()) {
                    ((MainActivity)getActivity()).mInterstitial.show();
                    ((MainActivity)getActivity()).loadInter();
                } else {
                    playIntent();
                }
            } else {
                playIntent();
            }
        }
    */
    private void playIntent() {
        Constant.isOnline = true;
        int pos = viewpager.getCurrentItem();
        Constant.arrayList_play.clear();
        Constant.arrayList_play.addAll(arrayList);
        Constant.playPos = pos;
        ((MainActivity)getActivity()).changeText(arrayList.get(pos).getMp3Name(),arrayList.get(pos).getCategoryName(),pos+1,arrayList.size(),arrayList.get(pos).getDuration(),arrayList.get(pos).getImageBig(),"home");

        Constant.context = getActivity();
        if(pos == 0) {
            Intent intent = new Intent(getActivity(), PlayerService.class);
            intent.setAction(PlayerService.ACTION_FIRST_PLAY);
            getActivity().startService(intent);
        }
    }
}
package com.apps.mathar;
导入android.content.Context;
导入android.content.Intent;
导入android.os.AsyncTask;
导入android.os.Bundle;
导入android.support.v4.app.Fragment;
导入android.support.v4.view.PagerAdapter;
导入android.support.v4.view.ViewPager;
导入android.support.v7.widget.DefaultItemAnimator;
导入android.support.v7.widget.LinearLayoutManager;
导入android.support.v7.widget.RecyclerView;
导入android.view.LayoutInflater;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.ImageView;
导入android.widget.ProgressBar;
导入android.widget.RelativeLayout;
导入android.widget.TextView;
导入android.widget.Toast;
导入com.apps.adapter.AdapterRecent;
导入com.apps.item.ItemSong;
导入com.apps.utils.Constant;
导入com.apps.utils.DBHelper;
导入com.apps.utils.JsonUtils;
导入com.apps.utils.RecyclerItemClickListener;
导入com.apps.utils.ZProgressHUD;
导入com.google.android.gms.ads.AdListener;
导入com.squareup.picasso.Callback;
导入com.squareup.picasso.picasso;
导入org.json.JSONArray;
导入org.json.JSONException;
导入org.json.JSONObject;
导入java.util.ArrayList;
公共类FragmentHome扩展了Fragment{
DBHelper-DBHelper;
回收视图回收视图;
ArrayList ArrayList;
ArrayList ArrayList_近期;
适配器最近适配器最近;
ZProgressHUD progressHUD;
直线布局经理直线布局经理;
公共浏览页面浏览页面;
图像页面雷达适配器;
TextView TextView_为空;
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
//TODO自动生成的方法存根
视图根视图=充气机。充气(R.layout.fragment\u home,container,false);
设置选项菜单(真);
dbHelper=新的dbHelper(getActivity());
progressHUD=ZProgressHUD.getInstance(getActivity());
setMessage(getActivity().getResources().getString(R.string.loading));
progressHUD.setSpinnerType(ZProgressHUD.Dressed\u ROUND\u SPINNER);
textView\u empty=(textView)rootView.findViewById(R.id.textView\u recent\u empty);
适配器=新的ImagePagerAdapter();
viewpager=(viewpager)rootView.findViewById(R.id.viewpager\u home);
viewpager.setPadding(80,20,80,20);
viewpager.setCliptoppadding(false);
viewpager.setPageMargin(40);
viewpager.setClipChildren(false);
//setPageTransformer(true,newbackgroundtoforegroundTransformer());
arrayList=新的arrayList();
arrayList_recent=新的arrayList();
recyclerView=(recyclerView)rootView.findViewById(R.id.recyclerView\u home\u recent);
linearLayoutManager=新建linearLayoutManager(getActivity(),linearLayoutManager.HORIZONTAL,false);
recyclerView.setLayoutManager(linearLayoutManager);
setItemAnimator(新的DefaultItemAnimator());
recyclerView.setHasFixedSize(true);
if(JsonUtils.isNetworkAvailable(getActivity())){
new LoadLatestNews().execute(Constant.URL\u LATEST);
}否则{
Toast.makeText(getActivity(),getResources().getString(R.string.internet\u not\u conn),Toast.LENGTH\u SHORT.show();
}
recyclerView.addOnItemTouchListener(新的RecyclerItemClickListener(getActivity(),新的RecyclerItemClickListener.OnItemClickListener()){
@凌驾
公共虚线单击(视图,int位置){
if(JsonUtils.isNetworkAvailable(getActivity())){
Constant.isOnline=true;
常量.arrayList_play.clear();
常量.arrayList\u play.addAll(arrayList\u最近);
常量。playPos=位置;
((MainActivity)getActivity()).changeText(arrayList_-recent.get(position).getMp3Name(),arrayList_-recent.get(position).getCategoryName(),position+1,arrayList_-recent.size(),arrayList_-recent.get(position).getDuration(),arrayList_-recent.get(position.getImageBig(),“home”);
Constant.context=getActivity();
如果(位置==0){
Intent Intent=新的Intent(getActivity(),PlayerService.class);
意图.设置动作(PlayerService.ACTION\u FIRST\u PLAY);
getActivity().startService(intent);
}
}否则{
Toast.makeText(getActivity(),getResources().getString(R.string.internet\u not\u conn),Toast.LENGTH\u SHORT.show();
}
}
}));
返回rootView;
}
私有类LoadLatestNews扩展异步任务{
@凌驾
受保护的void onPreExecute(){
progressHUD.show();
arrayList.clear();
super.onPreExecute();
}
@凌驾
受保护的字符串背景(字符串…字符串){
试一试{
字符串json=JsonUtils.getJSONString(字符串[0]);
JSONObject mainJson=新的JSONObject(json);