클래스 조각 팽창 오류


161

오류가 발생합니다

Unable to start activity ComponentInfo{de.androidbuch.activiti/de.androidbuch.activiti.task.Activity}: android.view.InflateException: Binary XML file line #11: Error inflating class fragment

세로 및 가로 모드를 통해 전환 할 때 조각을 사용하고 있습니다. 내 XML은 다음과 같습니다

 <LinearLayout android:id="@+id/mainLayout"
               android:orientation="horizontal"
               android:layout_width="fill_parent"
               android:layout_height="wrap_content" >

    <ListView android:id="@+id/android:list"
              android:layout_height="wrap_content"
              android:layout_width="fill_parent"/> 

    <fragment android:id="@+id/fragmentDetails"
              android:layout_height="fill_parent"
              android:layout_width="fill_parent"
              class="de.androidbuch.activiti.task.TaskDetailsFragment"/> 
</LinearLayout>

가로 및 세로 모드를 통해 전환하면 모든 것이 잘 작동합니다. 그러나 내 조각을 클릭하면 조각이 표시되고 다른 모드로 전환하면 오류가 발생합니다. 어떻게 해결할 수 있습니까? 여기에 몇 가지 답변이 있지만 이것들 중 어느 것도 나를 도와주지 못했습니다 ...

06-21 14:55:05.600: ERROR/AndroidRuntime(7636): FATAL EXCEPTION: main
06-21 14:55:05.600: ERROR/AndroidRuntime(7636): java.lang.RuntimeException: Unable to start activity         
ComponentInfo{de.androidbuch.activiti/de.androidbuch.activiti.task.Activity}:   android.view.InflateException: Binary XML file line #11: Error inflating class fragment
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1736)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1752)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3097)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.app.ActivityThread.access$1600(ActivityThread.java:123)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:997)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.os.Handler.dispatchMessage(Handler.java:99)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.os.Looper.loop(Looper.java:126)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.app.ActivityThread.main(ActivityThread.java:3998)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at java.lang.reflect.Method.invokeNative(Native Method)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at java.lang.reflect.Method.invoke(Method.java:491)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at dalvik.system.NativeStart.main(Native Method)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636): Caused by: android.view.InflateException: Binary XML file line #11: Error inflating class fragment
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:688)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.view.LayoutInflater.rInflate(LayoutInflater.java:724)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.view.LayoutInflater.rInflate(LayoutInflater.java:727)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.view.LayoutInflater.inflate(LayoutInflater.java:479)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.view.LayoutInflater.inflate(LayoutInflater.java:391)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.view.LayoutInflater.inflate(LayoutInflater.java:347)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:227)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.app.Activity.setContentView(Activity.java:1771)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at de.androidbuch.activiti.task.TaskActivity.onCreate(TaskActivity.java:83)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1700)
06-21 14:55:05.600: ERROR/AndroidRuntime(7636):     ... 12 more

레이아웃 및 레이아웃 랜드 폴더에 별도의 레이아웃 파일을 유지합니까?
Nathan Fig

"활동을 시작할 수 없습니다 ..." 다음 줄 포함하여 전체 오류 로그를 제공 할 수 있습니까?
Dave

@Nathan 무화과 : 네, 그렇습니다.하지만 오류가 발생합니다.
tsync

@ 데이브 : 여기 간다. 어떤 생각?
tsync

가로 레이아웃 코드가 필요하며 setContentView에 대한 호출과 세로 모드에서 액티비티를 시작하는 방법에 도움이 될 것입니다. 현재 충분한 정보가없는 것 같습니다. API 데모에서 FragmentLayout 예제를 보면 비슷한 일을하는 것처럼 들리므로 도움이 될 수 있습니다.
PJL

답변:


131

hdemirchian이 말했듯이 다음을 사용하십시오.

import android.support.v4.app.Fragment;

또한 조각을 사용하는 활동이 FragmentActivityregular 대신 확장되는지 확인하십시오 Activity.

import android.support.v4.app.FragmentActivity;

FragmentActivity수업 을받을 수 있습니다.


12
이것은 많이 찬성했지만 앱을 다시 시작할 때 충돌이 발생하고 v4 Fragment 및 v4 FrsgmentActivity를 이미 사용하고 있습니다. 더 정확한 AppCompatActivity입니다.
조셉

4
이것은 해결책이 아닙니다. android.support.v4.app.Fragment 가져 오기; 아무것도 변경하지 않습니다. 실제로는 심지어 사용되지 않고 불필요한 수입품입니다.
f470071

7
고맙게도, AppCompatActivity는 FragmentActivity의 자손입니다.
abedfar

하지만 단검 조각을 사용하고 단검 조각은 항상 조각 활동이 아닌 조각을 확장합니다.
user3475052

96

호출 하기 전에 프래그먼트 내부에서 android.view.InflateException: Binary XML file line: #... Error inflating class fragment조작하면 예외 가 발생할 수 있습니다 . 이 경우 잘못된 활동 참조가 수신되어이를 신뢰할 수 없습니다.getActivity()onActivityCreated()

예를 들어 다음 패턴이 잘못되었습니다.

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
        Bundle savedInstanceState) 
{
    final View view = inflater.inflate(R.layout..., container, false);

    Button button = getActivity().findViewById(R.id...);
    button.setOnClickListener(...); - another problem: button is null

    return view;
}

올바른 패턴 # 1

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
        Bundle savedInstanceState) 
{
    final View view = inflater.inflate(R.layout..., container, false);

    Button button = view.findViewById(R.id...);
    button.setOnClickListener(...);

    return view;
}

올바른 패턴 # 2

@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    Button button = getActivity().findViewById(R.id...);
    button.setOnClickListener(...);
}

@MaximKorobov getActivity()내부 onActivityCreated()또는 후속 라이프 사이클 방법으로 호출 할 수 있습니다 onDestroyView().
Grigori A.

고마워요, 이것은 엄청나게 도움이되었습니다!
Shotgun Ninja

덕분에 :-)이 나에게 :) 많은 시간 저장
user1007522을

나는 이것에 대해 더 많이 알고 싶습니다. 산발적 인 충돌이 일어나고 있으며 이것이 문제가 될 수 있다고 생각합니다. 대부분의 경우 코드가 제대로 작동하지만 알기 어렵습니다.
Daniel Wilson

패턴 2가 나를 위해 해결했을 수도 있습니다. 손가락이 건. 다. 고마워
joseph


36

나는 같은 오류가 있었다. 나는 하루 종일 파고 있었지만, 나는이 문제에 대해 ~ 25 가지 해결책을 시도했다고 생각합니다. 오전 2시에 작동하지 않았으므로 앱 매니페스트 XML 에서이 줄이 누락되었음을 알았습니다.

<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />

그 줄은 <application>태그 안에있었습니다 . 나는 이것이 누군가에게 도움이되기를 바랍니다. GL.


3
내 영웅. 당신 같은 사람들은 그렇게 훌륭합니다!
capdragon

5
무슨 일이 일어나고 있는지 설명하십시오. 이 라인의 장점은 무엇입니까?
Mansour Fahad

2
고마워, 내 하루를 구해줘 안드로이드에서 Google 맵을 사용하는 각 샘플은 다르게 작동합니다. 표준이 있는지 궁금합니다.
user2812866

22

나는 같은 문제가 있었다. 나를위한 해결책은 FragmentActivity 내에서 super.onCreate 및 setContentView의 순서였습니다.

다음 순서는 잘 작동합니다.

    super.onCreate(savedInstanceState);
    setContentView(R.layout.fc_activity_list_profiles);

3
왜이 문제가 해결됩니까?
스펜서

1
JAVA 메소드에서는 super항상 메소드 시작시 호출해야합니다.
Stéphane Bruckert

11
@ StéphaneBruckert 항상 super.method()먼저 호출해야하는 것은 아닙니다 . 수퍼 클래스의 메소드가 수행하는 작업에 따라 다릅니다. 이 경우 제대로 작동하려면 FragmentActivity일부 초기화가 필요합니다 setContentView. 그러나 다른 방법 (예 onKeyUp:)에서는 조건부로 작업을 수행하고 싶을 수도 있지만 super.onKeyUp이 경우 대체로 super.onKeyUp함수의 끝에서 호출하려고 할 것 입니다.
CoatedMoose

아마 또한을 주목할 필요가있다 super()그러나 (확장되고있는이 클래스에 전적으로 의존하는 것)은 반드시 의무적으로하지 않습니다 호출, 자식 클래스의 생성자에서 호출 된 첫 번째 함수해야합니다 (슈퍼 클래스의 생성자).
CoatedMoose

17

조각은 XML에 중첩 될 수 없습니다

이 방법을 열심히 배웠습니다. XML 레이아웃 기반 <fragment>태그를 (잠재적으로) 동적으로로드 된FragmentManager 조각 xml을 부풀 리려고 이상한 오류가 발생하기 시작합니다.

이것이 지원 되지 않는다는 것이 밝혀졌습니다. 순전히FragmentManager . 접근법을 .

<DrawerLayout>from xml 안에 조각을로드하려고했기 때문에이 문제 가 발생 onCreateView()하여 백 스택을 팝했을 때 메소드 에서 충돌이 발생했습니다 .


여전히 지원되지 않습니까? 현재appcompat-v7:23.3.0
thanassis

예, xml 안에 조각을 중첩하고 있습니다. 나는 그것을 조사 할 것이다.
KDeogharkar

그러나 문제에 대한 솔루션 / 해킹이 존재한다 : stackoverflow.com/a/14695397/860488을
모르 텐 Holmgaard에게

2
확인을 위해이 섹션의 끝 부분에있는 메모를 참조하십시오 : developer.android.com/about/versions/…
Philippe

왜 솔루션이 그렇게 간단한 지 잘 모르겠습니다. 나를 위해, 단지 교체 <fragment><frameLayout>했다. 나는 아직도 그것을 알아내는 중입니다. - stackoverflow.com/a/19167009/5477548
w yoad

16

나는 당신이 직면하는 것과 같은 문제를 겪고있었습니다. 상단의 도움말 중 어느 것도 도움이되지 않았습니다. 나중에, 내가해야 할 일은 수입품을 고치는 것입니다.

import android.app.Fragment;

에:

import android.support.v4.app.Fragment;

감사합니다.이 솔루션도 저에게 효과적이었습니다. 이 문제로 이틀 동안 어려움을 겪고있었습니다. 마지막으로 귀하의 솔루션이 나를 위해 일했습니다. 감사합니다.
Lakshmanan

당신은 굉장합니다! 내 문제는 반대였습니다. 조각 마법사는 기본적으로 android.support.v4.app.Fragment를 가져옵니다. 그리고 내 주요 활동은 android.app.Activity를 확장합니다.
산업 제어 괴물

12

시도해 보셨습니까?

 <fragment
            android:name="de.androidbuch.activiti.task.TaskDetailsFragment"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" />

1
xml 파일을 1 개 보여 주었지만 / layout /에 2 개, layout-land /에 1 개가 있어야합니다.
Blundell

12

프래그먼트의 onCreateView 메소드에서 예외가 발생하지 않았는지 확인하십시오. 이 방법으로 예외가 발생하면 logcat은 예외에 대한 정확한 세부 정보를 표시하지 않고 항상 메시지를 표시합니다.

Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.fragment" 
on path: DexPathList[[zip file "/data/app/com.package/base.apk"],
nativeLibraryDirectories=[/data/app/com.package/lib/arm64, /vendor/lib64, /system/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)

Lei가 말한 것을 추가하기 위해 oncreateview 내부의 코드를 살펴보고 실제 근본 원인을 찾으십시오. 고마워 레이!
Swaroop

6

TaskDetailsFragment확장하는 경우 android.app.Fragment에서 변경하십시오 onCreateView().

Fragment에 표시하려는 보기 를 반환 하거나 LayoutInflater 를 사용하여 레이아웃을보기로 변환 하고 반환하십시오.

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View mainview = inflater.inflate(R.layout.main, null);
    return mainview;
}

이것이 효과가 있기를 바랍니다. :)


6

클래스 경로를 확인하십시오.보기 팽창기가 xml class = "de.androidbuch.activiti.task.TaskDetailsFragment"에 정의 된 클래스 정의를 찾을 수 없습니다 위의 경로가 잘못되었을 수 있습니다.


6

다른 이유로이 오류가 발생했습니다.

재현 단계 :

~> 내 문제는 새로운 빈 응용 프로그램을 만들었습니다.

~> 그런 다음 File ~> New File Menu에서 사용자 정의 조각을 생성했습니다.

~> 레이아웃과 버튼 등을 추가하여 조각을 사용자 정의하는 방법으로 진행하십시오.

~> 응용 프로그램을 만들 때 자동 생성 된 activity_my.xml에서 새 사용자 지정 조각을 참조했습니다. 이렇게하면 XML이 객체를 생성 할 수있었습니다.

다음은 File ~> New File Menu를 통해 커스텀 프래그먼트를 생성 할 때 인터페이스 기능 스텁을 자동으로 생성하여 프래그먼트 클래스 파일의 맨 아래에 배치하는 것입니다.

이는 MyActivity 클래스가이 인터페이스를 구현해야 함을 의미합니다. 그렇지 않으면 위의 오류는 xml에서 조각을 참조 할 때만 발생합니다. XML에서 Fragment에 대한 참조를 완전히 제거하고 MyActivity.java 클래스 파일의 코드를 통해 Fragment를 작성하면 Logcat에서 문제점을 자세히 설명하고 인터페이스에 대해 불평하는보다 간결한 오류를 생성합니다. 이것은 프로젝트 템플릿 활동 + 조각에 설명되어 있습니다. <~ that Project Template은 인터페이스 스텁을 생성하지 않습니다.


5

나를 위해 스택 추적에서 스크롤 한 후 android.permission.ACCESS_NETWORK_STATE에 대한 권한이 누락 된 것을 발견했습니다.

이 권한을 추가 한 후 수정되었습니다


1
자기 자신이 아님 : " 전체 스택 추적을 스크롤 합니다. @Gil 감사합니다.
Batandwa

4

세로 및 가로 모드에 대해 별도의 레이아웃 파일이 있고 항목을 클릭 한 후 방향을 변경할 때마다 팽창 오류가 발생하면 레이아웃 파일간에 불일치가있을 수 있습니다.

오류가 발생하면 가로 모드 또는 세로 모드 또는 두 가지 모두에서 항목을 클릭 할 때만 발생합니까? TaskDetailsFragment 활동이 가로 모드와 세로 모드간에 불일치 할 수있는 레이아웃 파일을 사용합니까?


답변 주셔서 감사합니다 .. 잘 세로 모드가 아닌 가로 모드에서만 조각이 있습니다. 가로 모드에서만 클릭하여 조각을 볼 수 있습니다. 가로 모드로 다시 전환 한
후이

그것은 거의 확실하게 문제입니다-가로 모드에서는 찾을 수없는 세로 모드로 볼 수 있습니다. 랜드 스케이프에 프래그먼트를 추가하면 문제가 해결됩니까?
Nathan Fig

1
두 파일 모두에 존재하지 않는 뷰를 가질 수 있습니다. 즉, 별도의 랜드 레이아웃과 포트 레이아웃이 필요합니다. 그러나 ID를 확인하십시오-세로 파일에 ID가 누락되어 전환 할 때이 오류가 발생했습니다.
maxpolun

4

Fragment정적으로, 즉 xml 로 추가하는 경우 클래스 OnFragmentInteractionListener에서 구현하지 못했을 수 있습니다 Activity. 그런 다음 인터페이스 구현으로 문제가 해결됩니다. Fragment동적으로, 즉 Java 클래스를 추가하는 경우 솔루션이 아닙니다. IDE 자체는 필요한 인터페이스를 구현하지 않고 진행할 수 없기 때문입니다.


3

이 경우 내 문제는 나중에 라이프 사이클에서 호출 된 메소드 중 하나에 바보 포인터 예외가있는 간단한 인스턴스였습니다. 이로 인해 "클래스 조각 팽창 오류"예외가 발생했습니다. 요컨대, 예외 스택 추적에서 추가 원인을 확인하여 가능한 원인을 확인하십시오.

null 포인터 예외를 해결하면 내 조각이 정상적으로로드되었습니다.


3

위에서 언급 한 해결책 중 어느 것도 도움이되지 않았습니다. 로그에서 아래에 언급 된 예외 세부 정보를 찾을 수 있습니다.

06-19 16:20:37.885: E/AndroidRuntime(23973): Caused by: java.lang.RuntimeException: API key not found.  Check that /meta-data/ android:name="com.google.android.maps.v2.API_KEY" android:value="your API key"/ is in the application element of AndroidManifest.xml.

나는 이것을했고 내 코드는 작동했다!

<meta-data  android:name="com.google.android.maps.v2.API_KEY" android:value="AIzaSyCl1yGPZ3mpxxxxxxxAz2R-t7zcWVzrHUL9k"/>
</application>

3

아무것도 변경하지 않으려면 " fragment "태그를 사용하십시오

이 작업을 수행,

<fragment
 android:visibility="gone" (Visibility will not work, just helps in removing frag from xml viewer)(If you want the visibility to be gone make it in your fragment root element visibility=gone)
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:name="com.example.YOUR_FRAGMENT" (This is important)
 />

2

logcat에 정확히 동일한 오류 메시지가 표시되는 동일한 오류 유형이 있습니다. 아래에있는 Java Build Path를 변경해야했습니다 Project->Properties. 내가 좋아하는 Google지도 관련 라이브러리 포함했다 android-support-v4.jargoogle-play-services.jar; 그러나 옵션 메뉴 'Build class path'에서 이들을 포함하여 누락되었습니다 'Order and Export'. 어쩌면 오류가 여기에 있습니다.

빌드 클래스 경로에 라이브러리를 포함하십시오.

클래스가 작성된 순서도 오류를 유발할 수 있으므로 내 조언은 건물 경로의 순서를 다시 정렬하는 것입니다. 다음 순서를 사용하면 오류가 사라졌습니다 'my_project_name/src'->'my_project_name/gen'->'Android Private Libraries'.. 마지막 유닛은 앞서 언급 한 jar 파일을 포함합니다.


1

xml 파일에서 태그 대신 사용하십시오. 팽창기는 API <10에서 실패하는 android.app.Fragment를 작성하려고 시도합니다. 따라서 다른 유형의보기 그룹을 작성해야합니다.



1

당신이 이것을 사용했는지 확인하십시오

<meta-data
            android:name="com.google.android.maps.v2.API_KEY"
            android:value="AIzaSyBEwmfL0GaZmdVqdTxxxxxxxx-rVgvY" />

이거 말고..

<meta-data 
         android:name="com.google.android.gms.version" 
          android:value="AIzaSyBEwmfL0GaZmdVqdTCvxxxxxxx-rVgvY" /> 

1

이 같은 오류가 발생했습니다. 내 이유는 내 조각 클래스의 가시성 때문이었습니다. 기본값으로 설정되어 공개되어야합니다.


1

프래그먼트 onCreateonCreateView메소드 를 게시 할 수 있습니까? 조각 onCreate메서드 의 예외로 인해 정확히 동일한 예외가 발생했습니다. 문제를 해결하면 오류 팽창 클래스 조각이 수정되었습니다.


1

안드로이드 스튜디오 에서이 오류가 발생했습니다. 문제는 OnCreateView 함수의 코드가있는 동안 내 조각에 상대적 레이아웃이 있다는 것입니다

mDrawerListView = (ListView) inflater.inflate(
                R.layout.fragment_navigation_drawer, container, false);

코드가 같은 일을하고 있습니까?


1

AppCompatActivity 를 상속하려면 다음과 같이 할 수 있습니다-활동 xml에서 다음 과 같이 FrameLayout을 사용하십시오 .

<FrameLayout
    android:id="@+id/result_fragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@+id/progress_frame"/>

그리고 활동에서 onCreate-

final FragmentManager supportFragmentManager = getSupportFragmentManager();
    FragmentTransaction ft = supportFragmentManager.beginTransaction();
    ft.replace(R.id.result_fragment, fphResultActivityFragment, "result fragment");
    ft.commitAllowingStateLoss();

감사합니다. 내가 작업 한 다른 앱에서 레이아웃에 <fragment>을 (를) 왜 사용할 수 있었는지 잘 모르겠지만 여기서 작동하지 않았습니다!
SingularityFuture

이 방법은 효과가 있지만 일반적으로 정적이 아닌 동적 조각에 대한 것입니다.
Tanner Summers

1

같은 오류가 발생했지만 내 문제는 내 조각에 부모 활동의 XML 레이아웃에 ID가 없다는 것입니다.


1

언젠가 투쟁 한 후, 시나리오 점검이 당신이 똑같이 직면하고 있음을 발견했습니다.

모든 것이 Google 코드와 동일하게 작동하는 경우 필자의 경우 매니페스트 파일을 확인하십시오. 예외가 발생하는 지오 키와 맵 키를 추가했습니다.

참고-매니페스트 파일에 두 개의 키를 추가하지 마십시오. 맵 키를 제거하십시오.

meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="@string/google_maps_key"/>

위의 코드 와이 코드를 추가하십시오.

 <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="@string/auto_location"/>

 <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version"/>

1

나는 비슷한 문제가 있었다. AdMob 예제를 실행 한 후 앱에 광고를 삽입하려고했는데이 오류가 발생했습니다.

01-02 16:48:51.269    8199-8199/it.dndc.BreathPlot E/AndroidRuntime FATAL EXCEPTION: main
java.lang.IllegalStateException: Could not execute method of the activity
 Caused by: android.view.InflateException: Binary XML file line #57: Error inflating class fragment

해결책은 다음과 같습니다. 광고의 조각을 ListActivity에 삽입 할 수 없습니다. 대신 문제없이 FragmentActivity 및 ActionBarActivity에 추가 할 수 있습니다.

내 제안은 AdMob 예제에서 시작하여 기존 앱에 추가하는 것입니다. 많은 시간을 절약했을 것입니다 !!!


1

Navigation 구성 요소와 난독 처리를 사용하는 경우 Android의 조각과 인수를 제외해야합니다. proguard-rules 파일에 다음 행을 추가하십시오.

# Exclude the fragments and argType for navigation component.
-keep class * extends androidx.fragment.app.Fragment{}
-keep class com.safetonet.presentation.features.parent.adddevice.model.PresentableAddDeviceData
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.