uni-app本地离线打包使用HBuilder-Integrate-AS设置targetSdkVersion 34后,打包的app一直卡在启动页面

发布于 1周前 作者 ionicwang 来自 Uni-App

uni-app本地离线打包使用HBuilder-Integrate-AS设置targetSdkVersion 34后,打包的app一直卡在启动页面

本地离线打包使用HBuilder-Integrate-AS打包设置targetSdkVersion 34打包后的app一直卡启动页面

但是如果把targetSdkVersion 改为32后打包出来的app就都正常能打开,就是把targetSdkVersion 设置为32以上的打包就会一直卡启动页面是为什么,33也不行 34也不行

是兼容问题还是什么问题,有人知道什么解决吗

3 回复

原来是androidx.webkit:webkit 版本太低了,是下载的HBuilder-Integrate-AS设置的androidx.webkit:webkit 版本为1.3.0虽然可以正常打包,但是当设置targetSdkVersion 为34以后 androidx.webkit:webkit 要升级版本为1.6.0打包后出来的app才能正常打开


遇到了同样的问题,用这方法解决了,谢谢楼主

在解决uni-app本地离线打包使用HBuilder-Integrate-AS设置targetSdkVersion 34后,应用卡在启动页面的问题时,通常涉及到多个层面的调试和排查。以下是一个基于Android Studio和uni-app的排查步骤及可能的代码修改案例。由于无法直接提供完整的解决方案(因为问题可能源于多种原因),以下是一些常见的问题解决思路和代码示例,供你参考和调整。

1. 检查AndroidManifest.xml

首先确保AndroidManifest.xml中的application标签内正确配置了启动Activity,并且没有多余的或错误的配置。

<application
    ... >
    <activity
        android:name=".YourMainActivity"
        android:launchMode="singleTop"
        android:theme="@style/AppTheme.NoActionBarLaunch">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

2. 检查启动Activity的代码

确保启动Activity(如YourMainActivity)的onCreate方法中没有执行耗时操作,特别是涉及网络请求或复杂UI初始化的代码。

public class YourMainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 初始化简单UI,避免耗时操作
        setContentView(R.layout.activity_main);
        // 可以在这里调用异步方法处理耗时操作
        // initDataAsync();
    }

    private void initDataAsync() {
        // 使用异步线程处理耗时操作
        new Thread(() -> {
            // 模拟耗时操作
            try {
                Thread.sleep(3000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            // 更新UI需要在主线程进行
            runOnUiThread(() -> {
                // 更新UI
            });
        }).start();
    }
}

3. 检查Gradle配置

确保build.gradle文件中的配置与targetSdkVersion 34兼容,特别是依赖库版本。

android {
    compileSdkVersion 34
    defaultConfig {
        targetSdkVersion 34
        ...
    }
    ...
}

dependencies {
    // 确保所有依赖库都支持targetSdkVersion 34
    implementation 'com.android.support:appcompat-v7:28.0.0' // 示例,实际版本需根据兼容性调整
    ...
}

4. 日志调试

使用Android Studio的Logcat工具查看应用启动时的日志,查找可能的错误或异常信息。

adb logcat | grep "YourAppName"

通过上述步骤,你可以逐步排查并定位问题所在。如果问题依旧存在,可能需要更详细的日志信息或代码审查来进一步分析。

回到顶部