Commit Graph

128 Commits (bbd7b61d44efddf2b3015a80e98a869ecd67b209)

Author SHA1 Message Date
Denton Gentry bbd7b61d44 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 79bb2f33d0 ui: more robust isConnected check.
1. Follow
   https://developer.android.com/training/monitoring-device-state/connectivity-status-type
   to determine whether to report ourself as having connectivity or not.

   Tested by turning the Wifi & LTE off and on, seems to work well in
   the contrived test case.

2. Call superclass for onLost() and onLinkPropertiesChanged() handlers.
   Current Android versions have no code in the superclass of these two
   callbacks, but future proofiness.

3. Log when the UI report of LostInternet changes, so we can find it.

Fixes https://github.com/tailscale/tailscale/issues/3542

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 0265dcfd1b android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 184250167b
Merge branch 'main' into dns 3 years ago
Denton Gentry f2a104fc5f android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry ca696b116c Update opensource repository 3 years ago
Denton Gentry 5c9cec0064 retrieve current DNS servers.
Add getDnsConfigAsString() to retrieve the current DNS
configuration from the Android platform. This implements
several mechanisms to retrieve DNS information, suitable
for different Android versions:

Android 7 and later use ConnectivityManager getAllNetworks(),
then iterate over each network to retrieve DNS servers and
search domains using the LinkProperties.

Android 6 and earlier can only retrieve the currently active
interface using ConnectivityManager getActiveNetwork(), but have
two additional fallback options which leverage the system
properties available in older Android releases.

--------

Also changed how LinkChange notification works, switching from
the older BroadcastReceiver of a ConnectivityManager Intent to
the newer ConnectivityManager.registerNetworkCallback. We need
this because the onAvailable event is too early, we get notified
that LTE is up before its DNS servers have been set. We need
to wait for the onLinkPropertiesChanged event instead, which is
only available with registerNetworkCallback.

Fixes https://github.com/tailscale/tailscale/issues/2116
Updates https://github.com/tailscale/tailscale/issues/988

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 5c93a7a829 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry a045ba5ab1 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry c98d4dd89c android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 0ecb2a2587 Increment build number.
1.16.2 on release-branch/1.16 is build 74.

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry fe76bef85b android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 61f90a1975 Increment build number.
Build 72 was 1.16.1, built on release-branch/1.16

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry a4a3ae6eff android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 0a13b89ce0 go.mod: update from HEAD.
Also increment build number to skip over the 1.16.0 release build.
3 years ago
Denton Gentry 02a6ae0e0d cmd/tailscale: implement getInterfaces + SDK 30
SDK 30 prohibits syscall.NetlinkRIB(syscall.RTM_GETADDR, ...)
which Go's net.Interfaces uses. Implement an Android
specific version of net.Interfaces to use instead.

Passing primitive types across JNI is relatively straightforward,
passing a single object of a complex class is annoying but still
possible, but passing lists and other more complex data structures is
way harder. As such, this commit added a Java routine to render the
interface information to a string and pass that across JNI as a
primitive type for Go code to parse.

Fixes https://github.com/tailscale/tailscale/issues/2293
3 years ago
Denton Gentry 6518535039 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 54d511a9b6 Increment build number.
build 68 is 1.14.6 on release-branch/1.14.

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry ef96ee30fd android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry e2128ef6d6 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Elias Naur 84b484a954 android,cmd/tailscale: implement taildrop receive for Android < 10
Fixes tailscale/tailscale#2720
Fixes tailscale/tailscale#2296

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur f37cf72d81 android/ipn: ignore shared files we have no access to
I'm not able to reproduce the crash described in #2720; sharing files
from an SD-card through taildrop works for me (ChromeOS 93.0) without
issues. However, this change makes sure that we don't crash should we
lack permission for some reason.

Updates tailscale/tailscale#2720

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 078356613f android: fix persistent notification intent target
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Denton Gentry d3edb004e3 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry f33b98b313 Skip version used for 1.14.0 take 2.
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 742da3ae36 Skip version used for 1.14.0.
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 5c524d2768 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry ae2df12032 Update from Tailscale OSS.
Skip release 61.

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 9283506c04 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 76df742662 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry a68462ec65 Update for unstable build.
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 3575ef712a android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 82b6b8dbd3 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 7f086ccaa6 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry ade708af7f Update for 1.13.x unstable builds. 3 years ago
Denton Gentry ea1bb12e9b android: bump version code
Fix F-Droid build.

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 00e45e3795 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 0df2377630 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 3cb36c4599 android: bump version code
Unstable build 1.11.109.

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 4d32c6da4f android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 1c78887bf5 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 90909797a0 android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Denton Gentry 2a6cd09d7c android: bump version code
Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Elias Naur 14cdec17f1 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 242c936b2c android: lower target SDK to 29
Target 30 results in an error on load, most likely because netlink
is no longer accessible for apps.

runBackend: NewUserspaceEngineAdvanced: route ip+net: netlinkrib: permission denied

Fixes tailscale/tailscale#2290

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 639aebac6a android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur 10ded1bad2 cmd/tailscale,java: implement file sharing
Fixes tailscale/tailscale#1809

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Elias Naur e007a9c153 android: bump target/compile SDK version to 30
Gio uses SDK 30 API now.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago
Denton Gentry 594ed6b7bc android: bump version code
On 6/24 I built a v43 and started to release it to production,
then decided to do an Internal release first. The Play Store
would not allow v43 to be used again so I built v44, released
it to Internal, and after testing promoted it to Production and
it went into Google's review process.

Crucially, I did not push the tags before going to bed.

On 6/25, not knowing any of this because I hadn't pushed the tags,
Elias built v43 and released it. The Play Store had apparently cleaned
up the state from my abandoned v43 by that point.

This commit increments the build number to v44 so we don't re-use it.
I'm not building an actual release, just incrementing the build
number and pointing to the same git commit. I'm hoping F-Droid will
therefore build exactly the same thing as it did for v43.

I promise to push the tags before going to bed next time.

Signed-off-by: Denton Gentry <dgentry@tailscale.com>
3 years ago
Elias Naur e8f2409cb3 android: bump version code
Signed-off-by: Elias Naur <mail@eliasnaur.com>
3 years ago