小编M. *_*han的帖子

什么是SharedPreferencesCompat?与SharedPreferences

我想知道什么是SharedPreferencesCompat?它与SharedPreferences有何不同?

android

17
推荐指数
1
解决办法
3279
查看次数

APK无法第二次安装

我通过在Android Studio中执行以下操作来生成APK:Build - > Build APK(s).

我将这个APK复制到手机的内存中并启动它.它安装很好,但只是第一次.我然后卸载现有的应用程序并再次启动相同的APK,现在它说"应用程序未安装".

如果我再次将相同的APK从我的电脑复制到此手机,那么它将再次安装.

android apk

12
推荐指数
2
解决办法
3942
查看次数

错误:在 Android 中添加“拆分”后,找不到 EOCD

我在我的 gradle 中使用以下拆分代码来减小 APK 大小:

splits {
        abi {
            // Enable ABI split

        enable true

        // Clear list of ABIs
        reset()

        // Specify each architecture currently supported by the Video SDK
        include "armeabi-v7a", "arm64-v8a", "x86", "x86_64"

        // Specify that we do not want an additional universal SDK
        universalApk false
    }
}
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,APK 生成得很好,大小减小并在模拟器上运行。

但是当我尝试从 Build > Build bundles/apks 构建 APK 文件时 在此处输入图片说明

我收到此错误:

Execution failed for task ':app:packageAbcDebug'.
> A failure occurred while executing com.android.build.gradle.tasks.PackageAndroidArtifact$IncrementalSplitterRunnable
   > Could not find EOCD in …
Run Code Online (Sandbox Code Playgroud)

architecture android split

10
推荐指数
2
解决办法
917
查看次数

Scrollview:检查视图是否在屏幕上可见

我有一个ScrollView定义如下:

<ScrollView
    ... 
    .../>
    <LinearLayout
        ...
        ...>

        <!-- content -->

    </LinearLayout>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)

我用一些ImageView动态填充LinearLayout.现在,有没有办法检查ImageView何时可见或不可见(例如当我向下滚动时)?

android android-scrollview

9
推荐指数
2
解决办法
1万
查看次数

在多窗口中将焦点更改为第二个应用程序

我有两个Android应用程序在平板电脑上以多窗口模式运行;App1和App2。App1是焦点,我将广播从App1发送到App2。在那里,我使用startActivity从外部打开了一个网址。但是该Web URL在App1中而不是App2中打开,因为App1成为焦点。虽然我从App2启动了网址。

我想在App2中打开网址。因此,我可能首先需要将App2从我的代码中移开?怎么做?

android multi-window split-screen

6
推荐指数
1
解决办法
145
查看次数

更改 Android 中模拟器位置的“准确性”属性

我正在使用模拟器的位置模拟器服务。我能够设置位置,甚至模拟路线。但找不到更改位置的“准确性”属性的方法。我怎样才能做到这一点? 在此输入图像描述

android android-emulator android-studio

6
推荐指数
0
解决办法
264
查看次数

在分屏的第一个窗口中启动外部应用程序

我在分屏模式下运行我的两个应用程序。第一个应用程序 A,第二个应用程序 B。现在,当我从应用程序 A 启动 Google 地图等外部活动时,它总是在应用程序 B 的第二个屏幕上打开它。我希望它在应用程序 A 的第一个屏幕上打开。我即使尝试过FLAG_ACTIVITY_LAUNCH_ADJACENT,也无济于事。

    val intent = Intent(Intent.ACTION_VIEW,
              Uri.parse("http://maps.google.com/maps?daddr=$latitude,$longitude"))
    intent.addFlags(Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT)
    activity.startActivityForResult(intent, MAP_NAVIG_RC)
Run Code Online (Sandbox Code Playgroud)

简而言之,Android 总是在分屏的第二屏中打开外部活动。如何在第一个屏幕中启动它?

android multi-window split-screen

5
推荐指数
0
解决办法
294
查看次数

ConstraintSet 克隆崩溃

我正在尝试克隆 ConstraintSet,如下所示:

        ConstraintLayout cl = findViewById(R.id.mainActivityParentCl);
        ConstraintSet constraintSet = new ConstraintSet();
        constraintSet.clone(cl);
Run Code Online (Sandbox Code Playgroud)

它在克隆(cl)上崩溃,

Caused by: java.lang.RuntimeException: All children of ConstraintLayout must have ids to use ConstraintSet
Run Code Online (Sandbox Code Playgroud)

使用时不会崩溃

implementation 'com.android.support.constraint:constraint-layout:1.0.2'
Run Code Online (Sandbox Code Playgroud)

它在 1.1.3 上崩溃:

implementation 'com.android.support.constraint:constraint-layout:1.1.3'
Run Code Online (Sandbox Code Playgroud)

解决方案?

android android-constraintlayout

4
推荐指数
1
解决办法
3101
查看次数

Android Studio:如何撤消“使用gradle链接C ++项目”

我右键单击我的NDK项目,然后选择“使用gradle链接C ++项目”。我在那里添加了Android.mk文件。出现“ cpp”文件夹。到目前为止还好。

现在,我要撤消此操作,然后再次分配Android.mk路径,因为我之前选择了错误的路径。我怎样才能做到这一点?

android android-ndk android-studio

3
推荐指数
1
解决办法
2840
查看次数