Skip to content

Commit 4786473

Browse files
authored
Add kotlin (#233)
* Add kotlin support
1 parent ee86a04 commit 4786473

File tree

7 files changed

+321
-266
lines changed

7 files changed

+321
-266
lines changed

app/build.gradle

+16-6
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
apply plugin: 'com.android.application'
2+
apply plugin: 'kotlin-android'
3+
apply plugin: 'kotlin-android-extensions'
24

35
android {
46

@@ -60,27 +62,32 @@ android {
6062

6163
dependencies {
6264

63-
implementation 'org.apache.james:apache-mime4j-core:0.7.2'
65+
implementation 'org.apache.james:apache-mime4j-core:0.8.3'
6466

65-
implementation ('org.apache.httpcomponents:httpmime:4.3.6')
67+
implementation ('org.apache.httpcomponents:httpmime:4.5.11')
6668
//implementation 'org.apache.httpcomponents:httpclient-android:4.3.5'
6769

68-
implementation 'org.osmdroid:osmdroid-android:6.1.0'
69-
implementation 'org.apache.httpcomponents:httpcore:4.4.10'
70+
implementation 'org.osmdroid:osmdroid-android:6.1.5'
71+
implementation 'org.apache.httpcomponents:httpcore:4.4.13'
7072

7173
implementation 'oauth.signpost:signpost-commonshttp4:1.2.1.2'
72-
implementation 'org.slf4j:slf4j-android:1.7.25'
74+
implementation 'org.slf4j:slf4j-android:1.7.30'
7375
implementation "com.android.support:support-compat:28.0.0"
7476

7577
// Required for local unit tests (JUnit 4 framework)
76-
testImplementation 'junit:junit:4.12'
78+
testImplementation 'junit:junit:4.13'
7779

7880
// Required for instrumented tests
7981
androidTestImplementation "com.android.support.test:runner:1.0.2"
8082
androidTestImplementation "com.android.support.test.espresso:espresso-core:3.0.2"
8183
androidTestImplementation "com.android.support.test:rules:1.0.2"
8284

85+
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
86+
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
87+
implementation 'com.android.support:appcompat-v7:28.0.0'
88+
8389
compileOnly 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2'
90+
8491
}
8592

8693
task copyNorwegianValues(type: Copy) {
@@ -99,3 +106,6 @@ android.applicationVariants.all { variant ->
99106
output.processResources.dependsOn([copyNorwegianValues, copyNorwegianXml])
100107
}
101108
}
109+
repositories {
110+
mavenCentral()
111+
}

app/src/main/AndroidManifest.xml

+94-59
Original file line numberDiff line numberDiff line change
@@ -1,68 +1,103 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="net.osmtracker"
3-
android:versionName="0.7.2" android:versionCode="48" android:installLocation="auto">
2+
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3+
package="net.osmtracker"
4+
android:installLocation="auto"
5+
android:versionCode="48"
6+
android:versionName="0.7.2">
47

5-
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
6-
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
7-
<uses-permission android:name="android.permission.RECORD_AUDIO" />
8-
<uses-permission android:name="android.permission.CAMERA" />
9-
<uses-permission android:name="android.permission.INTERNET" />
10-
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
11-
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
12-
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
13-
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
8+
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
9+
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
10+
<uses-permission android:name="android.permission.RECORD_AUDIO" />
11+
<uses-permission android:name="android.permission.CAMERA" />
12+
<uses-permission android:name="android.permission.INTERNET" />
13+
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
14+
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
15+
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
16+
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
1417

15-
<application android:label="@string/app_name" android:description="@string/app_description" android:icon="@drawable/ic_launcher" android:theme="@style/HighContrast">
18+
<application
19+
android:description="@string/app_description"
20+
android:icon="@drawable/ic_launcher"
21+
android:label="@string/app_name"
22+
android:theme="@style/HighContrast">
1623

17-
<uses-library android:name="org.apache.http.legacy" android:required="false"/>
24+
<uses-library
25+
android:name="org.apache.http.legacy"
26+
android:required="false" />
1827

19-
<activity android:name="net.osmtracker.activity.TrackManager" android:label="@string/app_name">
20-
<intent-filter>
21-
<action android:name="android.intent.action.MAIN" />
22-
<category android:name="android.intent.category.LAUNCHER" />
23-
</intent-filter>
24-
</activity>
25-
26-
<activity android:name="net.osmtracker.activity.TrackLogger" android:label="@string/tracklogger" android:launchMode="singleTop"/>
27-
<activity android:name="net.osmtracker.activity.Preferences" android:label="@string/prefs" />
28-
<activity android:name="net.osmtracker.activity.WaypointList" android:label="@string/wplist" />
29-
<activity android:name="net.osmtracker.activity.TrackDetail" android:label="@string/trackdetail" />
30-
<activity android:name="net.osmtracker.activity.OpenStreetMapUpload" android:label="@string/osm_upload">
31-
<intent-filter>
32-
<action android:name="android.intent.action.VIEW"/>
33-
<category android:name="android.intent.category.BROWSABLE"/>
34-
<category android:name="android.intent.category.DEFAULT"/>
35-
<data android:host="osm-upload" android:scheme="osmtracker"/>
36-
</intent-filter>
37-
</activity>
38-
<activity android:name="net.osmtracker.activity.About" android:label="@string/about" />
39-
<activity android:name="net.osmtracker.activity.DisplayTrack" android:label="@string/displaytrack" />
40-
<activity android:name="net.osmtracker.activity.DisplayTrackMap" android:label="@string/displaytrackmap" />
41-
<activity android:name="net.osmtracker.activity.ButtonsPresets">
42-
<intent-filter>
43-
<action android:name="launch_buttons_presets"/>
44-
<category android:name="android.intent.category.DEFAULT" />
45-
</intent-filter>
46-
</activity>
47-
<activity android:name="net.osmtracker.activity.AvailableLayouts">
48-
</activity>
49-
50-
<service android:name="net.osmtracker.service.gps.GPSLogger" android:exported="false">
51-
<intent-filter>
52-
<action android:name="osmtracker.intent.GPS_SERVICE" />
53-
</intent-filter>
54-
</service>
28+
<activity
29+
android:name=".activity.TrackManager"
30+
android:label="@string/app_name">
31+
<intent-filter>
32+
<action android:name="android.intent.action.MAIN" />
5533

56-
<provider android:name="net.osmtracker.db.TrackContentProvider"
57-
android:authorities="net.osmtracker.provider"
58-
android:exported="false" />
34+
<category android:name="android.intent.category.LAUNCHER" />
35+
</intent-filter>
36+
</activity>
37+
<activity
38+
android:name=".activity.TrackLogger"
39+
android:label="@string/tracklogger"
40+
android:launchMode="singleTop" />
41+
<activity
42+
android:name=".activity.Preferences"
43+
android:label="@string/prefs" />
44+
<activity
45+
android:name=".activity.WaypointList"
46+
android:label="@string/wplist" />
47+
<activity
48+
android:name=".activity.TrackDetail"
49+
android:label="@string/trackdetail" />
50+
<activity
51+
android:name=".activity.OpenStreetMapUpload"
52+
android:label="@string/osm_upload">
53+
<intent-filter>
54+
<action android:name="android.intent.action.VIEW" />
5955

60-
<receiver android:name="net.osmtracker.receiver.MediaButtonReceiver" >
61-
<intent-filter>
62-
<action android:name="android.intent.action.MEDIA_BUTTON" />
63-
</intent-filter>
64-
</receiver>
65-
66-
</application>
56+
<category android:name="android.intent.category.BROWSABLE" />
57+
<category android:name="android.intent.category.DEFAULT" />
58+
59+
<data
60+
android:host="osm-upload"
61+
android:scheme="osmtracker" />
62+
</intent-filter>
63+
</activity>
64+
<activity
65+
android:name=".activity.About"
66+
android:label="@string/about" />
67+
<activity
68+
android:name=".activity.DisplayTrack"
69+
android:label="@string/displaytrack" />
70+
<activity
71+
android:name=".activity.DisplayTrackMap"
72+
android:label="@string/displaytrackmap" />
73+
<activity android:name=".activity.ButtonsPresets">
74+
<intent-filter>
75+
<action android:name="launch_buttons_presets" />
76+
77+
<category android:name="android.intent.category.DEFAULT" />
78+
</intent-filter>
79+
</activity>
80+
<activity
81+
android:name=".activity.AvailableLayouts" />
82+
83+
<service
84+
android:name=".service.gps.GPSLogger"
85+
android:exported="false">
86+
<intent-filter>
87+
<action android:name="osmtracker.intent.GPS_SERVICE" />
88+
</intent-filter>
89+
</service>
90+
91+
<provider
92+
android:name=".db.TrackContentProvider"
93+
android:authorities="net.osmtracker.provider"
94+
android:exported="false" />
95+
96+
<receiver android:name=".receiver.MediaButtonReceiver">
97+
<intent-filter>
98+
<action android:name="android.intent.action.MEDIA_BUTTON" />
99+
</intent-filter>
100+
</receiver>
101+
</application>
67102

68103
</manifest>
+17-11
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,25 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<menu xmlns:android="http://schemas.android.com/apk/res/android">
3-
<item android:id="@+id/tracklogger_menu_stoptracking"
2+
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
3+
xmlns:android="http://schemas.android.com/apk/res/android">
4+
<item
5+
android:id="@+id/tracklogger_menu_stoptracking"
46
android:title="@string/menu_stoptracking"
57
android:icon="@android:drawable/ic_menu_save"
6-
android:showAsAction="ifRoom|withText"></item>
7-
<item android:id="@+id/tracklogger_menu_waypointlist"
8+
app:showAsAction="ifRoom|withText" />
9+
<item
10+
android:id="@+id/tracklogger_menu_waypointlist"
811
android:title="@string/menu_waypointlist"
9-
android:icon="@android:drawable/ic_menu_directions"></item>
10-
<item android:id="@+id/tracklogger_menu_displaytrack"
12+
android:icon="@android:drawable/ic_menu_directions" />
13+
<item
14+
android:id="@+id/tracklogger_menu_displaytrack"
1115
android:title="@string/menu_displaytrack"
12-
android:icon="@android:drawable/ic_menu_compass"></item>
13-
<item android:id="@+id/tracklogger_menu_settings"
16+
android:icon="@android:drawable/ic_menu_compass" />
17+
<item
18+
android:id="@+id/tracklogger_menu_settings"
1419
android:title="@string/menu_settings"
15-
android:icon="@android:drawable/ic_menu_preferences"></item>
16-
<item android:id="@+id/tracklogger_menu_about"
20+
android:icon="@android:drawable/ic_menu_preferences" />
21+
<item
22+
android:id="@+id/tracklogger_menu_about"
1723
android:title="@string/menu_about"
18-
android:icon="@android:drawable/ic_menu_help"></item>
24+
android:icon="@android:drawable/ic_menu_help" />
1925
</menu>

0 commit comments

Comments
 (0)