Post recenti

Pagine: [1] 2 3 ... 10
1
Credo ci sia un problema di nomenclatura dei progetti/moduli.

NoobLib è il nome di un progetto che contiene un modulo di nome ":app"

Quando importi il modulo in un altro progetto (TraderGoal) devi cambiargli nome perché in quel progetto ":app" esiste già (ed è il modulo predefinito)

Tuttavia i moduli non possono avere lo stesso nome del progetto (prova a rinominare :app di TraderGoal in :TraderGoal e vedrai), ed anche se lo stai importando in un progetto con un nome diverso evidentemente la cartella radice della libreria crea problemi.
2
Che dovrebbe funzionare senza specificare ':NoobLib-NoobLib' in tutti i punti.

Deve funzionare specificando ':NoobLib'...

Qualche idea del perché non funziona?

Ho provato anche a scrivere
Codice: [Seleziona]
project(':NoobLib').projectDir = new File(settingsDir, '../Library/NoobLib/app')
specificando /app e mantenendo ':NoobLib' ma non funziona.
3
Richiesta Tutorial / Re:Impostare 2 alarm manager
« Ultimo post da Paolo Favaretto il Ieri alle 13:57 »
Grazie proverò, anche se non capisco basta che funzioni  :D
4
Richiesta Tutorial / Re:Impostare 2 alarm manager
« Ultimo post da Ohmnibus il Ieri alle 13:43 »
Modifica

Codice (Java): [Seleziona]
pending_intent = PendingIntent.getBroadcast(MainActivity.this, 0,
                        myIntent, PendingIntent.FLAG_UPDATE_CURRENT);

in

Codice (Java): [Seleziona]
pending_intent = PendingIntent.getBroadcast(MainActivity.this, hour * 100 + minute,
                        myIntent, PendingIntent.FLAG_UPDATE_CURRENT);
5
Richiesta Tutorial / Re:Impostare 2 alarm manager
« Ultimo post da Paolo Favaretto il Ieri alle 12:54 »
Allora, Activity_main dove risiede il Timepicker per settare l' ora di "Entrata" e l' ora di "Uscita" :
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    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"
    tools:layout_editor_absoluteY="81dp"
    tools:layout_editor_absoluteX="0dp">

    <TimePicker
        android:id="@+id/alarmTimePicker"
        android:layout_width="350dp"
        android:layout_height="372dp"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginTop="8dp"
        android:layout_marginLeft="8dp"
        app:layout_constraintLeft_toLeftOf="parent"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintHorizontal_bias="0.518" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Entrata"
        android:id="@+id/start_alarm"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginTop="8dp"
        app:layout_constraintTop_toBottomOf="@+id/alarmText"
        android:layout_marginLeft="63dp"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        android:layout_marginBottom="8dp" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Uscita"
        android:id="@+id/stop_alarm"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_marginTop="8dp"
        app:layout_constraintTop_toBottomOf="@+id/alarmText"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintLeft_toRightOf="@+id/start_alarm"
        android:layout_marginLeft="8dp"
        app:layout_constraintHorizontal_bias="0.705"
        app:layout_constraintBottom_toBottomOf="parent"
        android:layout_marginBottom="8dp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Set the alarm clock!"
        android:id="@+id/alarmText"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_below="@+id/start_alarm"
        android:layout_marginTop="8dp"
        app:layout_constraintTop_toBottomOf="@+id/alarmTimePicker"
        android:layout_marginRight="8dp"
        app:layout_constraintRight_toRightOf="parent"
        android:layout_marginLeft="8dp"
        app:layout_constraintLeft_toLeftOf="parent" />


</android.support.constraint.ConstraintLayout>

Activity Timbra e' il Layout e l'activity principale che si utilizza per Timbrare :
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:background="@color/colorBluTenue"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"          >
 <WebView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/webview"
        android:layout_width="match_parent"
        android:layout_height="350dp"        />
 <Button
        android:id="@+id/setta"
        android:background="@drawable/btn_white"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/webview"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="45dp"
        android:text="Setta Promemoria"      />

 <TextView
     android:id = "@+id/data"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:textColor="#ffffff"
     android:textSize ="20sp"
     android:text = "data"
     android:layout_centerHorizontal="true"
     android:layout_below="@+id/setta"
     android:layout_marginTop="20dp"         />
</RelativeLayout>

Codice per la MainActivity :
public class MainActivity extends AppCompatActivity {

    AlarmManager alarmManager;
    private PendingIntent pending_intent;

    private TimePicker alarmTimePicker;
    private TextView alarmTextView;

    private AlarmReceiver alarm;

    MainActivity inst;
    Context context;

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

        this.context = this;

        //alarm = new AlarmReceiver();
        alarmTextView = (TextView) findViewById(R.id.alarmText);

        final Intent myIntent = new Intent(this.context, AlarmReceiver.class);

        // Get the alarm manager service
        alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);

        // set the alarm to the time that you picked
        final Calendar calendar = Calendar.getInstance();

        alarmTimePicker = (TimePicker) findViewById(R.id.alarmTimePicker);

        Button start_alarm= (Button) findViewById(R.id.start_alarm);
        start_alarm.setOnClickListener(new View.OnClickListener() {
            @TargetApi(Build.VERSION_CODES.M)

            @Override
            public void onClick(View v) {

                calendar.add(Calendar.SECOND, 3);
                //setAlarmText("You clicked a button");

                final int hour = alarmTimePicker.getHour();
                final int minute = alarmTimePicker.getMinute();;

                setAlarmText("You clicked a " + hour + " and " + minute);

                calendar.set(Calendar.HOUR_OF_DAY, alarmTimePicker.getHour());
                calendar.set(Calendar.MINUTE, alarmTimePicker.getMinute());

                myIntent.putExtra("extra", "yes");
                pending_intent = PendingIntent.getBroadcast(MainActivity.this, 0,
                        myIntent, PendingIntent.FLAG_UPDATE_CURRENT);

                alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pending_intent);

                // now you should change the set Alarm text so it says something nice
                setAlarmText("Alarm settato a : " + hour + ":" + minute);
                //Toast.makeText(getApplicationContext(), "You set the alarm", Toast.LENGTH_SHORT).show();
            }

        });

        Button uscita= (Button) findViewById(R.id.stop_alarm);
        uscita.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

        //      Codice per tasto Uscita
                setAlarmText("Alarm Uscita");
                //setAlarmText("You clicked a " + " canceled");
            }
        });

    }

    public void setAlarmText(String alarmText) {

        alarmTextView.setText(alarmText);
    }}

L' Activity Timbra che è l' activity usata per Timbrare :
public class TimbraActivity extends AppCompatActivity {

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

        Button setta = (Button)findViewById(R.id.setta);
        WebView myWebView = (WebView) findViewById(R.id.webview);
        TextView data  = (TextView) findViewById(R.id.data);


        WebSettings webSettings = myWebView.getSettings();
        webSettings.setJavaScriptEnabled(true);
        myWebView.getSettings().setLoadsImagesAutomatically(true);

        myWebView.loadUrl("www.miosito.com");

        GregorianCalendar gc = new GregorianCalendar();
        final int Giorno = (gc.get(Calendar.DAY_OF_WEEK));

        if (Giorno == 2) {
            data.setText("Oggi è : Lunedì ");
        }
        if (Giorno == 3) {
            data.setText("Oggi è : Martedì ");
        }
        if (Giorno == 4) {
            data.setText("Oggi è : Mercoledì ");
        }
        if (Giorno == 5) {
            data.setText("Oggi è : Giovedì ");
        }
        if (Giorno == 6) {
            data.setText("Oggi è : Venerdì ");
        }
setta.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent intent = new Intent( getApplicationContext(), MainActivity.class );
        startActivity(intent);

    }
});

La classe RingtonePlayngService gestisce la notifica che cliccandoci sopra mi porta all' activity Timbta per Timbrare :
public class RingtonePlayingService extends Service {

    MediaPlayer mMediaPlayer;

    @Nullable
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }
    @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
    @Override
    public int onStartCommand(Intent intent, int flags, int startId)
    {

        final NotificationManager mNM = (NotificationManager)
                getSystemService(NOTIFICATION_SERVICE);

        Intent intent1 = new Intent(this.getApplicationContext(), TimbraActivity.class);
        PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent1, 0);

        Notification mNotify  = new Notification.Builder(this)
                .setContentTitle("Promemoria Timbratura")
                .setContentText("Fai click per timbrare !")
                .setSmallIcon(R.drawable.images)
                .setContentIntent(pIntent)
                .setAutoCancel(true)
                .build();
        mMediaPlayer = MediaPlayer.create(this, R.raw.yahoo);
        mMediaPlayer.start();
        mNM.notify(0, mNotify);

        return START_NOT_STICKY;
    }

e questo e' tutto, Una activity che ospita una WebView dove si timbra con 1 pulsante per aprire l'activity che ospita il Timepicker con 2 pulsanti per settare l' ora di "Entrata" e "Uscita", io ci sto diventando matto, per te magari è una cretinata...se ci riesci ti ringrazio immensamente  ;-) ciao
6
Richiesta Tutorial / Re:Impostare 2 alarm manager
« Ultimo post da Ohmnibus il Ieri alle 10:10 »
Posta il codice e vediamo di trovare una soluzione
7
Android Studio e Gradle / Re:Layout e java
« Ultimo post da Ohmnibus il Ieri alle 10:05 »
Probabilmente è possibile ma di fatto non è una buona pratica cambiare lo stile da codice.
Ti conviene passare un oggetto padre di riferimento quando crei gli oggetti, in modo che ereditano lo stile dal padre, e poi modificare gli stili da risorse (styles.xml).
8
Richiesta Tutorial / Re:Impostare 2 alarm manager
« Ultimo post da Paolo Favaretto il Ieri alle 10:03 »
Avevo visto anch'io questo link solo che non so come applicarlo ad un orario ricavato o impostato sul timepicker, nel senso che l'utilizzatore dell'app (è un app nostra aziendale per timbrare) deve poter impostare l'ora del promemoria della mattina e di fine giornata che l'app gli ricorda di timbrare, io sono principiante da una anno che "prova" a fare app, ho pubblicato una sola app a differenza di te che vedo sei molto bravo.
Ti ringrazio ancora per la tua pazienza, ciao Paolo
9
Citazione
Everything works as expected and I can see the library project added as a normal module and I can work with like I want to.
...e quindi qual'è il problema?
10
Richiesta Tutorial / Re:Impostare 2 alarm manager
« Ultimo post da Ohmnibus il Ieri alle 09:53 »
Cercando in rete come primo risultato di "android set multiple alarms" si trova questo: https://stackoverflow.com/a/12791212/466938

In pratica è necessario impostare esplicitamente differenti "requestCode" per i vari alarm:

Codice (Java): [Seleziona]
AlarmManager mgrAlarm = (AlarmManager) context.getSystemService(ALARM_SERVICE);
ArrayList<PendingIntent> intentArray = new ArrayList<PendingIntent>();

//Primo alarm
Intent intent = new Intent(context, OnAlarmReceiver.class);
int requestCode = 1; //Un valore qualsiasi
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, requestCode, intent, 0);
mgrAlarm.set(AlarmManager.ELAPSED_REALTIME_WAKEUP,
   SystemClock.elapsedRealtime() + 60000 * 10, //Fra 10 minuti
   pendingIntent);

intentArray.add(pendingIntent);

//Secondo alarm
intent = new Intent(context, OnAlarmReceiver.class);
requestCode = 2; //Un valore qualsiasi diverso dal precedente
pendingIntent = PendingIntent.getBroadcast(context, requestCode, intent, 0);
mgrAlarm.set(AlarmManager.ELAPSED_REALTIME_WAKEUP,
   SystemClock.elapsedRealtime() + 60000 * 15, //Fra 15 minuti
   pendingIntent);

intentArray.add(pendingIntent);

(codice non testato)
Pagine: [1] 2 3 ... 10