I2P-Bote for Android

Bote is an Android port of I2P-Bote.

Build process

Dependencies:

Gradle

The build system is based on Gradle. There are several methods for setting Gradle up:

Gradle will pull dependencies over the clearnet by default. To use Tor, create a gradle.properties file in i2p.android.base containing:

```
systemProp.socksProxyHost=localhost
systemProp.socksProxyPort=9150
```

Preparation

  1. Install I2P. You need the installed libraries to build against.

  2. Download the Android SDK. The simplest method is to download Android Studio.

  3. Check out the i2p.i2p-bote and i2p.i2p-bote.android repositories.

  4. Create a local.properties file in i2p.i2p-bote.android/botejars containing:

    i2pbase=/path/to/installed/i2p
    botesrc=/path/to/i2p.i2p-bote
  5. If you want to use a local copy of the I2P Android client library, install it in your local Maven repository with:

    cd path/to/i2p.android.base
    ./gradlew client:installArchives

Building from the command line

  1. Create a local.properties file in i2p.i2p-bote.android containing:

    sdk.dir=/path/to/android-studio/sdk
  2. gradle assembleDebug

  3. The APK will be placed in i2p.i2p-bote.android/app/build/apk.

Building with Android Studio

  1. Import i2p.i2p-bote.android into Android Studio. (This creates the local.properties file automatically).

  2. Build and run the app (Shift+F10).

Signing release builds

  1. Create a signing.properties file in i2p.i2p-bote.android containing:

    STORE_FILE=/path/to/android.keystore
    STORE_PASSWORD=store.password
    KEY_ALIAS=key.alias
    KEY_PASSWORD=key.password
  2. gradle assembleRelease

git repository: ./i2p.i2p-bote.android

Git Summary


 project  : i2p.i2p-bote.android
 repo age : vor 8 Jahren
 active   : 145 days
 commits  : 660
 files    : 271
 authors  : 
69c8c01 2016-05-29 Use new I2CP domain socket API
f3c4cec 2016-05-29 Upgrade Android Gradle plugin
25ddcb9 2016-05-29 More upstream changes
aa93eaa 2016-05-29 Fixes due to i2p.i2p-bote changes
fcd0ed2 2015-06-21 Updated CHANGELOG
ff3876d 2015-06-21 0.6
b27fc5b 2015-06-21 Fixed default warning visibility
e4764c2 2015-06-21 Updated translations
c9ea682 2015-06-21 Test SetupActivity UI
04074a9 2015-06-20 Test IntroActivity UI
b4e9a33 2015-06-20 Static imports
82e3aa8 2015-06-20 Use Espresso-Intents to check started Activities
3eb8bde 2015-06-20 Start testing EmailListActivity UI
5495b02 2015-06-20 Clean up inbox after tests
fe69aee 2015-06-20 Fix Espresso dependencies
02be5d0 2015-06-20 Upgraded Espresso
682793e 2015-06-19 Upgraded libraries
a51e0f1 2015-06-05 Update identities loaders on changes
f6c3a8c 2015-06-05 Make first identity default by default
b948c3d 2015-06-05 Use selected identity as default for new emails
bb0413a 2015-06-05 Require password to access privacy and app protection settings
9126b37 2015-06-05 Updated CHANGELOG
12fea0a 2015-06-05 Fix lock size in drawer
041a7d1 2015-06-05 Make identicon size in drawer a multiple of nine
d3cd2d8 2015-06-05 propagate from branch 'i2p.i2p-bote.android.dev' (head 2a826ee95560ec9a0e9fc61f1bc8534229a9cda9)             to branch 'i2p.i2p-bote.android' (head be56b90da9cf777c5291d91ff6fb18294e6582d0)
2572a75 2015-06-05 Better app protection icon
382687d 2015-06-05 Upgrade to Iconics 1.0.2 and MaterialDrawer 3.0.6 to fix bugs
1bc93a6 2015-06-04 Upgraded support libraries
935f5e3 2015-06-04 New help translations for in
4a0e882 2015-06-04 Updated translations
950d06e 2015-06-04 Upgrade to client library v0.7
5f81a51 2015-06-04 Drop now-unused drawables
e0e17d2 2015-06-04 Move FABs to Iconics
baf8623 2015-06-04 Fix defStyle handling
5860def 2015-06-04 Move menus to Iconics
1497ade 2015-06-03 Use Iconics for intro swipe icon
7c9f787 2015-06-03 Add padding to settings icons, tweak size
60a355e 2015-06-03 Move Preferences to Iconics
1604e4d 2015-06-03 Added padding to IconicsDrawables measured from original drawables
31e8e35 2015-06-02 Add explicit dependency on Android-Iconics
89d2c7a 2015-06-02 Use Android-Iconics for most icons
919b45d 2015-06-02 Add fake "locked" profile to unlock app from drawer
131b321 2015-06-02 Display correct new email count for per-identity views
70fc503 2015-06-01 Tweak how identities are displayed in the drawer
0ad8bf4 2015-06-01 Add "All mail" view
75aa2bf 2015-06-01 Use resource IDs directly for drawer folder icons
9507cc6 2015-06-01 Remove unnecessary cast
139d977 2015-06-01 Enable users to filter folders by identity
076eaa0 2015-06-01 Move DrawerFolderLoader callbacks into an inner class
73f0adc 2015-06-01 Migrate to com.mikepenz:materialdrawer
0ae8602 2015-06-01 Moved to minSdk 10 and support libs 22.2.0 to use com.mikepenz:materialdrawer
fb983cf 2015-05-29 Updated translations
0883347 2015-05-29 Use FAB for new identity action
de39cbb 2015-05-29 Updated translations after string push
dd3381b 2015-05-29 Updated CHANGELOG
0204f00 2015-05-29 Icons for preference categories
f713394 2015-05-29 Rename general settings category to network
992564f 2015-05-29 Implement screen security, combine with password in app protection category
95df77c 2015-05-29 Split out privacy settings into separate category
801655b 2015-05-29 Extract I2P router config to advanced settings
c7ed4ab 2015-05-29 Lint
dcecbae 2015-05-29 Configurable language, part 3
c0948f7 2015-05-29 Configurable language, part 2
af7e7c2 2015-05-29 Configurable language, part 1
d0b47cd 2015-05-29 Nav drawer style fixes
c8900cc 2015-05-29 AppCompat v22.1.*: drawable tinting
f6dc23d 2015-05-29 Correct nav drawer styling
1b9dd14 2015-05-29 Lint
b15fc28 2015-05-29 Don't add settings twice
f1a69af 2015-05-29 Pull reseed certs into Bote so the internal router can reseed
469369e 2015-05-28 Updated CHANGELOG
2057757 2015-05-28 AppCompat v22.1.*: Material design dialogs
9e87609 2015-05-28 Deprecations
bcfc02b 2015-05-28 ActionBarActivity -> AppCompatActivity
a813ea2 2015-05-28 Dropped old layout
2337243 2015-05-28 Rebuilt libscrypt.so, included armeabi-v7a
04459aa 2015-05-28 Layout tweak
d74ce2e 2015-05-28 Bugfix
4395b0e 2015-05-28 Updated translations
fa53381 2015-05-28 Missing file from previous commit
dd38794 2015-05-28 Added Transifex config, renamed id -> in
29a0d02 2015-05-28 Migrate settings to support-v4-preferencefragment, split out identities
1e090a3 2015-05-28 Re-enable drawer toggle (accidentally removed during Toolbar migration)
4a95afc 2015-05-27 Upgraded build tools, bumped target SDK
28c7456 2015-05-27 Upgraded support libraries
5d07b27 2015-05-27 Prevent NPE
3de3774 2015-05-27 Updated TODO with Silent Store checklist (useful reference)
65e3e33 2015-05-27 Fully clean I2P source
a43990d 2015-03-02 Upgrade to client library 0.5.1 which includes LogWriter
c484124 2015-03-02 Necessary LogWriter changes after update to 0.9.18
b67d1b6 2015-03-02 Upgrade Material-ish Progress library to 1.4
21498d5 2015-03-02 Updated I2P client library to 0.5
37bdf78 2015-03-02 Update SKD build tools and dependencies, enable Java 1.7 features
6cad32f 2015-02-24 Updated README
6d68e89 2015-02-24 Update TODO
703eda3 2015-01-13 Spelling
9a8dfb6 2015-01-13 Updated CHANGELOG
d964961 2015-01-13 0.5
cebdaf7 2015-01-13 Fixed occasional crash
de5f657 2015-01-13 Formatting
c029048 2015-01-13 Fix CAB inserting above Toolbar
445fca7 2015-01-13 Loading and empty views for address book
7c8d9bd 2015-01-12 Checksum and license updates
b45d137 2015-01-12 Moved widgets to i2p.bote.android.widget
c6d1d1e 2015-01-12 Loading and empty views for emails list
20c2b1e 2015-01-12 Handle attachments with incorrect MIME types
fe54c00 2015-01-11 Updated translations
b0383ee 2015-01-11 Updated translations
ca2d22f 2015-01-09 NPE fix
4c5dff6 2015-01-09 Missing file
ff69a79 2015-01-09 Updated translations
e44b838 2015-01-08 Warn about large attachment sizes
a62c805 2015-01-08 Ensure ContactsCompletionView text is visible on all devices
334e76b 2015-01-08 New translations for help pages
92a1a98 2015-01-08 Updated translations
2e560df 2015-01-08 Use ripple effect on API 21+
ef20d5f 2015-01-08 Protect ECUtils class methods
3dad4c5 2015-01-08 Help page for identities
c2a14fd 2015-01-08 Reworked about page for translations
df2ee58 2015-01-08 Updated changelog
2922469 2015-01-08 Updated CHANGELOG
6720f61 2015-01-07 Help and About pages
103811d 2015-01-07 Re-add list dividers
a80d90d 2015-01-07 Missing file
73ebc99 2015-01-07 Cache whether we have sent an email or not
788e74e 2015-01-07 Unused import
c493478 2015-01-07 Migrate AuthenticatedListFragments to RecyclerView
f74a5be 2015-01-07 Missing file
a1d6db8 2015-01-06 Fixed bug
ad17dda 2015-01-06 Color comment
3fd71b9 2015-01-06 Fixed selection state bug
0552c61 2015-01-06 Nav drawer folder selection styling
51c8926 2015-01-05 Migrated folder list to RecyclerView
18464d1 2015-01-05 Pull layout into XML
5185fb8 2015-01-05 View holder pattern
2d5343c 2015-01-05 Cleanups
b434ded 2015-01-05 Updated translations
a03ad62 2015-01-05 Updated CHANGELOG
61c1fad 2015-01-05 Bugfix: on legacy devices, Views that are GONE are still clickable
06bf416 2015-01-05 Put identities inside category on legacy devices
7bed892 2015-01-05 Dynamic Preferences for legacy devices
67e77fb 2015-01-05 Implement legacy identity headers in Setting
6d3d351 2015-01-04 Use SpongyCastle for crypto
5614e5e 2015-01-04 No need to stub out UpdateChecker any more
13b7c4e 2015-01-02 Updated translations
1028fd7 2015-01-02 Updated TODO
8d65e7a 2015-01-02 FloatingActionBar 1.5.1
f8e75f6 2015-01-02 Separate multiple attachments
b35eded 2015-01-02 Removed mistaken string
019773b 2015-01-02 Updated translations
14c0250 2015-01-02 Replace copy image with button, extract strings
6991da2 2015-01-02 New delivered icon, tweaked email listitem layout
b0dbd90 2015-01-02 Updated CHANGELOG
d0500a3 2015-01-02 Wording
9197e5e 2015-01-02 Layout tweak
0af9d2a 2015-01-01 Updated translations
2002cd7 2015-01-01 Save attachments to Downloads folder
1ca5edd 2015-01-01 Moved copyStream() to BoteHelper
6bc2c83 2015-01-01 Missing file from previous commit
3760139 2015-01-01 Stubbed out attachment saving
9626e5e 2015-01-01 Fixed AttachmentProvider.getType()
94f0561 2015-01-01 AttachmentProvider.getType() tests
f4c1f63 2015-01-01 Fixed attachment creation in tests
33ba263 2014-12-31 Start making tests pass
f3832a1 2014-12-31 AttachmentProviderTests
f561046 2014-12-30 FloatingActionBar 1.4.0
bc995ca 2014-12-30 Updated verification hashes
05011db 2014-12-30 Testing dependencies etc.
df63d6b 2014-12-30 Layout changes
95b5e66 2014-12-29 Implemented AttachmentProvider, removed ContentAttachment.getUri()
6061582 2014-12-29 Prep work for viewing attachments
82835b4 2014-12-29 Added missing files
d53ac2d 2014-12-28 Padding fix
97f290f 2014-12-28 Add/remove attachments in new email, list attachments in view email
2dc6663 2014-12-28 Updated attachment icon on email list items
e7f671e 2014-12-27 Move log tag to Constants
f25bd2d 2014-12-27 Updated translations
471abab 2014-12-27 Updated CHANGELOG
a80c544 2014-12-27 Add support for Cc: and Bcc:
316c7d1 2014-12-25 Updated CHANGELOG
c4bebe0 2014-12-25 Selectable email content (API 11+)
adbfcd9 2014-12-23 NPE fix
12794da 2014-12-23 Fixed string
7297e96 2014-12-23 Updated translations
0ee3324 2014-12-22 Updated TODO
128a2aa 2014-12-19 Updated CHANGELOG
1f4fb2e 2014-12-19 0.4
5ac75d2 2014-12-19 Moved release signing into separate buildscript
b3d6b21 2014-12-19 Upgraded build tools to 21.1.1
4e01e51 2014-12-19 Upgraded support libraries to 21.0.3
3cb8590 2014-12-19 Permission to vibrate
6a8a66a 2014-12-19 Updated translations
f8ef445 2014-12-19 Updated translations
8484557 2014-12-19 Updated TODO
c46264c 2014-12-19 New email notification fixes
d88d872 2014-12-17 Fix settings menu Intents in debug build
3abc522 2014-12-17 Consistent titles
05f277b 2014-12-17 Visually break up emails in ViewPager
ec8215b 2014-12-17 Notify users that Bote needs to be connected to check emails
2e7b56c 2014-12-17 Proper error page
a9bf22c 2014-12-16 Fixed new email notifications
40885ed 2014-12-16 Don't modify UI from email-sending thread
7d85944 2014-12-16 New translations for ro
ad6a45a 2014-12-16 Updated translations
8d03317 2014-12-16 More robust email checking
dd5fe0e 2014-12-13 Updated TODO
e12e147 2014-12-13 Updated CHANGELOG
49e857f 2014-12-13 Updated translations
060a00a 2014-12-13 Copy EmailDestinations to clipboard
2f68b30 2014-12-12 Only call connectNow() if status==DELAY; always call when I2P status==ACTIVE
3cf3b3a 2014-12-10 Updated CHANGELOG
5d548b7 2014-12-10 Prevent NPE
084a03e 2014-12-10 Updated translations
30da858 2014-12-10 Updated CHANGELOG
4db77aa 2014-12-10 Missing file from previous commit
f3d9574 2014-12-10 Labels in address book FAM (using FAB library 1.3.0)
d460b44 2014-12-09 Bumped gradle plugin to 1.0.0
f0899fe 2014-12-04 Enable debug versions to be installed alongside release versions
34fa954 2014-12-04 Fixed NPE
6f5351e 2014-12-04 Updated CHANGELOG
fae76d8 2014-12-02 0.3
4770695 2014-12-01 Upgrade to client library 0.4, use new helper bind method with new Intents
44daa88 2014-12-01 Updated translations
fd4ac4c 2014-11-30 Updated translations
1913ba9 2014-11-30 Users don't need to see the local Destination
7defa7f 2014-11-30 Upgraded support libraries to 21.0.2
5352e63 2014-11-30 Tag strings for translation
525d1e4 2014-11-26 Updated TODO
0fe5e38 2014-11-26 Pie charts on network info page
0963a85 2014-11-25 Extract common code for viewing identities and contacts
f16c90d 2014-11-25 Use same layout for viewing identities and contacts
03ecb06 2014-11-25 Updated Gradle Witness
0ed994f 2014-11-25 Zoom QR code on click
1a8c6bf 2014-11-25 QR code scanning
9b145ad 2014-11-25 Icon for scanning QR codes
e0b677e 2014-11-25 Move add contact action to FAM
f87e28d 2014-11-25 Don't allow EmailDestination of an existing contact to change
ee3001c 2014-11-25 NFC: check received message, receive on API 9
3fc07ee 2014-11-19 Updated translations
265aca7 2014-11-19 Updated CHANGELOG
fc8a511 2014-11-18 View identity: Generate and show QR code
f582499 2014-11-18 Divider styles
b2ca083 2014-11-18 0.3-rc5
f573740 2014-11-18 Specify version in build.gradle
186aeee 2014-11-18 New email: If the user has typed anything, confirm when they navigate away
5bd8409 2014-11-18 Missing file
f11ddd0 2014-11-18 Better name handling for email replies
b9cb146 2014-11-18 Don't include Anonymous in Reply All
2ea99f8 2014-11-18 Increase identicon density
5687468 2014-11-18 Better handling of identicon backgrounds
4922188 2014-11-18 View contact: layout changes, removed ShareActionProvider (for now)
c1e9d8a 2014-11-18 Layout cleanup
70c20f0 2014-11-18 View identity: layout changes, removed ShareActionProvider (for now)
c8683ae 2014-11-17 Action bar title fixes
5de1737 2014-11-17 View email text styles and sizes
4f7d809 2014-11-17 Divider between email header and content
765bfd0 2014-11-17 Max navigation drawer width
d3e06e3 2014-11-17 View email layout tweaks
d05daa4 2014-11-16 Show identicon for anonymous sent emails
af36c12 2014-11-16 More uniform identicons
cd8b52c 2014-11-16 Make identicon visible in contact token
e7321b3 2014-11-16 Email list item layout fix
0e7de7a 2014-11-15 Material design: text appearance
bf1eb02 2014-11-11 Toolbar for settings
910898d 2014-11-08 SHA256 hash for net.i2p.android.ext:floatingactionbutton:1.1.0
f5f647d 2014-11-02 Use client library 0.3
f1e4674 2014-11-02 Use mavenLocal() repository instead of a local file repo
2cc6336 2014-10-30 Upgraded build tools to 21.0.2 (fixes a compile bug)
006e9af 2014-10-30 Upgraded build tools to 21.0.0 (needed to fix a resource merging bug)
4208bf1 2014-10-30 New Gradle Witness build
99e2b6d 2014-10-30 Use our own, backwards-compatible version of the FloatingActionBar library
6857cec 2014-10-30 Upgraded gradle wrapper and build tools
57cbd5d 2014-10-30 Removed old translations
0103f58 2014-10-27 Material design: contact chips
20f7cd4 2014-10-26 Fixed deprecation
737b165 2014-10-26 FloatingActionBar 1.1.0
56a4159 2014-10-23 Materail design: Floating action button for new email action
84df404 2014-10-22 Material design: Left side nav should open over toolbar
7c08798 2014-10-22 Updated TODO
6ceaca8 2014-10-22 Identicons for EmailDestinations with no associated picture
9060a0f 2014-10-21 Material theme: side nav width, toolbar height
0c0c8a1 2014-10-21 Change email checker indicator colors
4b7469e 2014-10-20 New network status icons
f33ed58 2014-10-20 Changed outbox icon
d440a99 2014-10-20 Material theme: nav drawer icons
ed4345f 2014-10-20 0.3-rc4
b4a244f 2014-10-20 Material theme: text appearance
5540bf5 2014-10-19 Changed accent color
bba43d4 2014-10-19 Close drawer when opening address book or network status
880f972 2014-10-19 Line accidentally removed
d2d322e 2014-10-19 Material theme: main toolbar
9ceae6e 2014-10-19 Material theme: contact list
ba779c6 2014-10-19 Material theme: email list
cde9f3d 2014-10-19 Missing line
a8e014d 2014-10-19 Material theme: folder list
839bdec 2014-10-19 Material theme: new styles
0588c24 2014-10-19 Material theme: new icons
3069956 2014-10-19 Upgraded to API 21
61d090a 2014-10-18 Picture styling for identity and contact view pages
fae63f3 2014-10-16 Updated translations
8eed89e 2014-09-30 Use released client library 0.2
1129490 2014-09-29 Updated translations
f7cbe69 2014-09-26 Use new helper method in client library
83f8e5a 2014-09-26 Plurals fix
6b3f272 2014-09-26 Use client library 0.2
1acd650 2014-09-26 Use the new i2p.i2p-bote directory structure
55cfe3b 2014-09-25 Different sent date formats for different ages of email
efea37a 2014-09-25 Updated translations
4a7a4f0 2014-09-25 Only show incomplete email count in inbox
977ac2a 2014-09-25 Don't create a new fragment when selecting the current folder in nav drawer
c01e7a0 2014-09-25 Placeholder colors for SwipeRefreshLayout
efcea3b 2014-09-25 Nav drawer design guidelines
53abc52 2014-09-25 Plural string fixes
e4b8732 2014-09-25 Plural strings
20fc489 2014-09-24 Updated translations
c0333e1 2014-09-24 Settings improvements
32a064b 2014-09-24 Updated TODO
0910f81 2014-09-24 Initial CHANGELOG
5553e28 2014-09-24 Check email action; only allow checking email from inbox and when authenticated
8c35e72 2014-09-24 Make empty inbox swipeable
4d21318 2014-09-23 Switch to android.support.v4.widget.SwipeRefreshLayout
07c0765 2014-09-19 Updated translations
0e71e13 2014-09-19 Remove unused string
bd73518 2014-09-19 Password check in edit contact page (because it could be opened by an Intent)
0c2f97a 2014-09-19 Use AuthenticatedListFragment for AddressBookFragment
37882c6 2014-09-19 Methods that should be private
3bf872b 2014-09-19 Split out authentication into abstract class
3eb46d9 2014-09-18 Show keyboard with password dialog
9a66763 2014-09-18 "Log out" is a better user hint than "Clear password"
30de39f 2014-09-18 Clarify how to log in
61f351e 2014-09-18 New translations for pl
7a52cac 2014-09-18 Updated translations
ff55915 2014-09-18 Missing lock and unlock icons
bb4d45d 2014-09-18 Update folder list on set/clear password (for unread email count)
13c6c68 2014-09-18 Better action management
b3aef82 2014-09-18 Remove pop-up login request from email list
b600e32 2014-09-18 "Log in" and "Clear password" actions on email list
cb34f8c 2014-08-30 Improved errors
85039f7 2014-08-30 Fixed NPE
4971ea9 2014-08-28 Updated translation strings
4157683 2014-08-28 Updated translations
b31848b 2014-08-28 Bugfix: initialize list after authentication
28d0e73 2014-08-28 Forward and Reply all
0e2a999 2014-08-28 Hide fingerprints from UI until they are reliable
1e404b6 2014-08-28 Fingerprint field for contacts, not filled yet
ba2009e 2014-08-28 Added view contact activity
8503c77 2014-08-28 Missing disableForegroundNdefPush()
776f3de 2014-08-28 Show identity fingerprint in current locale if possible
3aad735 2014-08-28 Don't allow password dialogs to be canceled by the back button
2fd8862 2014-08-28 Authenticate for identity creation
7258347 2014-08-28 Comment fixes
f5234d6 2014-08-28 Italics for Anonymous senders
179a852 2014-08-27 Layout tools fix
5e93be9 2014-08-27 Show recipient for emails listed in Outbox and Sent
0338247 2014-08-27 Updated TODO
a6bd86f 2014-08-27 Updated TODO
b284c7d 2014-08-26 View identity: - Show fingerprint (en) - Generate QR code from identity key
46f1df1 2014-08-23 0.3-rc3
fffbc8d 2014-08-23 Docstring fix
c434779 2014-08-23 Disable hidden mode for internal router (participation still disabled)
1d9f433 2014-08-23 0.3-rc2
f063c3b 2014-08-22 New translations for zh
a4cb25f 2014-08-22 Updated translations
9012c0b 2014-08-21 Use client library 0.1.1
7b3480f 2014-08-20 Compiled libscrypt.so for x86 and mips using NDK r10
24a12c8 2014-08-20 Recompiled libscrypt.so with NDK r10 to fix text relocations
6e691eb 2014-08-20 0.3-rc1
d3e900e 2014-08-20 Added comments to translation strings
86e15f3 2014-08-20 Feature graphic for Google Play
f458796 2014-08-20 Fixed bug caused by API changes
6b3479e 2014-08-20 New translations: id, nb, sq
6f42395 2014-08-20 Missing change
cd25f25 2014-08-20 Don't let a user accidentally exit the setup wizard if they chose to use it
5283316 2014-08-20 Don't show Share menu for new contacts
3d378f2 2014-08-18 Hide old password field in SetPasswordFragment if none is set
196024b 2014-08-18 More TODO items
dc3a818 2014-08-18 Request password in onActivityCreated(), not onResume()
1059049 2014-08-17 Password handling: - Init lists once in onResume (handles passwords entered higher in stack) - Destroy any existing data in UI if cached password is cleared
fe559c0 2014-08-17 Password restrictions
061a98d 2014-08-17 Modularize password entry
bbd4cf2 2014-08-17 Don't leak incomplete email count outside password
b7d1012 2014-08-15 Make it easier to use a local copy/build of the client library
550525b 2014-08-07 Updated translations
d06714b 2014-07-26 New translations for ru
23aa164 2014-07-26 Updated translations
21d71e0 2014-07-17 I2P Android now using Enum for State
36ea804 2014-07-16 jstl.jar is a more reliable test, from source only jarBote will prepare it
24b5afd 2014-07-16 Switch to I2CP over domain sockets for I2P Android
e461e5e 2014-07-16 Use the I2P Android client library
4e5fd63 2014-07-15 Better control of what artifacts are built by what task
476b15d 2014-07-15 Updated TODO
fad705e 2014-07-11 Cleaner build script
3ba7022 2014-07-10 Updated translations
aae3340 2014-07-10 New translations for fr
0404e3d 2014-07-10 String improvement (thx Towatowa441)
6387f99 2014-07-10 Don't abort on lint errors (this is the 0.2 release commit)
0d906be 2014-07-10 Fixed overflowing text on small screens
b7fac8a 2014-07-10 0.2
1b52f5b 2014-07-10 Made intro_4.svg more Bote-like
416f223 2014-07-10 Missing checkin
a1f361c 2014-07-10 Updated translations
51e58b1 2014-07-10 Reverted mistaken commit
a44cf69 2014-07-10 Updated translations for changed strings
0f78393 2014-07-10 Improved intro text
aefc562 2014-07-10 Fixes
ec91e9f 2014-07-09 Adding in another intro page
f5aa704 2014-07-09 Adding in another intro page
22682d0 2014-07-09 Swap order of intro pages
e7b88ac 2014-07-09 Swap order of intro pages
3165316 2014-07-09 Updated TODO
d195846 2014-07-09 Exclude x86_64 native binaries from scrypt.jar
d4b9bce 2014-07-09 Fix email selection by clicking picture
bd185a7 2014-07-09 ScrollView around intro pages that might overflow text
384244a 2014-07-09 Adapted images from the FSF Email Self-Defense guide for use in intro
511863f 2014-07-08 Updated translations
f1ac04b 2014-07-08 Error message has no info (yet), revert to e.toString()
3ed51d8 2014-07-08 Extracted more strings
91060c8 2014-07-08 Updated translations
374bf5b 2014-07-08 Updated ignores
9c1dc4b 2014-07-08 Clearer launcher icon, new notification icon
951dd20 2014-07-08 Fixed locale hiding in replies
25df0ba 2014-07-08 New translations for es
27fe9f0 2014-07-08 Extracted remaining strings
db21839 2014-07-08 Make Inbox incomplete emails header unselectable
cc428f2 2014-07-07 New translations for de
e100dae 2014-07-07 Updated license info
ab6e783 2014-07-07 Use MultiSelectionUtil from Android Samples for CHOICE_MODE_MULTIPLE_MODAL
d3590be 2014-07-07 Ellipse character
9b6d96e 2014-07-07 Don't connectNow() on RUNNING, too soon to know that I2CP is ready
0641ab7 2014-07-07 Revert to only showing intro/setup on first run
4aaf58f 2014-07-06 Unified layout margins
10f1701 2014-07-06 Stub out UpdateChecker
30306d2 2014-07-06 Bugfixes, run I2PBote.shutDown() in separate thread
8c2f5e9 2014-07-06 Use NetworkStatusListener for nav drawer status info
25fa7e6 2014-07-06 Update service Notification text via NetworkStatusListener
83e1f17 2014-07-06 Persistent notification while Bote is running
65da21a 2014-07-06 Support different I2P Android package names
d2800fc 2014-07-06 Improved support for landscape and small screens in intro and setup
1b3d715 2014-07-06 Support different I2P Android package names
181c080 2014-07-06 Updated TODO
f1f43aa 2014-07-06 Pull out hard-coded strings, inform user if importer found no identities
ba0cb15 2014-07-06 Updated TODO
160fa09 2014-07-06 Easy Share the EmailDestination of identities and contacts
181ba37 2014-07-05 Implement append strategy for duplicates
0c81cc2 2014-07-05 Environment.DIRECTORY_DOCUMENTS is only available in API 19+
d87eb43 2014-07-05 Import identities UI
30a6f59 2014-07-05 Fixed reading contact Destination from text file
226df6d 2014-07-04 Export identities UI
905ac51 2014-07-04 Prepare for export dialogs
d0ac806 2014-07-04 Export identities to Documents folder
5ea895d 2014-07-03 Updated checksum for com.mcxiaoke.viewpagerindicator:library:2.4.1
98f06f5 2014-07-03 Fixed README
9a148dd 2014-07-03 Send identity destinations to other devices via NFC
f700132 2014-07-03 Send address book contacts between devices via NFC
7ad6543 2014-07-03 Updated TODO
ac679d2 2014-07-02 Show number of incomplete emails at top of Inbox
085778c 2014-07-02 Ensure that I2P system vars are set in any Activity that uses I2PBote
8ed6bbd 2014-07-02 Separate message to explain why Bote waits for 3 minutes
b6310ab 2014-07-02 Move app initialization out of EmailListActivity so it can be used elsewhere
5f9879e 2014-07-02 Show contact pictures in recipients dropdown
87df2ff 2014-07-01 Static verification of remote dependencies using Gradle Witness
bb17735 2014-07-01 Updated android gradle plugin version
9b3a30d 2014-06-29 Updated README
1361a4e 2014-06-28 Enable building Bote against I2P source
a32d149 2014-06-28 Signing instructions
b5c5091 2014-06-28 Improved handling of signing keys
a37284d 2014-06-28 Temporary fix for broken developer preview of Support Library
06917a7 2014-06-28 Fixed jar dependency problems, updated ignores
44216d1 2014-06-28 README fixes
3810ba7 2014-06-24 Describe how to pull dependencies via Tor
f6ee4b4 2014-06-23 License info
86b64a7 2014-06-20 Parent activity meta-data for 4.0 and below
e2b4e9f 2014-06-20 0.1.1
0d45721 2014-06-20 Prevent NPE with FragmentManager not being initialized
efcba9e 2014-06-20 Link to EditIdentityActivity on legacy devices
fa71f72 2014-06-19 Incremented version after dev release
b10a075 2014-06-19 Release signing
63e9a4f 2014-06-19 Fixed some warnings
f6a4478 2014-06-19 Setup finished page, moved setup buttons to bottom of screen
0c17c74 2014-06-19 Fixed string
b03c172 2014-06-19 Setup wizard for new users
82bbdea 2014-06-19 Introduction to Bote for new users
32a2426 2014-06-19 Committed missing override files for newer APIs
a7e2649 2014-06-19 Fixed ignores
3b03113 2014-06-19 Added README with build instructions
19cb68b 2014-06-18 Automatic format changed from Android Studio
531bb21 2014-06-16 Fixed B64 encoding of Bitmaps
ea68384 2014-06-16 Adjust email content margins
6c681c8 2014-06-16 Save pictures for identities
ff6e9f5 2014-06-16 Fixed getPictureForAddress()
190bdb4 2014-06-16 Fixed wrong ImageView
4005e3b 2014-06-16 Picture layout fixes
472e622 2014-06-16 Updated to Android Studio 0.6.1
a1af187 2014-06-14 Added default router.config based on I2P Android
d0f34d1 2014-06-14 Removed Eclipse files
9b7ebf7 2014-06-14 Pull to check email
0d6e1bd 2014-06-13 Fixed build process
5008b98 2014-06-13 Gradle build and settings files, updated ignores
55cd3d5 2014-06-13 Reorganized directories
e92bd84 2014-06-13 Added gradle wrapper
3feda9f 2014-06-13 Fixed duplicate string name
fe015f3 2014-06-12 Move "New Identity" action to list item
f5d0467 2014-06-12 Mark email subject input field to prevent newlines
c56fa6f 2014-06-12 Quote subject and content when replying to emails
88663e6 2014-06-12 Pass full email through when replying
a3dc230 2014-06-12 Outbox emails stay marked as unread until sent
65fd515 2014-06-11 Handle new vanity prefix parameter in I2P-Bote
d626081 2014-06-11 Only allow moving emails from trash (for now), never allow move to outbox
e923906 2014-06-11 Moved from and sent lines to bottom
0ca4504 2014-06-11 Show contact picture in notification for single new email
bbae811 2014-06-11 Moved sent date to second line (to not truncate subject line)
e967435 2014-06-11 Updated TODO
c0af7f7 2014-06-11 Connect to network immediately for remote router, or if I2P Android is running
57492ef 2014-06-10 Change in i2p.i2p-bote
2649803 2014-06-09 Use NewEmailListener instead of FolderListener
2be5149 2014-06-08 Fixed use of \Recent flag
2218533 2014-06-08 Use \Recent flag to only notify user about newly received emails
618ee8f 2014-06-08 Updated for new FolderListener API
29fd606 2014-06-06 String clarification
a1a33ab 2014-06-06 Notify on new emails
16ec85d 2014-06-05 Missing file
e5e4601 2014-06-05 Bugfix: redeliver Intent to BoteService if killed and then restarted
a8ebb72 2014-06-04 Updated TODO
0a812b3 2014-06-04 Reply action
f0dfaec 2014-06-04 Fall back to internal router if I2P Android is pre-0.9.13
846c082 2014-06-04 Fixed variable name to match convention
b3a4048 2014-06-04 Truncate subject and from lines to not overlap RHS fields
303ffd4 2014-06-04 Call correct startActivityForResult()
49ee50e 2014-06-04 Updated TODO
ea4a1f5 2014-06-04 I2P Android integration
c0f6985 2014-06-03 Method changes in i2p.i2p-bote
fb7f649 2014-05-29 Refresh options menu when starting or stopping Bote
bab8d85 2014-05-29 Bundle internal router, settings to choose internal or remote
e14ae57 2014-05-25 Fixed parameter substitution in strings
ae6012b 2014-05-23 Show delivery percentage if zero
eaee7a0 2014-05-23 Show sending status in ViewEmailFragment
0fbbc2e 2014-05-23 Show sending status only in outbox; don't allow outbox messages to be moved
b40c8c8 2014-05-23 Use the new flexible email status system
c943b1b 2014-05-22 Updated TODO
71fd82a 2014-05-22 Fixed NPE in settings when rotating device
55c6660 2014-05-22 Option to delete identities
9a9ed7f 2014-05-22 Option to delete contacts
01c4e48 2014-05-22 Missing resources, removed placeholder text
b19054e 2014-05-21 Show entire email if external
7dcaaa3 2014-05-21 TODO bugfix
2af1e90 2014-05-20 Highlight address book and network info links in nav drawer when touched
0c8e963 2014-05-20 Require recipients
33832bb 2014-05-20 Fixed NPE (that should never occur, but there is an input validation bug)
36691ed 2014-05-17 Show any connection error on network info page
b22983d 2014-05-17 Updated TODO
19ce4f0 2014-05-17 Show email status image/text using a single TextView, stop content overlapping
39b00c5 2014-05-17 Improved sent mail detection, show email_status_text when set
e6cbdff 2014-05-17 Show attachments and delivery status in email list
e781361 2014-05-17 Don't open network info page if Bote has not started
0ac85ef 2014-05-17 Update network status whenever drawer state changes, not only on swipes
0cceb57 2014-05-17 Updated TODO
d6b9082 2014-05-17 Updated TODO
a132e7e 2014-05-17 Simple network info page
b648c1e 2014-05-17 Service for starting and stopping Bote
5625bcc 2014-05-17 Network status in nav drawer
9de0a5d 2014-05-16 More TODO items
63e7a74 2014-05-16 Set relevant titles on pages
8264b99 2014-05-16 More TODO items
6f173e6 2014-05-16 Updated TODO
3e4aa63 2014-05-16 Show when an email is selected
0e8dd0b 2014-05-16 Click on email contact pictures to select them
5dd7642 2014-05-16 Mark viewed emails as read ("not new")
39a5453 2014-05-16 Fixed NPE
f500036 2014-05-16 Picture fixes
108096e 2014-05-16 Backend for setting identity and contact pictures
2a4100d 2014-05-15 Moved address book link into nav drawer
84bdafa 2014-05-15 Default image for contacts and identities with no picture
8b09ec1 2014-05-15 Correctly handle empty contact pictures
b2f3a52 2014-05-15 Fixed edit contact button size
4afc5be 2014-05-15 Simplified name
f9c9253 2014-05-15 Fixed string
4ca3c3e 2014-05-15 Integrated address book into new email recipients field
04a3ef4 2014-05-15 Added TokenAutoComplete library
f6637d9 2014-05-15 Contact edit page
4dc7109 2014-05-15 Fixed drawable name
3b627dd 2014-05-15 Helper for encoding picture
0fdb9c1 2014-05-15 Address book list
618e9f2 2014-04-19 i2p.bote -> i2p.bote.android
79026e6 2014-04-17 Implemented send button action with sender as dummy recipient
0bc52f0 2014-04-17 Updated TODO
0dfe114 2014-04-16 Mark emails read/unread, move to folder
77f6f7a 2014-04-16 Changed LogWriter tag
f7d33be 2014-04-15 Email deletion
5970931 2014-04-14 Update folder list text on folder changes
4791ec4 2014-04-14 Include precompiled native scrypt library for ARM5 - big usability speedup
3be9136 2014-04-14 Upgraded to scrypt 1.4.0
5834a72 2014-03-13 Added TODO
cd8d25f 2014-03-13 Tweaked layout
2056bcc 2014-03-13 Added view of identity
fdfccf7 2014-03-12 Disable edit fields when saving
f6b0966 2014-03-09 New identity creation
b213d21 2014-03-09 Fixed NPE
d17eb8c 2014-03-09 Implement required API 19 method override
5b21057 2014-03-08 Set default identity for new email correctly
0fe0d0f 2014-03-08 Set default identity option
88bda7e 2014-03-08 Improved edit identity UI
f8a2283 2014-03-08 Improved set password UI
e89c5ac 2014-03-08 Fixed <intent> bug (targetPackage is package of application, not class)
bc4f821 2014-03-08 Added missing menu
3b0f207 2014-03-08 Added missing icons
9669c2b 2014-03-08 Fixed settings headers after file moves
48bf0c3 2014-03-08 Start of new email activity
c11b492 2014-03-08 Moved config and identities Activities into subpackage
5821ec6 2014-03-08 Added edit page for identities
7143f40 2014-03-06 Show contact picture in email list and view (if available)
48d7d22 2014-03-05 Added list of EmailIdentities to settings
c7e47b0 2014-03-04 Use preference headers in settings (prep for identity support)
fd8354c 2014-03-04 Remove router.jar dependency, stub out Seedless use
4f20784 2014-03-03 Recover current status of password setting on config change
85dab31 2014-03-03 Recover enabled state of submit button after config change
36eb4a7 2014-03-03 Fixed crash if navigated back from SetPasswordActivity
8ac6445 2014-03-03 Make password-setting AsyncTask survive configuration changes (screen rotation)
e6e2e28 2014-03-02 Display password set/change progress
64d6233 2014-03-02 Dismiss keyboard when done
3da9c03 2014-03-02 Use AsyncTask for password checking so UI doesn't hang
f899a3e 2014-03-02 Support for changing passwords
6c03633 2014-03-01 Added password handling and input
6c0abb2 2014-03-01 Remove unneeded GSE catching
883c87f 2014-03-01 Renamed classes
28fdf4a 2014-03-01 Removed debug line
f305df1 2014-03-01 Stubbed out IMAP and SMTP
10b8fec 2014-02-28 Added I2CP host/port settings
087278d 2014-02-28 Added settings
7be8ee0 2014-02-28 Updated ignore
45d1b2b 2014-02-28 Ellipsize content in email list
c0c756e 2014-02-28 Enable ActionBar app icon to behave as action to go back
04f0958 2014-02-28 Fully display emails
b5d32c0 2014-02-28 Populate ViewPager with Loader
0c3257b 2014-02-28 Factored out common Loader methods
b258df8 2014-02-28 Email viewing structure
37abdd1 2014-02-28 Sort emails newest-first
657abd0 2014-02-27 Moved BoteHelper to i2p.bote.util
2508047 2014-02-27 Added missing file
494e771 2014-02-27 Show sent date if set, show new emails with bold subject and from
8c1077d 2014-02-27 JavaMail currently doesn't work on Android, use javamail-android instead
b015aac 2014-02-27 FolderAdapter -> FolderListAdapter, highlight selected folder
d85ae57 2014-02-27 Increase min API to 9
a4fda74 2014-02-27 Fixed duplicate fragment on configuration change
c6fc52f 2014-02-27 Pass exceptions through from BoteHelper (like in GeneralHelper)
108908c 2014-02-27 Speed fix: only show new count when there is data to show
7a772bb 2014-02-27 Fixed dependency issues, only compile Bote once
979c49f 2014-02-27 Fixes
3b8f662 2014-02-26 Start of email item design in list, basic styling
75407d5 2014-02-26 Bugfix (crashed on folder not existing)
882706b 2014-02-26 Extend i2p.bote.util.GeneralHelper
80d49c0 2014-02-26 Bugfix, empty folder text, folder name as title, show new message counts
3b73b49 2014-02-26 Set files directory
b671852 2014-02-26 Fixed initial folder selection
89565df 2014-02-26 Loader for email list
dcfd6e8 2014-02-26 Basic launcher icon for Bote
4cec44f 2014-02-26 Started main interface, nav drawer with list of folders
e88c5c6 2014-02-26 Clarify why classes are deleted from i2p.jar
01c3bd6 2014-02-26 Fixed mistake
d615562 2014-02-26 Copied net.i2p.util.* placeholders from i2p.android.base
86b4875 2014-02-26 Initial commit of Android project structure```

## Files

.mtn-ignore .tx/config CHANGELOG README.md TODO app/build.gradle app/libs/activation.jar app/libs/additionnal.jar app/libs/mail.jar app/libs/tokenautocomplete.jar app/proguard-rules.txt app/src/androidTest/java/i2p/bote/android/EmailListActivityTest.java app/src/androidTest/java/i2p/bote/android/intro/IntroActivityTest.java app/src/androidTest/java/i2p/bote/android/intro/SetupActivityTest.java app/src/androidTest/java/i2p/bote/android/provider/AttachmentProviderTests.java app/src/debug/res/values/strings.xml app/src/main/AndroidManifest.xml app/src/main/java/i2p/bote/android/BoteActivityBase.java app/src/main/java/i2p/bote/android/Constants.java app/src/main/java/i2p/bote/android/EmailListActivity.java app/src/main/java/i2p/bote/android/EmailListAdapter.java app/src/main/java/i2p/bote/android/EmailListFragment.java app/src/main/java/i2p/bote/android/HelpAboutFragment.java app/src/main/java/i2p/bote/android/HelpActivity.java app/src/main/java/i2p/bote/android/HelpHtmlFragment.java app/src/main/java/i2p/bote/android/InitActivities.java app/src/main/java/i2p/bote/android/NetworkInfoActivity.java app/src/main/java/i2p/bote/android/NetworkInfoFragment.java app/src/main/java/i2p/bote/android/NewEmailActivity.java app/src/main/java/i2p/bote/android/NewEmailFragment.java app/src/main/java/i2p/bote/android/ViewEmailActivity.java app/src/main/java/i2p/bote/android/ViewEmailFragment.java app/src/main/java/i2p/bote/android/addressbook/AddressBookActivity.java app/src/main/java/i2p/bote/android/addressbook/AddressBookFragment.java app/src/main/java/i2p/bote/android/addressbook/ContactAdapter.java app/src/main/java/i2p/bote/android/addressbook/EditContactActivity.java app/src/main/java/i2p/bote/android/addressbook/EditContactFragment.java app/src/main/java/i2p/bote/android/addressbook/ViewContactActivity.java app/src/main/java/i2p/bote/android/addressbook/ViewContactFragment.java app/src/main/java/i2p/bote/android/config/AdvancedPreferenceFragment.java app/src/main/java/i2p/bote/android/config/AppProtectionPreferenceFragment.java app/src/main/java/i2p/bote/android/config/AppearancePreferenceFragment.java app/src/main/java/i2p/bote/android/config/NetworkPreferenceFragment.java app/src/main/java/i2p/bote/android/config/PrivacyPreferenceFragment.java app/src/main/java/i2p/bote/android/config/SetPasswordActivity.java app/src/main/java/i2p/bote/android/config/SetPasswordFragment.java app/src/main/java/i2p/bote/android/config/SettingsActivity.java app/src/main/java/i2p/bote/android/identities/EditIdentityActivity.java app/src/main/java/i2p/bote/android/identities/EditIdentityFragment.java app/src/main/java/i2p/bote/android/identities/IdentityAdapter.java app/src/main/java/i2p/bote/android/identities/IdentityListActivity.java app/src/main/java/i2p/bote/android/identities/IdentityListFragment.java app/src/main/java/i2p/bote/android/identities/IdentityShipActivity.java app/src/main/java/i2p/bote/android/identities/IdentityShipFragment.java app/src/main/java/i2p/bote/android/identities/ViewIdentityActivity.java app/src/main/java/i2p/bote/android/identities/ViewIdentityFragment.java app/src/main/java/i2p/bote/android/intro/IntroActivity.java app/src/main/java/i2p/bote/android/intro/SetupActivity.java app/src/main/java/i2p/bote/android/provider/AttachmentProvider.java app/src/main/java/i2p/bote/android/service/BoteService.java app/src/main/java/i2p/bote/android/service/Init.java app/src/main/java/i2p/bote/android/util/AuthenticatedFragment.java app/src/main/java/i2p/bote/android/util/BetterAsyncTaskLoader.java app/src/main/java/i2p/bote/android/util/BoteHelper.java app/src/main/java/i2p/bote/android/util/ContentAttachment.java app/src/main/java/i2p/bote/android/util/EditPictureFragment.java app/src/main/java/i2p/bote/android/util/IconicsPreference.java app/src/main/java/i2p/bote/android/util/LocaleManager.java app/src/main/java/i2p/bote/android/util/MoveToDialogFragment.java app/src/main/java/i2p/bote/android/util/MultiSelectionUtil.java app/src/main/java/i2p/bote/android/util/Person.java app/src/main/java/i2p/bote/android/util/QrCodeUtils.java app/src/main/java/i2p/bote/android/util/RobustAsyncTask.java app/src/main/java/i2p/bote/android/util/TaskFragment.java app/src/main/java/i2p/bote/android/util/ViewAddressFragment.java app/src/main/java/i2p/bote/android/widget/ContactsCompletionView.java app/src/main/java/i2p/bote/android/widget/DividerItemDecoration.java app/src/main/java/i2p/bote/android/widget/IconicsFloatingActionButton.java app/src/main/java/i2p/bote/android/widget/IntEditTextPreference.java app/src/main/java/i2p/bote/android/widget/LoadingRecyclerView.java app/src/main/java/i2p/bote/android/widget/MultiSwipeRefreshLayout.java app/src/main/java/i2p/bote/android/widget/SummaryEditTextPreference.java app/src/main/java/i2p/bote/crypto/ECUtils.java app/src/main/java/i2p/bote/imap/ImapService.java app/src/main/java/i2p/bote/service/seedless/SeedlessInitializer.java app/src/main/java/i2p/bote/smtp/SmtpService.java app/src/main/java/im/delight/android/identicons/Identicon.java app/src/main/java/im/delight/android/identicons/IdenticonBase.java app/src/main/java/org/sufficientlysecure/htmltextview/HtmlTagHandler.java app/src/main/java/org/sufficientlysecure/htmltextview/HtmlTextView.java app/src/main/java/org/sufficientlysecure/htmltextview/JellyBeanSpanFixTextView.java app/src/main/java/org/sufficientlysecure/htmltextview/LocalImageGetter.java app/src/main/java/org/sufficientlysecure/htmltextview/UrlImageGetter.java app/src/main/jniLibs/armeabi-v7a/libscrypt.so app/src/main/jniLibs/armeabi/libscrypt.so app/src/main/jniLibs/mips/libscrypt.so app/src/main/jniLibs/x86/libscrypt.so app/src/main/res/drawable-hdpi/ic_contact_picture.png app/src/main/res/drawable-hdpi/ic_launcher.png app/src/main/res/drawable-hdpi/ic_navigation_accept.png app/src/main/res/drawable-hdpi/ic_notif.png app/src/main/res/drawable-hdpi/ic_scan_qr_code_white_24dp.png app/src/main/res/drawable-hdpi/intro_1.png app/src/main/res/drawable-hdpi/intro_3.png app/src/main/res/drawable-hdpi/intro_4.png app/src/main/res/drawable-mdpi/ic_contact_picture.png app/src/main/res/drawable-mdpi/ic_launcher.png app/src/main/res/drawable-mdpi/ic_navigation_accept.png app/src/main/res/drawable-mdpi/ic_notif.png app/src/main/res/drawable-mdpi/ic_scan_qr_code_white_24dp.png app/src/main/res/drawable-mdpi/intro_1.png app/src/main/res/drawable-mdpi/intro_3.png app/src/main/res/drawable-mdpi/intro_4.png app/src/main/res/drawable-v21/listitem_background.xml app/src/main/res/drawable-v21/listitem_background_selector.xml app/src/main/res/drawable-xhdpi/ic_contact_picture.png app/src/main/res/drawable-xhdpi/ic_launcher.png app/src/main/res/drawable-xhdpi/ic_navigation_accept.png app/src/main/res/drawable-xhdpi/ic_notif.png app/src/main/res/drawable-xhdpi/ic_scan_qr_code_white_24dp.png app/src/main/res/drawable-xhdpi/intro_1.png app/src/main/res/drawable-xhdpi/intro_3.png app/src/main/res/drawable-xhdpi/intro_4.png app/src/main/res/drawable-xxhdpi/ic_scan_qr_code_white_24dp.png app/src/main/res/drawable/attachment_background.xml app/src/main/res/drawable/drawer_header_background.xml app/src/main/res/drawable/fab_label_background.xml app/src/main/res/drawable/listitem_background_selector.xml app/src/main/res/drawable/picture_background.xml app/src/main/res/drawable/token_background.xml app/src/main/res/layout-land/fragment_intro_0.xml app/src/main/res/layout-land/fragment_intro_1.xml app/src/main/res/layout-land/fragment_intro_2.xml app/src/main/res/layout-land/fragment_intro_3.xml app/src/main/res/layout-land/fragment_intro_4.xml app/src/main/res/layout-land/fragment_intro_5.xml app/src/main/res/layout/activity_edit_identity.xml app/src/main/res/layout/activity_help.xml app/src/main/res/layout/activity_identity_ship.xml app/src/main/res/layout/activity_intro.xml app/src/main/res/layout/activity_main.xml app/src/main/res/layout/activity_set_password.xml app/src/main/res/layout/activity_settings.xml app/src/main/res/layout/activity_toolbar.xml app/src/main/res/layout/activity_view_email.xml app/src/main/res/layout/contact_token.xml app/src/main/res/layout/dialog_password.xml app/src/main/res/layout/dialog_status.xml app/src/main/res/layout/fragment_authenticated.xml app/src/main/res/layout/fragment_edit_contact.xml app/src/main/res/layout/fragment_edit_identity.xml app/src/main/res/layout/fragment_export_identities.xml app/src/main/res/layout/fragment_help_about.xml app/src/main/res/layout/fragment_import_identities.xml app/src/main/res/layout/fragment_intro_0.xml app/src/main/res/layout/fragment_intro_1.xml app/src/main/res/layout/fragment_intro_2.xml app/src/main/res/layout/fragment_intro_3.xml app/src/main/res/layout/fragment_intro_4.xml app/src/main/res/layout/fragment_intro_5.xml app/src/main/res/layout/fragment_list_contacts.xml app/src/main/res/layout/fragment_list_emails.xml app/src/main/res/layout/fragment_list_emails_with_refresh.xml app/src/main/res/layout/fragment_list_identities.xml app/src/main/res/layout/fragment_network_error.xml app/src/main/res/layout/fragment_network_info.xml app/src/main/res/layout/fragment_new_email.xml app/src/main/res/layout/fragment_set_password.xml app/src/main/res/layout/fragment_setup_create_identity.xml app/src/main/res/layout/fragment_setup_finished.xml app/src/main/res/layout/fragment_setup_set_password.xml app/src/main/res/layout/fragment_view_address.xml app/src/main/res/layout/fragment_view_email.xml app/src/main/res/layout/listitem_attachment.xml app/src/main/res/layout/listitem_attachment_warning.xml app/src/main/res/layout/listitem_contact.xml app/src/main/res/layout/listitem_email.xml app/src/main/res/layout/listitem_empty.xml app/src/main/res/layout/listitem_folder.xml app/src/main/res/layout/listitem_folder_with_icon.xml app/src/main/res/layout/listitem_identity.xml app/src/main/res/layout/listitem_incomplete.xml app/src/main/res/layout/listitem_text.xml app/src/main/res/menu/address_book_list.xml app/src/main/res/menu/attachment.xml app/src/main/res/menu/authenticated_fragment.xml app/src/main/res/menu/edit_contact.xml app/src/main/res/menu/edit_identity.xml app/src/main/res/menu/email_list.xml app/src/main/res/menu/email_list_context.xml app/src/main/res/menu/main.xml app/src/main/res/menu/new_email.xml app/src/main/res/menu/set_password.xml app/src/main/res/menu/settings.xml app/src/main/res/menu/view_address.xml app/src/main/res/menu/view_email.xml app/src/main/res/raw-de/help_identities.html app/src/main/res/raw-de/help_start.html app/src/main/res/raw-es/help_identities.html app/src/main/res/raw-es/help_start.html app/src/main/res/raw-fi/help_start.html app/src/main/res/raw-fr/help_identities.html app/src/main/res/raw-fr/help_start.html app/src/main/res/raw-in/help_identities.html app/src/main/res/raw-in/help_start.html app/src/main/res/raw-nl/help_identities.html app/src/main/res/raw-nl/help_start.html app/src/main/res/raw-pt/help_start.html app/src/main/res/raw-ru/help_identities.html app/src/main/res/raw-ru/help_start.html app/src/main/res/raw-uk/help_identities.html app/src/main/res/raw-uk/help_start.html app/src/main/res/raw-zh/help_identities.html app/src/main/res/raw-zh/help_start.html app/src/main/res/raw/help_about_libraries.html app/src/main/res/raw/help_changelog.html app/src/main/res/raw/help_identities.html app/src/main/res/raw/help_start.html app/src/main/res/raw/router_config app/src/main/res/values-de/strings.xml app/src/main/res/values-es/strings.xml app/src/main/res/values-fr/strings.xml app/src/main/res/values-in/strings.xml app/src/main/res/values-land/dimens.xml app/src/main/res/values-nb/strings.xml app/src/main/res/values-nl/strings.xml app/src/main/res/values-pl/strings.xml app/src/main/res/values-pt/strings.xml app/src/main/res/values-ro/strings.xml app/src/main/res/values-ru/strings.xml app/src/main/res/values-sq/strings.xml app/src/main/res/values-sw600dp/dimens.xml app/src/main/res/values-sw720dp-land/dimens.xml app/src/main/res/values-v11/dimens.xml app/src/main/res/values-v21/styles.xml app/src/main/res/values-w820dp/dimens.xml app/src/main/res/values-zh/strings.xml app/src/main/res/values/arrays.xml app/src/main/res/values/attrs.xml app/src/main/res/values/colors.xml app/src/main/res/values/dimens.xml app/src/main/res/values/refs.xml app/src/main/res/values/strings.xml app/src/main/res/values/styles.xml app/src/main/res/xml/settings.xml app/src/main/res/xml/settings_advanced.xml app/src/main/res/xml/settings_app_protection.xml app/src/main/res/xml/settings_appearance.xml app/src/main/res/xml/settings_network.xml app/src/main/res/xml/settings_privacy.xml art/bote-feature.svg art/ic_launcher_master.svg art/ic_notif_master.svg art/ic_notif_premaster.svg art/icons/ic_scan_qr_code_24px.svg art/intro_1.svg art/intro_3.svg art/intro_4.svg botejars/build.gradle botejars/build.xml build.gradle gradle/libs/gradle-witness.jar gradle/signing.gradle gradle/wrapper/gradle-wrapper.jar gradle/wrapper/gradle-wrapper.properties gradlew gradlew.bat license.txt licenses/GPLv3.txt licenses/LICENSE-Apache2.0.txt settings.gradle


## Branches

## Tags

## Remotes

origin https://github.com/i2p/i2p.i2p-bote.android (fetch) origin https://github.com/i2p/i2p.i2p-bote.android (push) ```