当我清除应用程序数据时,它不再起作用

Joy*_*nna 3 android ios xamarin xamarin.forms

我正在使用xamarin表格做一个应用程序,我在我的手机上测试它,然后apk就在那里.但当我清除android上的数据时,我的应用程序不再打开了......有人看到了吗?问题是什么??

Sus*_*ver 6

是的,这对于Xamarin.Android以调试模式构建的应用程序来说是正常的

如果要Clear Data删除用于调试的目录/文件:

在清除数据之前:

.:
drwxrwx--x   2 u0_a93 u0_a93 4096 2017-09-11 21:15 cache
drwxrwx--x   2 u0_a93 u0_a93 4096 2017-09-11 21:15 code_cache
drwxrwx--x   5 u0_a93 u0_a93 4096 2017-09-11 21:24 files
lrwxrwxrwx   1 root root     60 2017-09-11 21:15 lib -> /data/app/com.sushihangover.GeneticCancerDNAMapper-1/lib/x86
    ./cache:
    ./code_cache:
    ./files:
        drwxrwxrwx 3 u0_a93 u0_a93 4096 2017-09-11 21:24 .__override__
        drwxr-xr-x 2 u0_a93 u0_a93 4096 2017-09-11 21:24 .config
        drwxr-xr-x 3 u0_a93 u0_a93 4096 2017-09-11 21:24 .local
        ./files/.__override__:
            drwxrwxrwx 2 u0_a93 u0_a93 4096 2017-09-11 21:24 links
        ./files/.__override__/links:
            lrwxrwxrwx 1 u0_a93 u0_a93   70 2017-09-11 21:24 libmonosgen-2.0.so -> /data/app/Mono.Android.DebugRuntime-1/lib/x86/libmonosgen-32bit-2.0.so
        ./files/.config:
        ./files/.local:
            drwxr-xr-x 2 u0_a93 u0_a93 4096 2017-09-11 21:24 share
            ./files/.local/share:
Run Code Online (Sandbox Code Playgroud)

清除数据后:

.:
lrwxrwxrwx   1 root root     60 2017-09-11 21:25 lib -> /data/app/com.sushihangover.GeneticCancerDNAMapper-1/lib/x86
Run Code Online (Sandbox Code Playgroud)

发布版本不需要此数据Application.DataDir,Xamarin在发布版本中的运行时不使用此数据.

  • @JoycedeLanna 一个普通的基于调试的`.apk` 也在使用已安装的共享运行时库(`Mono.Android.DebugRuntime` 和`Mono.Android.Platform.ApiLevel_26`)。最终发布的 apk 大小在很大程度上取决于 Proguard 和 Mono Linker 以及您如何配置它们。您可以通过执行基于临时的发布存档并在 Proguard 和链接器关闭的情况下发布(到您的本地 PC)来获得 apk 的“最大”大小。看看 apk 的文件大小,现在你知道它有多大了,接下来你可以开始启用 Linker (SDK-Only and All) 和 Proguard 来减少它...... (2认同)