weixin_49380156 2023-04-24 21:08 采纳率: 0%
浏览 39
已结题

android studio的build.gradle出现 Gradle 插件版本不兼容问题如何解决

我在使用Android studio编写一个每一天都可以实现闹钟功能的日历面板,但是在build.gradle(:APP)下出现Cannot obtain value from provider of Gradle property 'android.testInstrumentationRunnerArguments.package' at configuration time错误。我尝试过通过升级 Gradle 插件版本,或尝试重新构建我的项目或清理构建缓存,升级了Python pip工具等方法,但仍未解决这个问题。

img

这是mainactivity.java的代码

package com.example.myapplication;

import android.app.Activity;
import android.app.AlarmManager;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CalendarView;
import android.widget.Toast;

import java.util.Calendar;

public class MainActivity extends Activity {

    Button btnSetAlarm;
    CalendarView calendarView;
    Calendar selectedDate;
    PendingIntent pendingIntent;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btnSetAlarm = (Button) findViewById(R.id.btnSetAlarm);
        calendarView = (CalendarView) findViewById(R.id.calendarView);

        selectedDate = Calendar.getInstance();

        // Set selected date if user clicks on calendar
        calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
            @Override
            public void onSelectedDayChange(CalendarView calendarView, int year, int month, int dayOfMonth) {
                selectedDate.set(year, month, dayOfMonth);
                checkAlarmExists(selectedDate);
            }
        });

        // Set alarm for selected date
        btnSetAlarm.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                // Check if alarm is already set for selected date
                checkAlarmExists(selectedDate);

                // Set alarm
                Intent intent = new Intent(MainActivity.this, AlarmReceiver.class);
                pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0, intent, 0);
                AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
                alarmManager.set(AlarmManager.RTC_WAKEUP, selectedDate.getTimeInMillis(), pendingIntent);

                // Show success message
                Toast.makeText(MainActivity.this, "Alarm set for " + selectedDate.getTime().toString(), Toast.LENGTH_SHORT).show();
            }
        });
    }

    // Check if alarm is already set for selected date
    private void checkAlarmExists(Calendar selectedDate) {
        Intent intent = new Intent(MainActivity.this, AlarmReceiver.class);
        boolean alarmUp = (PendingIntent.getBroadcast(MainActivity.this, 0, intent, PendingIntent.FLAG_NO_CREATE) != null);
        if (alarmUp) {
            NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
            Notification.Builder builder = new Notification.Builder(MainActivity.this)
                    .setSmallIcon(R.drawable.ic_launcher)
                    .setContentTitle("Alarm Already Set")
                    .setContentText("An alarm is already set for " + selectedDate.getTime().toString())
                    .setAutoCancel(true);
            notificationManager.notify(0, builder.build());
        }
    }


这是build.gradlede 的代码


plugins {
    id 'com.android.application'
}
android {
    compileSdkVersion 33
    defaultConfig {
        applicationId "com.example.myapplication"
        minSdkVersion 21
        targetSdkVersion 33
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}
repositories {

    mavenCentral()
    google()
}
dependencies {
    classpath 'com.android.tools.build:gradle:4.2.2'
    implementation 'com.github.prolificinteractive:material-calendarview:2.0.1'
    implementation 'androidx.appcompat:appcompat:1.4.1'
    implementation 'com.google.android.material:material:1.5.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test.ext:junit:1.1.3'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 5月2日
    • 创建了问题 4月24日

    悬赏问题

    • ¥15 oracle数据库查询语句问题
    • ¥15 有没有c++绘制算法的佬们吗救孩一下
    • ¥15 android 蓝牙闪退
    • ¥15 绝缘子污秽comsol仿真参数
    • ¥15 Fatal error in Process MEMORY
    • ¥15 labelme生成的json有乱码?
    • ¥30 arduino vector defined in discarded section `.text' of wiring.c.o (symbol from plugin)
    • ¥20 如何训练大模型在复杂因素组成的系统中求得最优解
    • ¥15 关于#r语言#的问题:在进行倾向性评分匹配时,使用“match it"包提示”错误于eval(family$initialize): y值必需满足0 <= y <= 1“请问在进行PSM时
    • ¥45 求17位带符号原码乘法器verilog代码