i know there are many question about this but it's about 2 days i work on this and i was unable to find a correct solution (i'm new to android). I need to create an app that can handle a map and draw some markers. I can't even show a map on my device :( Nexus4
This is what i have done :
i copy the google-play-services.jar into my libs dir and change the gradle.build to handle the new library :
dependencies {
compile files('libs/android-support-v4.jar' , 'libs/gcm.jar', 'libs/google-play-services.jar')
}
i already signed my app and enabled the mapv2 api and change the android manifest like this :
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="16" />
...
<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>
<permission
android:name="com.metu.xxx.permission.MAPS_RECEIVE"
android:protectionLevel="signature"/>
<uses-permission android:name="com.metu.xxx.permission.MAPS_RECEIVE"/>
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="SIGNATURE_HERE -> ^_^"/>
...
my java class looks like this :
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
public class AtmActivity extends FragmentActivity {
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_atm);
}
}
my xml layout looks like this :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<fragment
android:name="com.google.android.gms.maps.SupportMapFragment"
xmlns:map="http://schemas.android.com/apk/res-auto"
android:id="#+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
compiling this code is ok but when i tap on the button to show the activity the app crash :(
This is the error log :
06-16 13:34:30.957 523-535/? E/qcom_sensors_hal: hal_process_time_resp: Resetting rollover count from 0 to 0
06-16 13:34:39.716 28726-28726/com.metu.xxx E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable
at com.google.android.gms.maps.GoogleMapOptions.createFromAttributes(Unknown Source)
at com.google.android.gms.maps.SupportMapFragment.onInflate(Unknown Source)
at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:279)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:676)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:270)
at android.app.Activity.setContentView(Activity.java:1881)
at com.metu.xxx.AtmActivity.onCreate(AtmActivity.java:11)
at android.app.Activity.performCreate(Activity.java:5104)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5041)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)
Somebody can help me ?
or maybe can link a good how to to solve this ?
Thanks and sorry for my poor english :)
UPDATE :
it seems i completly wrong with this.
following this tutorial and everything went fine : http://android.rzeszow.net/?p=79
(there is a part missing in the copy files, you need to copy the jar and the settings to the libs file of the module)
You need to reference google play services project and not only the jar.
Related
I´m trying to do a test in android studio, and the fragment i´m trying to launch has a ConstraintLayout, I've seen other responses of this type of error but none of them were useful. The error I get is this one:
android.view.InflateException: Binary XML file line #2 in com.example.museosgijon:layout/fragment_list_museum: Binary XML file line #2 in com.example.museosgijon:layout/fragment_list_museum: Error inflating class androidx.constraintlayout.widget.ConstraintLayout
Caused by: android.view.InflateException: Binary XML file line #2 in com.example.museosgijon:layout/fragment_list_museum: Error inflating class androidx.constraintlayout.widget.ConstraintLayout
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
at android.view.LayoutInflater.createView(LayoutInflater.java:858)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1010)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:965)
at android.view.LayoutInflater.inflate(LayoutInflater.java:663)
at android.view.LayoutInflater.inflate(LayoutInflater.java:538)
at com.example.museosgijon.databinding.FragmentListMuseumBinding.inflate(FragmentListMuseumBinding.java:56)
at com.example.museosgijon.ui.ListMuseumFragment.onCreateView(ListMuseumFragment.kt:54)
at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2995)
at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:523)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:261)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1758)
at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1670)
at androidx.fragment.app.BackStackRecord.commitNow(BackStackRecord.java:317)
at androidx.fragment.app.testing.FragmentScenario$Companion.internalLaunch$lambda-2(FragmentScenario.kt:628)
at androidx.fragment.app.testing.FragmentScenario$Companion.$r8$lambda$qQn68eFQCuWOFZCsJdZ7z8QDNvM(Unknown Source:0)
at androidx.fragment.app.testing.FragmentScenario$Companion$$ExternalSyntheticLambda0.perform(Unknown Source:13)
at androidx.test.core.app.ActivityScenario.lambda$onActivity$2$ActivityScenario(ActivityScenario.java:660)
at androidx.test.core.app.ActivityScenario$$Lambda$4.run(ActivityScenario.java:652)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:462)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at android.app.Instrumentation$SyncRunnable.run(Instrumentation.java:2296)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7842)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
Caused by: java.lang.UnsupportedOperationException: Failed to resolve attribute at index 18: TypedValue{t=0x2/d=0x7f030004 a=-1}
at android.content.res.TypedArray.getDimensionPixelSize(TypedArray.java:783)
at android.view.View.<init>(View.java:5567)
at android.view.ViewGroup.<init>(ViewGroup.java:702)
at android.view.ViewGroup.<init>(ViewGroup.java:698)
at android.view.ViewGroup.<init>(ViewGroup.java:694)
at androidx.constraintlayout.widget.ConstraintLayout.<init>(ConstraintLayout.java:567)
When I run the aplication I dont get any error and it launches.
The dependencie of the constraintlayout is like this:
implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
And in the xml its defined in this way:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal"
tools:context=".ui.ListMuseumFragment"
android:paddingBottom="?attr/actionBarSize">
Thanks.
You have some error on line #2 in XML file "fragment_list_museum".
Please paste fragment_list_museum.xml for more help.
• In XML it looks all good. I don't know, what's wrong...
Maybe try updating implementation to 2.1.4, but it wouldn't help, I think. Maybe someone else will find answer.
I am using Firebase Cloud Messaging for push notifications in a Flutter app using node.js + Typescript.
The FCM configurations for onLaunch and onResume were working fine, until I added Firebase dynamic links. Now, every time I receive a notification, the app crashes.
I have included click_action: 'FLUTTER_NOTIFICATION_CLICK' in the notification payload as well.
I do not have an Application.java file, I am using Flutter Android Embedding V2 (Flutter Version >= 1.12) and hence, no additional integration steps are required for Android.
Error:
D/AndroidRuntime(14785): Shutting down VM
E/AndroidRuntime(14785): FATAL EXCEPTION: main
E/AndroidRuntime(14785): Process: com.muffly, PID: 14785
E/AndroidRuntime(14785): java.lang.RuntimeException: Unable to create service io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService: java.lang.RuntimeException: PluginRegistrantCallback is not set.
E/AndroidRuntime(14785): at android.app.ActivityThread.handleCreateService(ActivityThread.java:4043)
E/AndroidRuntime(14785): at android.app.ActivityThread.access$1600(ActivityThread.java:229)
E/AndroidRuntime(14785): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1917)
E/AndroidRuntime(14785): at android.os.Handler.dispatchMessage(Handler.java:107)
E/AndroidRuntime(14785): at android.os.Looper.loop(Looper.java:226)
E/AndroidRuntime(14785): at android.app.ActivityThread.main(ActivityThread.java:7592)
E/AndroidRuntime(14785): at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime(14785): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
E/AndroidRuntime(14785): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
E/AndroidRuntime(14785): Caused by: java.lang.RuntimeException: PluginRegistrantCallback is not set.
E/AndroidRuntime(14785): at io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService.startBackgroundIsolate(FlutterFirebaseMessagingService.java:157)
E/AndroidRuntime(14785): at io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService.onCreate(FlutterFirebaseMessagingService.java:77)
E/AndroidRuntime(14785): at android.app.ActivityThread.handleCreateService(ActivityThread.java:4031)
E/AndroidRuntime(14785): ... 8 more
D/OOMEventManagerFK(14785): checkEventAndDumpForJE: 0
I/Process (14785): Sending signal. PID: 14785 SIG: 9
pubspec.yaml
firebase_core: ^0.5.0
firebase_auth: ^0.18.4+1
firebase_messaging: ^7.0.0-dev.15
firebase_dynamic_links: ^0.5.0+11
firebase_core: ^0.5.0
AndroidManifest.xml
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="#mipmap/ic_launcher" />
<meta-data
android:name="com.google.firebase.messaging.default_notification_channel_id"
android:value="high_importance_channel" />
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<intent-filter>
<action android:name="FLUTTER_NOTIFICATION_CLICK" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<!-- Accepts URIs that begin with YOUR_SCHEME://YOUR_HOST -->
<data
android:scheme="https"
android:host="muffly.page.link" />
</intent-filter>
Create a separated file beside MainActivity.kt and name it Application.kt and type the following code inside it.
//Don't forget to change it to your app package name!!!
package com.your.packagename
import io.flutter.app.FlutterApplication
import io.flutter.plugin.common.PluginRegistry
import io.flutter.plugin.common.PluginRegistry.PluginRegistrantCallback
import io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin
import io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService.setPluginRegistrant
class Application : FlutterApplication(), PluginRegistrantCallback {
override fun onCreate() {
super.onCreate()
setPluginRegistrant(this)
}
override fun registerWith(registry: PluginRegistry?) {
FirebaseMessagingPlugin.registerWith(registry?.registrarFor("io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin"));
}
}
Then, on your AndroidMainfest.xml add android:name=".Application" to your application tag
<application
...
android:name=".Application"
>
Finally, add firebase-messaging to your app/build.gradle.
dependencies {
...
implementation "com.google.firebase:firebase-messaging:20.1.0"
}
I've published my first app, builtup using Flutter, Dart and Android Studio.
Some functionalities working well in debug mode(even running app in "Release mode" on AS), after publishing doesn't work anymore.
This is my code:
import 'package:url_launcher/url_launcher.dart';
pubspec.yaml:
dependencies:
flutter:
sdk: flutter
image_picker: ^0.6.7+12
url_launcher : ^5.7.8
Manifest permissions:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
launch function:
_launchURL(url) async {
await launch(url);
}
Running the app in debug mode, they come out these messages:
E/flutter (13880): [ERROR:flutter/lib/ui/ui_dart_state.cc(177)]
Unhandled Exception: MissingPluginException(No implementation found
for method launch on channel plugins.flutter.io/url_launcher)
E/flutter (16247): [ERROR:flutter/lib/ui/ui_dart_state.cc(177)]
Unhandled Exception: MissingPluginException(No implementation found
for method pickImage on channel plugins.flutter.io/image_picker)
I've found out only post like "make flutter clean and rerun the IDE", but the problem is not on my IDE, but on the user after downloading the app.
Where am I going wrong?
I haven't touched my Android Studio for a loooong time, it still worked fine when I launched it, but then I updated to 3.3.0 and I get a 'gradle project sync failed'. I know this is not trivial to debug via SO, but I tried to find anything similar and I lack of knowledge about the entire studio didn't help.
So maybe you can guide me to a solution, I'm not sure what files are necessary, but here is the actual error:
ERROR: Failed to parse XML in C:\Users\roberts\AndroidProjects\LingoFlash\app\src\main\AndroidManifest.xml
ParseError at [row,col]:[27,9]
Message: expected start or end tag
Affected Modules: app
This is the AndroidManifest.xml file:
20 <application
21 android:allowBackup="true"
22 android:icon="#mipmap/ic_launcher"
23 android:label="#string/app_name"
24 android:supportsRtl="true"
25 android:theme="#style/MyMaterialTheme">
26 //------------------------------------------------------------------------------------------
27 <activity android:name=".MainActivity">
28 <intent-filter>
29 <action android:name="android.intent.action.MAIN" />
30 <category android:name="android.intent.category.LAUNCHER" />
31 </intent-filter>
32 </activity>
so what's wrong at line 27? seems to point to the MainActivity
before I paste a ton of data, what would help to debug this?
Comments in xml files do not start with Double slash // they work with <!--Your comments-->. Your manifest is having lines that start with // remove them and try to clean and build your project.
Check if you have some wrong character found in the [27,9] position of the AndroidManifest.xml.
Refs: https://stackoverflow.com/a/52932622/8034839
Android Studio : 3.1.0, 3.1.1
Gradle : 4.4
Build Tools : 3.1.0
I am using the DataBinding library. when I add a layout file to project or add any view into the layout file, Android Studio cannot generate a Binding class for the layout, until rebuilding the project.
layout file:
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<data>
<variable
name="viewModel"
type="com.qk365.thweeks.MainViewModel" />
</data>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.TabLayout
android:id="#+id/main_tab"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
android:background="#android:color/white"
android:elevation="5dp"
app:tabGravity="fill"
app:tabIndicatorHeight="0dp"
app:tabMode="fixed"
app:tabSelectedTextColor="#7343ea"
app:tabTextAppearance="#style/TextAppearance.Design.Tab"
app:tabTextColor="#181818" />
<android.support.v4.view.ViewPager
android:id="#+id/main_viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="#id/main_tab">
</android.support.v4.view.ViewPager>
</RelativeLayout>
</layout>
I checked Android Studio logs, when layout file changes, there always have error message.
2018-04-17 11:20:01,699 [e-1024-b02] ERROR - .intellij.psi.impl.ElementBase - Element: class com.intellij.psi.impl.source.xml.XmlFileImpl because: different providers: SingleRootFileViewProvider{myVirtualFile=file://E:/AndroidStudioProjects/thweeks/module-order/src/main/res/layout/order_fragment_pick_up_order.xml, content=VirtualFileContent{size=2845}}(5200996b); SingleRootFileViewProvider{myVirtualFile=file://E:/AndroidStudioProjects/thweeks/module-order/src/main/res/layout/order_fragment_pick_up_order.xml, content=VirtualFileContent{size=2845}}(398a3993)
invalidated at: see attachment
com.intellij.psi.PsiInvalidElementAccessException: Element: class com.intellij.psi.impl.source.xml.XmlFileImpl because: different providers: SingleRootFileViewProvider{myVirtualFile=file://E:/AndroidStudioProjects/thweeks/module-order/src/main/res/layout/order_fragment_pick_up_order.xml, content=VirtualFileContent{size=2845}}(5200996b); SingleRootFileViewProvider{myVirtualFile=file://E:/AndroidStudioProjects/thweeks/module-order/src/main/res/layout/order_fragment_pick_up_order.xml, content=VirtualFileContent{size=2845}}(398a3993)
invalidated at: see attachment
at com.intellij.psi.util.PsiUtilCore.ensureValid(PsiUtilCore.java:502)
at com.intellij.psi.impl.smartPointers.SmartPointerManagerImpl.createSmartPsiElementPointer(SmartPointerManagerImpl.java:78)
at com.intellij.psi.impl.smartPointers.SmartPointerManagerImpl.createSmartPsiElementPointer(SmartPointerManagerImpl.java:69)
at com.intellij.psi.impl.smartPointers.SmartPointerManagerImpl.createSmartPsiElementPointer(SmartPointerManagerImpl.java:64)
at com.intellij.psi.impl.ElementBase$ElementIconRequest.<init>(ElementBase.java:183)
at com.intellij.psi.impl.ElementBase$ElementIconRequest.<init>(ElementBase.java:178)
at com.intellij.psi.impl.ElementBase.computeIcon(ElementBase.java:110)
at com.intellij.psi.impl.ElementBase.getIcon(ElementBase.java:86)
at com.intellij.codeInsight.lookup.DefaultLookupItemRenderer._getRawIcon(DefaultLookupItemRenderer.java:79)
at com.intellij.codeInsight.lookup.DefaultLookupItemRenderer.getRawIcon(DefaultLookupItemRenderer.java:48)
at com.intellij.codeInsight.completion.JavaMethodCallElement.renderElement(JavaMethodCallElement.java:444)
at com.intellij.codeInsight.completion.JavaCompletionUtil$4.renderElement(JavaCompletionUtil.java:468)
at com.intellij.codeInsight.completion.JavaCompletionUtil$4.renderElement(JavaCompletionUtil.java:465)
at com.intellij.codeInsight.lookup.LookupElementDecorator$VisagisteDecorator.renderElement(LookupElementDecorator.java:179)
at com.intellij.codeInsight.lookup.LookupElementDecorator.renderElement(LookupElementDecorator.java:83)
at com.intellij.codeInsight.lookup.impl.LookupCellRenderer.getListCellRendererComponent(LookupCellRenderer.java:150)
at com.intellij.ui.ExpandedItemListCellRendererWrapper.getListCellRendererComponent(ExpandedItemListCellRendererWrapper.java:38)
at javax.swing.plaf.basic.BasicListUI.paintCell(BasicListUI.java:209)
at com.intellij.ui.components.WideSelectionListUI.paintCell(WideSelectionListUI.java:56)
at javax.swing.plaf.basic.BasicListUI.paintImpl(BasicListUI.java:317)
at javax.swing.plaf.basic.BasicListUI.paint(BasicListUI.java:240)
at com.intellij.ui.components.WideSelectionListUI.paint(WideSelectionListUI.java:32)
at javax.swing.plaf.ComponentUI.update(ComponentUI.java:161)
at javax.swing.JComponent.paintComponent(JComponent.java:780)
at com.intellij.ui.components.JBList.paintComponent(JBList.java:186)
at javax.swing.JComponent.paint(JComponent.java:1056)
at com.intellij.ui.components.JBList.paint(JBList.java:118)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JViewport.paint(JViewport.java:728)
at com.intellij.ui.components.JBViewport.paint(JBViewport.java:236)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:586)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210)
at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579)
at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502)
at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:306)
at javax.swing.RepaintManager.paint(RepaintManager.java:1272)
at javax.swing.JComponent._paintImmediately(JComponent.java:5158)
at javax.swing.JComponent.paintImmediately(JComponent.java:4969)
at javax.swing.RepaintManager$4.run(RepaintManager.java:831)
at javax.swing.RepaintManager$4.run(RepaintManager.java:814)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789)
at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738)
at javax.swing.RepaintManager.access$1200(RepaintManager.java:64)
at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:732)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:822)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:650)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:366)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
2018-04-17 11:20:01,699 [e-1024-b02] ERROR - .intellij.psi.impl.ElementBase - Android Studio 3.1.1 Build #AI-173.4697961
2018-04-17 11:20:01,699 [e-1024-b02] ERROR - .intellij.psi.impl.ElementBase - JDK: 1.8.0_152-release
2018-04-17 11:20:01,699 [e-1024-b02] ERROR - .intellij.psi.impl.ElementBase - VM: OpenJDK 64-Bit Server VM
2018-04-17 11:20:01,699 [e-1024-b02] ERROR - .intellij.psi.impl.ElementBase - Vendor: JetBrains s.r.o
2018-04-17 11:20:01,699 [e-1024-b02] ERROR - .intellij.psi.impl.ElementBase - OS: Windows 10
2018-04-17 11:20:01,699 [e-1024-b02] ERROR - .intellij.psi.impl.ElementBase - Last Action: EditorChooseLookupItem
I had the same problem. No matter what I tried it was not able to generate binding class. The trick was that you have to rename your layout xml file. Say you have a xml file my_layout.xml then rename it to my_layout_temp.xml. Now the binding class will be generated with name MyLayoutTempBinding. If you don't like the name then you can rename it back to my_layout.xml. At the end it will solve the binding class generate issue.
Note: For initial debugging steps see Khemraj's answer here Data Binding class not generated
Android Studio : 3.1.4
Gradle : 4.4
Build Tools : 28.0.0
I can see the auto-generated binding classes momentarily after issuing a
File > Invalidate Caches / Restart
but only while the indexing is paused, immediately after Android Studio restarts (I should probably use something other than "databinding" for a test project name):
While paused, ActivityMain2Binding will be recognized by compiler, however the build and make operations are not available. Shortly after resuming the indexing the associated binding classes are removed and the IDE error mentioned in the OP is logged.
Update (2018.09.11)
Using a tip found in the bug post commented above (https://issuetracker.google.com/issues/77607040), I changed the Data Binding setting to
I then added a reference to the generated class
I have the same error in the same environment as you.
But unfortunately, I could not resolve this problem with Android Studio 3.1.1.
For now, I'm using Android Studio 3.2 Canary11 and it works fine.
The radical solution
You should add this in the build.gradle(Module) file to make the data binding enabled and press Sync
android {
...
buildFeatures {
dataBinding true
}
}
This is a bug of Android Studio. Fixed in Android Studio 3.2.1.