无法加载memtrack模块logcat的错误无法加载memtrack模块logcat的错误(Cou

2019-05-09 02:22发布

我收到一个错误Couldn't load memtrack module (No such file or directory) failed to load memtrack module: -2在运行时。

堆栈跟踪错误:

 E/SoundPool(1280)       : error loading /system/media/audio/ui/Effect_Tick.ogg 
 E/SoundPool(1280)       : error loading /system/media/audio/ui/KeypressStandard.ogg       
 E/SurfaceFlinger(931)   : glCheckFramebufferStatusOES error 733995180
 E/memtrack(1873)        : Couldn't load memtrack module (No such file or directory)
 E/android.os.Debug(1873): failed to load memtrack module: -2
 E/libEGL(931)           : called unimplemented OpenGL ES API
 E/libEGL(931)           : called unimplemented OpenGL ES API
 E/libEGL(931)           : called unimplemented OpenGL ES API
 E/libEGL(931)           : called unimplemented OpenGL ES API
 E/SurfaceFlinger(931)   : glCheckFramebufferStatusOES error 733995180
 E/SurfaceFlinger(931)   : got GL_FRAMEBUFFER_COMPLETE_OES error while taking screenshot
 E/libEGL(931)           : called unimplemented OpenGL ES API
 E/libEGL(931)           : called unimplemented OpenGL ES API

表现:

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.hive"
    android:versionCode="1"
    android:versionName="1.0">

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="19" />

<uses-permission android:name="android.permission.INTERNET"/>
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" android:name="com.sit.gems.app.GemsApplication"
        android:theme="@style/AppTheme" >

    <activity
            android:name="com.sit.gems.activity.SplashActivity"
            android:label="@string/app_name" android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="com.sit.gems.activity.HomeActivity" android:screenOrientation="portrait"></activity>
    </application>

</manifest>

SplashActivity.java:

package com.sit.gems.activity;
import com.example.hive.R;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;

public class SplashActivity extends FragmentActivity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.layout_home);
        startActivity(new Intent(SplashActivity.this,HomeActivity.class));
        SplashActivity.this.finish();
    }

}

layout_home.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TabHost
        android:id="@android:id/tabhost"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" >

            <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_above="@android:id/tabs" >

                <FrameLayout
                    android:id="@+id/tab_home"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent" />

                <FrameLayout
                    android:id="@+id/tab_video"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent" />

                <FrameLayout
                    android:id="@+id/tab_audio"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent" >
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/tab_blog"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent" >
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/tab_gal"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent" >
                </FrameLayout>

                <FrameLayout
                    android:id="@+id/tab_more"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent" >
                </FrameLayout>
            </FrameLayout>

            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:background="@drawable/bottom_bar"
                android:divider="@null" />

            <!-- android:background="#d8e49c" -->
        </RelativeLayout>
    </TabHost>

</LinearLayout>

输出:

最后,它会显示空白屏幕。

任何人都知道如何解决这些错误?

Answer 1:

这个错误,因为你可以在阅读上述评论链接的问题 ,结果是:

“[...]与装载{}一些硬件模块的问题。这可能是是与GPU的支持,SD卡的处理,基本上任何事情。”

步骤如下1应该可以解决这个问题。 此外,我可以看到,你有你的清单里面的一些奇怪的包名:

  • = “com.example.hive” <manifest>标签,
  • 机器人:名称= “com.sit.gems.app.GemsApplication”<application>
  • 机器人:名称=“com.sit.gems.activity” <activity>

如你所知,这些东西不防来展示您的应用程序。 但我觉得:

Couldn't load memtrack module error ,因为模拟器配置问题可能发生,因为你的项目中包含许多组织的问题,它可能有助于给人耳目一新的重新设计。

为了更好的利用,并与一些事情,这可以通过以下这些技巧来解决:


1.尝试的其他模拟器......

甚至一个真正的设备! 该memtrack module错误似乎与你的模拟器。 所以,把它变成Run configuration ,不要忘记改变API了。


2. OpenGL的错误日志

对于OpenGl错误, called unimplemented OpenGL ES API ,它不是一个错误,但声明! 你应该能够在你的清单(你可以看到这个答案 ,如果您使用GLSurfaceView内HomeActivity.java ,它可以帮助你):

<uses-feature android:glEsVersion="0x00020000"></uses-feature>  
// or
<uses-feature android:glEsVersion="0x00010001" android:required="true" />

3.使用相同的包

不要将不同的包名在所有的标签申报Manifest 。 你应该有相同的ManifestActivities ,等等。这样的事情看起来正确:

<!-- set the general package -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.sit.gems.activity"
    android:versionCode="1"
    android:versionName="1.0" >

    <!-- don't set a package name in <application> -->
    <application ... >

        <!-- then, declare the activities -->
        <activity
            android:name="com.sit.gems.activity.SplashActivity" ... >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <!-- same package here -->
        <activity
            android:name="com.sit.gems.activity.HomeActivity" ... >
        </activity>
    </application>
</manifest>  

4.不要迷失与布局:

您应该设置另一个布局SplashScreenActivity.java因为你没有使用TabHost的闪屏,这是不是一个安全的资源的方式。 声明不同的东西,比如应用程序名称和标识特定的布局:

// inside SplashScreen class
setContentView(R.layout.splash_screen);

// layout splash_screen.xml
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent" 
     android:gravity="center"
     android:text="@string/appname" />  

避免在不使用它的活动使用的布局。


5.开机画面?

最后,我并不清楚地了解您的目的SplashScreenActivity 。 它集内容视图,并直接完成。 这是没用的。

正如它的名字是闪屏 ,我认为你要启动您之前显示屏幕HomeActivity 。 因此,你应该这样做, 而不要使用TabHost布局;):

// FragmentActivity is also useless here! You don't use a Fragment into it, so, use traditional Activity
public class SplashActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // set your splash_screen layout
        setContentView(R.layout.splash_screen);

        // create a new Thread
        new Thread(new Runnable() {
            public void run() {
                try {
                    // sleep during 800ms
                    Thread.sleep(800);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                // start HomeActivity
                startActivity(new Intent(SplashActivity.this, HomeActivity.class));
                SplashActivity.this.finish();
            }
        }).start();
    }
}  

我希望这样的提示帮助你实现你想要的。
如果不是的话,让我知道我可以帮助你。



Answer 2:

我有同样的错误。 创建一个新的AVD与适当的API级解决我的问题。



Answer 3:

我面临着同样的问题,但是当我改变AVD设备的皮肤HVGA,它的工作。



Answer 4:

对于使用Xamarin人

我发现,设置链接到SDK组件只有做的伎俩:项目 - >属性 - > Android的选项 - >链接选项卡 - >链接:



Answer 5:

启用ADB集成解决我的问题。

在菜单: Tools -> Android -> Enable ADB Integration



Answer 6:

你叫ViewTreeObserver,而不是将其删除。

    mEtEnterlive.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
         // do nothing here can cause such problem
    });


Answer 7:

我有这个问题太,也运行在模拟器上..同样的消息被显示在logcat的,但它不影响应用程序的功能。 但它是烦人,我不喜欢对我不理解日志看到错误。

总之,我被在模拟器上增加RAM摆脱消息。



文章来源: Couldn't load memtrack module Logcat Error