Not even with Companion.
I think this is due to the translations issue.
Did you update to the test version of the companion, 2.60t1u?
Yes, and as I said, it doesn't work with APK & Companion.
Alright. I'm looking into it.
Just for completeness (as I have posted about this elsewhere)
Tested with Firebase realtime database from an app, HTTP PATCH works in all contexts expected of it.
Thank you.
This works
I have been using the wording Map data © OpenStreetMap on my apps. That wording might be more appropriate as only the map data is copyrighted.
Thanks,
-- Steve
Is this close to making it into the release ? (component name block)
We've updated ai2-test today with some additional items:
- Fix an issue with compiled apps and dropdown blocks
- Different preview styles when in "Device Default" theme (@Himani's GSOC project)
- Fix a logical bug in the Ev3Gyro sensor (@BeksOmega)
- Open all help items in new tabs (@pavi2410)
Regards,
Evan
I found a small bug in the designer.
When we set the theme "Device default" the appearance of the switch component is correct.
When we set the "Classic" theme then the switch component looks like a checkbox.
It would be nice if you add a drop-down block to Any Components.
Like this-
In this image the Image block (Red color) should be kept manually. Can you please make it default so that the user should not need to connect it manually.
Yes, that's a good point that the dropdown blocks should also appear in the generic component blocks.
Hello everyone,
ai2-test has been updated with the latest testing version. In addition to the items in the earlier post, this version includes the following changes:
Features:
- Load tutorials over HTTPS when available (@pavi2410)
- Implement a select all projects checkbox (@AnujSinghal12)
- Add MoveToPoint method to ImageSprite (@joysyu)
- Add UpdateDone event to CloudDB
- Add TapThreshold property to Canvas to fine-tune touches vs drags (@Himanshu2107)
- Load built-in templates via the repo URL parameter
- Implement visual accessibility features for apps (@dunandmuri)
- Add NumbersOnly property to the PasswordTextBox component (@preetvadaliya)
- Add project name suggestion when collisions occur (@AKandAK)
- Add new layouts for ListView items (@ankritisachan)
- Improve the performance of ListView using the RecyclerView library (@27vinayvyas)
- Implement scoped file storage needed for Android SDK 30 compatibility
Bug fixes:
- Fix an issue with loading the Chinese and Brazilian Portuguese translations
- Fix forum link to point to new community site (@pavi2410)
- Fix an issue where order of global variables affected project loading
- Fix an issue where browser extensions interfere with block PNG export
- Fix a bug that prevents restoring multiple projects from the trash (@AnujSinghal12)
- Fix an issue where editing a block's text would cancel if a parameter field moved under the cursor (@Siddharth1010)
- Adjust some CloudDB timeouts for better performance
- Make deprecation of blocks consistent across block types (@BeksOmega)
- Make companion code entry textbox a single line only
- Fix a bug where popping a value from CloudDB would result in a change of datatype
- Fix a bug where dictionaries would erroneously convert associative lists to dictionaries (@AnujSinghal12)
- Fix some spelling errors in the documentation (@AnujSinghal12, @HollowMan6, @AKandAK, @preetyvadaliya, @josmas)
- Fix semantics of the text not equals block
- Fix a bug where edited files would not be saved to the server correctly
- Fix a bug where LineString would appear in the design when set to invisible (@Himanshu2107)
- Fix an internal error when selecting the child of a map component when the map was invisible (@Himanshu2107)
- Fix a bug where flydowns would not appear unless a variable name was edited first
- Fix a bug where an internal exception prevented apps with extensions from building correctly
- Update the Chinese Traditional translation
- Fix bugs in the helper blocks identified during testing
- Fix bugs in recyclerview identified during testing
Internal changes:
- Fix a bug that prevented the companion app from building on Windows
- Clean up some unused imports (@rupesh-kumar-lpu)
- Add build tools helper (@pavi2410)
- Add GitHub actions as an option for continuous integration (@Sander0542)
- Add some additional metadata to CloudDB tokens
- Implement a flag to control the use of whitespace in blocks XML
- Remove vestigial code
- Fix a locale bug in the development server login page (@HollowMan6)
- Add buildserver hostname to vars page
- Add stats collection for build pipeline
- Add gitattributes to control line endings for unit tests
- Made the allowed tutorial URLs list a server configuration
- Add a service expiry notice for test servers
- Add more unit tests for components (@preetvadaliya)
- Address out of memory issues in unit tests
- Change how project settings are managed on the server
- Implement limited continuations in the component processor and code generator
Please help us test this release and give us feedback on any issues you encounter.
Regards,
Evan W. Patton, Ph.D.
Lead Software Engineer, MIT App Inventor
I did a first test (1-2 with the APK, Android 11):
- READ permission:
-
I am still unable to list the assets.
-
Companion now declares the following permissions in the Manifest:
Permissions
<uses-feature android:name="android.hardware.bluetooth" android:required="false"/>
<uses-feature android:name="android.hardware.location" android:required="false"/>
<uses-feature android:name="android.hardware.telephony" android:required="false"/>
<uses-feature android:name="android.hardware.location.network" android:required="false"/>
<uses-feature android:name="android.hardware.location.gps" android:required="false"/>
<uses-feature android:name="android.hardware.microphone" android:required="false"/>
<uses-feature android:name="android.hardware.touchscreen" android:required="false"/>
<uses-feature android:name="android.hardware.camera" android:required="false"/>
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
<uses-feature android:name="android.hardware.wifi"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="com.google.android.googleapps.permission.GOOGLE_AUTH"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.NFC"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.USE_CREDENTIALS"/>
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
<uses-permission android:name="android.permission.ACCOUNT_MANAGER"/>
<uses-permission android:name="com.google.android.apps.googlevoice.permission.RECEIVE_SMS"/>
<uses-permission android:name="com.google.android.apps.googlevoice.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
<uses-permission android:name="android.permission.READ_LOGS"/>
So READ
& WRITE
permissions are now available for all Android versions (except WRITE
on Android 11+).
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
- Listing the assets with Companion works.
As I know You Told That your going to add Google Sheets in Next Release
hello I am using recyclerview extension on this test server it works fine in companion but after installing apk app always crashed on startup .
I think cardview and recyclyerview libraries are added on this release.
adb logcat info
> Blockquote
07-24 23:25:23.279 5311 5311 E AndroidRuntime: FATAL EXCEPTION: main
07-24 23:25:23.279 5311 5311 E AndroidRuntime: Process: appinventor.ai_himalayanxtiger.RecyclerView, PID: 5311
07-24 23:25:23.279 5311 5311 E AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Lio/kcz/CustomRecyclerView/Recycler$RecyclerAdapter;
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at java.lang.Class.getDeclaredFields(Native Method)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.bytecode.ClassType.addFields(ClassType.java:606)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.bytecode.ClassType.getFields(ClassType.java:506)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.bytecode.ClassType.hasOuterLink(ClassType.java:260)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.bytecode.ClassType.getDeclaredMethod(ClassType.java:880)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.bytecode.ClassType.addMethod(ClassType.java:667)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.bytecode.ClassType.addMethod(ClassType.java:698)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.bytecode.ClassType.addMethods(ClassType.java:1009)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.bytecode.ClassType.getDeclaredMethods(ClassType.java:725)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.bytecode.ClassType.getMethods(ClassType.java:809)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.kawa.reflect.ClassMethods.getMethods(ClassMethods.java:106)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.kawa.reflect.ClassMethods.apply(ClassMethods.java:229)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.kawa.reflect.Invoke.lookupMethods(Invoke.java:278)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.kawa.reflect.Invoke.applyN(Invoke.java:185)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at gnu.mapping.ProcedureN.apply2(ProcedureN.java:39)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at appinventor.ai_himalayanxtiger.RecyclerView.Screen1.$define(Screen1.yail:10259)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at com.google.appinventor.components.runtime.Form.onCreateFinish(Form.java:400)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at com.google.appinventor.components.runtime.Form.onCreate(Form.java:345)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at appinventor.ai_himalayanxtiger.RecyclerView.Screen1.onCreate(Screen1.yail:10005)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.Activity.performCreate(Activity.java:8198)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.Activity.performCreate(Activity.java:8182)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3765)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3968)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2307)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.os.Looper.loop(Looper.java:246)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:8512)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)
07-24 23:25:23.279 5311 5311 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: io.kcz.CustomRecyclerView.Recycler$RecyclerAdapter
07-24 23:25:23.279 5311 5311 E AndroidRuntime: ... 34 more
and another project logcat
>07-25 00:04:13.405 22634 22634 E AndroidRuntime: FATAL EXCEPTION: main
07-25 00:04:13.405 22634 22634 E AndroidRuntime: Process: appinventor.ai_himalayanxtiger.TestRecView, PID: 22634
07-25 00:04:13.405 22634 22634 E AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/cardview/R$attr;
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.cardview.widget.CardView.<init>(CardView.java:117)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.cardview.widget.CardView.<init>(CardView.java:113)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at io.csapps.recyclerview.view.Card.<init>(Unknown Source:1)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at io.csapps.recyclerview.widget.CardView.build(Unknown Source:10)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at io.csapps.recyclerview.ListAdapter.onCreateViewHolder(Unknown Source:6)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at io.csapps.recyclerview.ListAdapter.onCreateViewHolder(Unknown Source:0)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:6794)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:5975)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5858)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5854)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2230)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.GridLayoutManager.layoutChunk(GridLayoutManager.java:557)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1517)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:612)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:171)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3924)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3641)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4194)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1829)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1829)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at com.google.appinventor.components.runtime.ScaledFrameLayout.onLayout(ScaledFrameLayout.java:193)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1829)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at androidx.appcompat.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:444)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1829)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at com.android.internal.policy.DecorView.onLayout(DecorView.java:1225)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.View.layout(View.java:24475)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewGroup.layout(ViewGroup.java:7383)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:4273)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3708)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2631)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9984)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1010)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.Choreographer.doCallbacks(Choreographer.java:809)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.Choreographer.doFrame(Choreographer.java:744)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:995)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:938)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.os.Looper.loop(Looper.java:246)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:8512)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)
07-25 00:04:13.405 22634 22634 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: androidx.cardview.R$attr
07-25 00:04:13.405 22634 22634 E AndroidRuntime: ... 82 more
Submit your project for testing.
Hello,
I would like to make a proposal:
I would set as default the device default theme instead of classic, because I think it gives a more professional look to the apps.
Thank you very much