hongui / FastAir

An Android app that transfers files and instant messages between two devices without a network connection
Apache License 2.0
87 stars 16 forks source link

App crash #8

Open userkilled opened 1 year ago

userkilled commented 1 year ago

GitHub Source build

I had to delete the test folder in Android Studio. The app does not ask for permission to access the location, which causes the crash.


FATAL EXCEPTION: main Process: com.mob.lee.fastair, PID: 31432 java.lang.IllegalArgumentException: Permission launcher is null,you should call registerPermission first at com.mob.lee.fastair.viewmodel.AppViewModel.withPermission(AppViewModel.kt:68) at com.mob.lee.fastair.fragment.DiscoverFragment.setting(DiscoverFragment.kt:62) at com.mob.lee.fastair.base.AppFragment.onViewCreated(AppFragment.kt:52) at androidx.fragment.app.Fragment.performViewCreated(Fragment.java:3019) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:551) 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:1764) at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1701) at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:488) at android.os.Handler.handleCallback(Handler.java:883) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7386) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:980)

userkilled commented 1 year ago

Considering that it goes out after I compile it, it probably loads the file lists. How about limiting the list of visible files to 20 pieces. And then by pressing the 'load more' button

hongui commented 1 year ago

GitHub Source build

I had to delete the test folder in Android Studio. The app does not ask for permission to access the location, which causes the crash.

FATAL EXCEPTION: main Process: com.mob.lee.fastair, PID: 31432 java.lang.IllegalArgumentException: Permission launcher is null,you should call registerPermission first at com.mob.lee.fastair.viewmodel.AppViewModel.withPermission(AppViewModel.kt:68) at com.mob.lee.fastair.fragment.DiscoverFragment.setting(DiscoverFragment.kt:62) at com.mob.lee.fastair.base.AppFragment.onViewCreated(AppFragment.kt:52) at androidx.fragment.app.Fragment.performViewCreated(Fragment.java:3019) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:551) 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:1764) at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1701) at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:488) at android.os.Handler.handleCallback(Handler.java:883) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7386) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:980)

This should have nothing to do with folder. This is a code design error. I think I can update it.

hongui commented 1 year ago

Considering that it goes out after I compile it, it probably loads the file lists. How about limiting the list of visible files to 20 pieces. And then by pressing the 'load more' button

According to my design, it should support 5000 records, here this is a value I set casually that should be designed based on the current system memory share. Or "load more",just like what you said.

userkilled commented 1 year ago

Good. Thank you.

hongui commented 1 year ago

It takes a little bit of time, and I can only optimize it out of work

userkilled commented 1 year ago

I have absolutely everything bad, something, I chose 10_000, the minimum threshold, t.to. below it falls. after giving permission to access memory. After switching the tab, I click on the selection of one element and that’s it. It’s worth it. Even tabs do not switch. And yes, and I also noticed that sometimes the "select all" button is lost. And shows "unselected all" and vice versa. :-)