Kalenderdaten unter Android [] (Kalenderdaten unter Android), Lektion, Seite 722753
https://www.purl.org/stefan_ram/pub/kalenderdaten_android (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Android-Entwicklung

Kalenderdaten unter Android 

Addieren von vier Wochen zu einem Datum

package com.example;

public class Main extends android.app.Activity
{

android.widget.DatePicker picker;
android.widget.DatePicker picker1;
android.widget.LinearLayout layout;

public void onCreate( final android.os.Bundle bundle )
{ super.onCreate( bundle );
picker = new android.widget.DatePicker( this );
picker1 = new android.widget.DatePicker( this );

final android.widget.DatePicker.OnDateChangedListener listener
= new android.widget.DatePicker.OnDateChangedListener()
{ public void onDateChanged
( final android.widget.DatePicker picker,
final int year, final int month, final int day )
{ final java.util.GregorianCalendar calendar = new java.util.GregorianCalendar( year, month, day );
calendar.add( java.util.Calendar.DATE, 28 );
final int y = calendar.get( java.util.Calendar.YEAR );
final int m = calendar.get( java.util.Calendar.MONTH );
final int d = calendar.get( java.util.Calendar.DAY_OF_MONTH );
picker1.updateDate( y, m, d ); }};

final android.widget.DatePicker.OnDateChangedListener listener1
= new android.widget.DatePicker.OnDateChangedListener()
{ public void onDateChanged
( final android.widget.DatePicker picker,
final int year, final int month, final int day ) {} };

final java.util.Calendar calendar
= java.util.Calendar.getInstance( java.util.TimeZone.getDefault() );
final int year = calendar.get( java.util.Calendar.YEAR );
final int month = calendar.get( java.util.Calendar.MONTH );
final int day = calendar.get( java.util.Calendar.DAY_OF_MONTH );
picker.init( year, month, day, listener );
picker1.init( year, month, day, listener1 );

Main.this.layout = new android.widget.LinearLayout( this );
Main.this.layout.setOrientation( android.widget.LinearLayout.VERTICAL );
Main.this.layout.addView( Main.this.picker );
Main.this.layout.addView( Main.this.picker1 );
setContentView( Main.this.layout ); }}

Hinzufügen eines Termins zum Kalender (ungetestet)

Die Kalender-API wurde mehrfach überarbeitet. Das Hinzufügen eines Termins zum Kalender verlangt anscheinend ein Exchange - oder Google -Konto. Daher konnte dies nicht getestet werden. Daher enthält der folgende Code möglicherweise noch Fehler. An Stelle des Android-Kalenders kann möglicherweise auch eine Datenbank oder Tabellenkalkulation verwendet werden, um die Termine aufzunehmen, wenn kein Google-Konto erwünscht ist.

void add
( final java.util.GregorianCalendar calendar,
final android.app.Activity activity )

{ final long date = calendar.getTimeInMillis();
calendar.add( java.util.Calendar.DATE, 1 );
final long date1 = calendar.getTimeInMillis();
final java.lang.String caluri = caluri( activity );

if( caluri != null )
{ android.content.ContentResolver cr1 = getContentResolver();
android.content.ContentValues values = new android.content.ContentValues();
values.put( "calendar_id", 1 );
values.put( "title", "Text" );
values.put( "allDay", 0 );
values.put( "dtstart", date );
values.put( "dtend", date1 );
values.put( "description", "Volkshochschule" );
values.put( "hasAlarm", 1 );
values.put( "eventTimezone", android.text.format.Time.getCurrentTimezone() );

final android.net.Uri events = android.net.Uri.parse( caluri + "events" );
android.net.Uri event = cr1.insert( events, values ); }}

@java.lang.SuppressWarnings( "deprecation" )
java.lang.String caluri( final android.app.Activity activity )
{ String result = null;
android.net.Uri cals = android.net.Uri.parse( "content://calendar/calendars" );
android.database.Cursor cursor = null;
try
{ cursor = activity.managedQuery( cals, null, null, null, null ); }
catch( final java.lang.Exception exception ) {}
java.lang.System.out.println( "-5" );
if( cursor != null )result = "content://calendar/";
else
{ cals = android.net.Uri.parse( "content://com.android.calendar/calendars" );
try
{ cursor = activity.managedQuery( cals, null, null, null, null ); }
catch( final java.lang.Exception e ) {}
if( cursor != null )
result = "content://com.android.calendar/"; }
return result; }

Zu AndroidManifest.xml hinzuzufügen
<uses-permission android:name="android.permission.READ_CALENDAR"/>
<uses-permission android:name="android.permission.WRITE_CALENDAR"/>

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram722753 stefan_ram:722753 Kalenderdaten unter Android Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd722753, slrprddef722753, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/kalenderdaten_android