Program Tip

memtrack 모듈을로드 할 수 없습니다. Logcat 오류

programtip 2020. 10. 17. 12:05
반응형

memtrack 모듈을로드 할 수 없습니다. Logcat 오류


Couldn't load memtrack module (No such file or directory) failed to load memtrack module: -2런타임에 오류가 발생 합니다.

StackTrace 오류 :

 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>

산출:

마지막으로 빈 화면이 표시됩니다.

여기에 이미지 설명 입력

이 오류를 해결하는 방법을 아는 사람이 있습니까?


위의 주석에 링크 된 질문에서 읽을 수 있듯이이 오류는 다음과 같습니다.

"[...] {some} 하드웨어 모듈을로드하는 데 문제가 있습니다. 이것은 GPU 지원, sdcard 처리, 기본적으로 모든 것과 관련이있을 수 있습니다."

아래 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. 동일한에 있어야한다 Manifest, Activities바로이 모습 등 등, 뭔가를 :

<!-- 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. 시작 화면?

Finally, I don't understand clearly the purpose of your SplashScreenActivity. It sets a content view and directly finish. This is useless.

As its name is Splash Screen, I assume that you want to display a screen before launching your HomeActivity. Therefore, you should do this and don't use the TabHost layout ;):

// 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();
    }
}  

I hope this kind of tips help you to achieve what you want.
If it's not the case, let me know how can I help you.


I had the same error. Creating a new AVD with the appropriate API level solved my problem.


I faced the same problem but When I changed the skin of AVD device to HVGA, it worked.


For people using Xamarin

Sdk Assemblies Only에 대한 연결을 설정하면 프로젝트-> 속성-> Android 옵션-> 링커 탭-> 연결 :

여기에 이미지 설명 입력


ADB 통합을 활성화하면 문제가 해결되었습니다.

메뉴에서 : Tools -> Android -> Enable ADB Integration

여기에 이미지 설명 입력


ViewTreeObserver를 호출하고 제거하지 않습니까?

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

이 문제도 에뮬레이터에서 실행되었습니다. 동일한 메시지가 Logcat에 표시되었지만 앱의 기능에는 영향을주지 않았습니다. 그러나 그것은 성가신 일이었고 내가 이해하지 못하는 로그에 오류가 표시되는 것을 좋아하지 않습니다.

어쨌든 에뮬레이터 에서 RAM늘려 메시지를 제거했습니다 .

참고 URL : https://stackoverflow.com/questions/22629568/couldnt-load-memtrack-module-logcat-error

반응형