【安卓开发】【Android Studio】项目构建(Build)时报错:Integer Overflow

一、问题描述

在安卓项目中,构建(Build)失败并报错:xxxxx Integer Overflow(整型溢出)。

二、相关代码

刚开始以为是某个整数(例如控件、java类)不匹配造成的,检查如下代码:

Java类:

java 复制代码
public class Video_Activity10 extends AppCompatActivity {
    private MediaPlayer mPlayer = null;
    private SurfaceView sfv_show;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_video10);
        @SuppressLint({"MissingInflatedId", "LocalSuppress"}) SurfaceView sfv_show = findViewById(R.id.surface);
        SurfaceHolder surfaceHolder = sfv_show.getHolder();
        @SuppressLint({"MissingInflatedId", "LocalSuppress"}) Button btn_start = findViewById(R.id.btn1);
        @SuppressLint({"MissingInflatedId", "LocalSuppress"}) Button btn_pause = findViewById(R.id.btn2);
        @SuppressLint({"MissingInflatedId", "LocalSuppress"}) Button btn_stop = findViewById(R.id.btn3);
        mPlayer = MediaPlayer.create(Video_Activity10.this, R.raw.video_10);
        mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        mPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
            @Override
            public void onCompletion(MediaPlayer mp) {
                Toast.makeText(Video_Activity10.this,"视频播放完毕",Toast.LENGTH_LONG).show();
            }
        });
        btn_start.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mPlayer.setDisplay(sfv_show.getHolder());
                mPlayer.start();
            }
        });
        btn_pause.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mPlayer.pause();
            }
        });
        btn_stop.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mPlayer.stop();
            }
        });

    }
}

xml布局文件:

java 复制代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".Video_Activity10">

    <!--    视 频 主 体    -->
    <SurfaceView
        android:id="@+id/surface"
        android:layout_width="wrap_content"
        android:layout_height="480dp"
        android:layout_gravity="center_horizontal"
        android:keepScreenOn="true"/>

    <!--    播 放 按 钮    -->
    <Button
        android:id="@+id/btn1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="@string/play"/>

    <!--    暂 停 按 钮    -->
    <Button
        android:id="@+id/btn2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="@string/pause"/>

    <!--    停 止 按 钮    -->
    <Button
        android:id="@+id/btn3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="@string/stop"/>

</LinearLayout>

没有问题。

之后,以为是内存限制过小导致,修改gradle.properties文件:

将这里的8000上调至10000:

java 复制代码
org.gradle.jvmargs=-Xmx8000m -Dfile.encoding=UTF-8

报错消失。

三、后续思考

However......之后,将上述的10000再改回8000,依旧没有报错。

可能是运行时出现的随机报错?

相关推荐
阿拉斯攀登1 小时前
从入门到实战:CMake 与 Android JNI/NDK 开发全解析
android·linux·c++·yolo·cmake
冬奇Lab2 小时前
相机录像流程:MediaRecorder与Camera2的协作之道
android·音视频开发·源码阅读
麦客奥德彪3 小时前
Jetpack Compose 常用开发总结
android
麦客奥德彪3 小时前
Jetpack Compose Modifier 完全指南
android
Mac的实验室5 小时前
(2026年最新)解决谷歌账号注册设备扫码短信发送失败无法验证难题(100%通过无需扫码验证)
android·google·程序员
半条咸鱼6 小时前
如何通过 ADB 连接安卓设备(USB + 无线 TCP/IP)
android
huwuhang6 小时前
斐讯盒子N1_YYFROM固件_webview119更新版附安卓专用遥控器刷机固工具USB_Burning_Tool
android
qq_352018686 小时前
android 状态栏高度获取
android
AirDroid_cn6 小时前
安卓15平板分屏比例能到1:9吗?极限分屏设置教程
android·智能手机
菜鸟国国7 小时前
还在为 Compose 屏幕适配发愁?一个 Density 搞定所有机型!
android