Compare commits
48 Commits
android-1.
...
android-2.
Author | SHA1 | Date | |
---|---|---|---|
3ab2c83b7b | |||
cb46abca82 | |||
63b345e329 | |||
794b8433d8 | |||
a7891a3674 | |||
7076785ec1 | |||
f8eda45409 | |||
8d0f1689c1 | |||
25ef37cddf | |||
c5936858a2 | |||
17d2e2fc93 | |||
a0e41e5171 | |||
2d1244f339 | |||
9eec1d3348 | |||
5824fd4efa | |||
9c87bfcb51 | |||
0c380f2ef5 | |||
dafe3d0002 | |||
255ac60691 | |||
23f681dd7d | |||
d6a55a122a | |||
454937d345 | |||
ec8cf76fc4 | |||
6788f9a663 | |||
dc96c6251f | |||
c2bced68bb | |||
e21b4e5cbd | |||
1f434d8a05 | |||
cd12d84d47 | |||
82b92caa55 | |||
49e4fcc49c | |||
a9abe05325 | |||
ea6705374f | |||
3e28f2bf93 | |||
4c881525f9 | |||
9280c80a53 | |||
e465a6d232 | |||
d7f79e7b0b | |||
68f44b8ec1 | |||
0835a42fbd | |||
78e649dc9b | |||
84e73a693c | |||
c0ad7dfc09 | |||
dec68432bc | |||
f93fc155ef | |||
e348af340a | |||
aa3631ed33 | |||
008e9b7961 |
8
.gitignore
vendored
8
.gitignore
vendored
@ -1,2 +1,8 @@
|
||||
etc/docker.signing.properties
|
||||
signing.properties
|
||||
signing.properties
|
||||
.idea
|
||||
.idea/
|
||||
.gradle/
|
||||
local.properties
|
||||
override.properties
|
||||
build
|
51
CHANGELOG
51
CHANGELOG
@ -1,3 +1,54 @@
|
||||
2.0.1
|
||||
* Fixes gitlab#49 by applying MUTABLE or IMMUTABLE flags across all PendingIntents
|
||||
|
||||
2.0.0
|
||||
* Updates router to version 2.0.0
|
||||
* Updates gradle plugin
|
||||
* Remove Firefox from supported browsers list due to lack of about:config support
|
||||
* Add Privacy Browser to supported browsers list and write guide for it
|
||||
|
||||
1.9.1
|
||||
* Switches back to mavenCentral builds
|
||||
* Fixes build process for F-Droid main
|
||||
* Using tag i2p.i2p:i2p-android-1.9.0
|
||||
* Allow b32 and blinded b32 to validate in I2PTunnel UI
|
||||
|
||||
1.9.0
|
||||
* Updates router to version 1.9.0
|
||||
* Using tag i2p.i2p:i2p-android-1.9.0
|
||||
|
||||
1.8.2
|
||||
* This update fixes a bug where Family Keys are incorrectly handled by the Android router, leading
|
||||
to a crash.
|
||||
* This update fixes a bug wherein incorrect type-checking caused a crash when using the Network
|
||||
Config page for some users.
|
||||
|
||||
1.8.1
|
||||
* This update fixes a bug where certificates were unpacked to the wrong location on new installs,
|
||||
resulting in the router failing to start.
|
||||
* Decouples the Android version from the I2P library version to allow for android point
|
||||
releases with less pain.
|
||||
|
||||
1.8.0
|
||||
* This release updates the underlying I2P libraries to I2P version 1.8.0
|
||||
* The SAM API now operates in "Interactive Authentication" mode. Users will be prompted via
|
||||
the notificationArea to approve or ignore new SAM connections initiated by external apps.
|
||||
* The network config menu now features a drop-down configuration instead of a slider configuration
|
||||
(since reversed)
|
||||
|
||||
1.7.1
|
||||
* This release updates the underlying I2P libraries to I2P version 1.7.1
|
||||
|
||||
1.7.0
|
||||
* This release updates the underlying I2P libraries to I2P version 1.7.0
|
||||
* Refactor of the unzipResourceToDir function
|
||||
|
||||
1.6.0
|
||||
* This release updates the underlying I2P libraries to I2P version 1.6.0
|
||||
|
||||
1.5.0
|
||||
* This release updates the underlying I2P libraries to I2P version 1.5.0
|
||||
|
||||
0.9.50 2021-05-18
|
||||
* This release updates the underlying I2P libraries to I2P version 0.9.50
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
FROM menny/android_ndk
|
||||
ENV VERSION=0.9.50
|
||||
ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
|
||||
RUN echo 'deb https://deb.i2p2.de/ sid main' >> /etc/apt/sources.list
|
||||
RUN echo 'deb-src https://deb.i2p2.de/ sid main' >> /etc/apt/sources.list
|
||||
RUN echo 'deb http://deb.i2p2.de/ sid main' >> /etc/apt/sources.list
|
||||
RUN echo 'deb-src http://deb.i2p2.de/ sid main' >> /etc/apt/sources.list
|
||||
RUN echo 'deb http://archive.ubuntu.com/ubuntu trusty universe' >> /etc/apt/sources.list
|
||||
RUN wget -O /etc/apt/trusted.gpg.d/i2p-debian-repo.key.asc https://geti2p.net/_static/i2p-debian-repo.key.asc
|
||||
COPY etc/debian-jessie-repo.key.asc /etc/apt/trusted.gpg.d
|
||||
@ -11,7 +11,7 @@ RUN apt-get update
|
||||
RUN apt-get build-dep -y i2p i2p-router
|
||||
RUN apt-get install -y ant openjdk-8* libxml2-utils junit4 libhamcrest-java libmockito-java libmaven-ant-tasks-java dpkg-sig maven
|
||||
RUN cd /opt/packages && dpkg-sig -l openjdk-7-jre-headless.deb && dpkg -x openjdk-7-jre-headless.deb /opt/packages/openjdk-7-jre
|
||||
RUN git clone https://i2pgit.org/i2p-hackers/i2p.i2p --depth=1 -b i2p-$VERSION /opt/workspace/i2p.i2p
|
||||
RUN git clone https://github.com/i2p/i2p.i2p --depth=1 -b i2p-$VERSION /opt/workspace/i2p.i2p
|
||||
RUN update-java-alternatives --jre-headless --set java-1.8.0-openjdk-amd64
|
||||
RUN update-java-alternatives --set java-1.8.0-openjdk-amd64
|
||||
RUN update-alternatives --set javac /usr/lib/jvm/java-8-openjdk-amd64/bin/javac
|
||||
@ -36,4 +36,4 @@ CMD cd /opt/workspace/i2p.i2p && \
|
||||
cp -v *.jar pkg-mavencentral/; \
|
||||
cd /opt/workspace/i2p.android.base && \
|
||||
./gradlew --continue dependencies || true ; \
|
||||
./gradlew --continue assembleRelease
|
||||
./gradlew --continue assembleRelease; tail -f README.md
|
||||
|
@ -18,6 +18,7 @@ the override.properties that is used in the Docker container.
|
||||
|
||||
## Prerequirements
|
||||
|
||||
0. Update the changelog!
|
||||
1. Ensure you have the deprecated maven ant tasks. ( https://maven.apache.org/ant-tasks/download.cgi )
|
||||
2. It should exist at `~/.ant/lib/maven-ant-tasks-2.1.3.jar`
|
||||
3. Ensure you have hamcrest-integration, hamcrest-library, hamcrest-core in the hamcrest.home directory.
|
||||
|
@ -5,11 +5,11 @@ repositories {
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdkVersion 28
|
||||
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION as String)
|
||||
defaultConfig {
|
||||
versionCode 4745263
|
||||
versionName "$I2P_VERSION"
|
||||
minSdkVersion 14
|
||||
versionCode 4745273
|
||||
versionName "$I2P_ANDROID_VERSION"
|
||||
minSdkVersion 21
|
||||
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION as String)
|
||||
|
||||
// For Espresso
|
||||
@ -31,15 +31,18 @@ android {
|
||||
}
|
||||
}
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_7
|
||||
targetCompatibility JavaVersion.VERSION_1_7
|
||||
coreLibraryDesugaringEnabled true
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
lintOptions {
|
||||
abortOnError false
|
||||
disable 'MissingDefaultResource'
|
||||
}
|
||||
packagingOptions {
|
||||
exclude 'LICENSE.txt'
|
||||
resources {
|
||||
excludes += ['LICENSE.txt']
|
||||
}
|
||||
}
|
||||
flavorDimensions 'tier'
|
||||
productFlavors {
|
||||
@ -56,7 +59,6 @@ android {
|
||||
applicationId 'net.i2p.android.router'
|
||||
}
|
||||
}
|
||||
buildToolsVersion '28.0.3'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
@ -88,6 +90,10 @@ dependencies {
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
|
||||
}
|
||||
|
||||
project.ext.i2pbase = "../i2p.i2p"
|
||||
def Properties props = new Properties()
|
||||
def propFile = new File(project(':routerjars').projectDir, 'local.properties')
|
||||
|
@ -27,6 +27,8 @@
|
||||
<service
|
||||
android:name=".service.RouterService"
|
||||
android:icon="@drawable/ic_launcher_itoopie"
|
||||
android:enabled="true"
|
||||
android:exported="true"
|
||||
android:label="@string/app_name">
|
||||
<intent-filter>
|
||||
<action android:name="net.i2p.android.router.service.IRouterState" />
|
||||
@ -35,7 +37,9 @@
|
||||
<provider
|
||||
android:name=".provider.CacheProvider"
|
||||
android:authorities="${applicationId}.provider" />
|
||||
<receiver android:name=".receiver.OnBootReceiver">
|
||||
<receiver
|
||||
android:name=".receiver.OnBootReceiver"
|
||||
android:exported="false">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.BOOT_COMPLETED" />
|
||||
</intent-filter>
|
||||
@ -45,7 +49,8 @@
|
||||
android:name="net.i2p.android.I2PActivity"
|
||||
android:icon="@drawable/ic_launcher_itoopie"
|
||||
android:label="@string/app_name"
|
||||
android:launchMode="singleTop">
|
||||
android:launchMode="singleTop"
|
||||
android:exported="true">
|
||||
<!-- Console filters -->
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
@ -55,6 +60,10 @@
|
||||
<action android:name="net.i2p.android.router.START_I2P" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
</intent-filter>
|
||||
<intent-filter>
|
||||
<action android:name="net.i2p.android.router.service.APPROVE_SAM" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
</intent-filter>
|
||||
|
||||
<!-- Addressbook filters -->
|
||||
<intent-filter>
|
||||
@ -105,6 +114,7 @@
|
||||
<activity
|
||||
android:name=".web.WebActivity"
|
||||
android:configChanges="orientation|keyboardHidden"
|
||||
android:exported="true"
|
||||
android:label="I2P Web Browser">
|
||||
<!-- Disabled, this browser is not very secure
|
||||
Temporarily enabled until an alternative browser is ready -->
|
||||
|
@ -19,6 +19,7 @@ import net.i2p.android.router.MainFragment;
|
||||
import net.i2p.android.router.R;
|
||||
import net.i2p.android.router.SettingsActivity;
|
||||
import net.i2p.android.router.addressbook.AddressbookContainer;
|
||||
import net.i2p.android.router.service.AndroidSAMSecureSession;
|
||||
import net.i2p.android.router.service.RouterService;
|
||||
import net.i2p.android.router.service.State;
|
||||
import net.i2p.android.router.util.Connectivity;
|
||||
@ -134,6 +135,7 @@ public class I2PActivity extends I2PActivityBase implements
|
||||
@Override
|
||||
protected void onNewIntent(Intent intent) {
|
||||
super.onNewIntent(intent);
|
||||
setIntent(intent);
|
||||
handleIntents();
|
||||
}
|
||||
|
||||
@ -143,17 +145,29 @@ public class I2PActivity extends I2PActivityBase implements
|
||||
|
||||
Intent intent = getIntent();
|
||||
String action = intent.getAction();
|
||||
Util.d("handleIntent: intent=" + intent.toString());
|
||||
|
||||
if (action == null)
|
||||
return;
|
||||
|
||||
Util.d("handleIntent: action=" + action);
|
||||
|
||||
Bundle extra = intent.getExtras();
|
||||
if (extra != null)
|
||||
Util.d("handleIntent extra=" + extra.toString());
|
||||
|
||||
switch (action) {
|
||||
case "net.i2p.android.router.START_I2P":
|
||||
if (mViewPager.getCurrentItem() != 0)
|
||||
mViewPager.setCurrentItem(0, false);
|
||||
autoStart();
|
||||
break;
|
||||
|
||||
case "net.i2p.android.router.service.APPROVE_SAM":
|
||||
Util.w("Affirmed SAM Connection");
|
||||
String ID = extra.getString("ID");
|
||||
Util.d("SAM ID was: " + ID);
|
||||
AndroidSAMSecureSession.affirmResult(ID);
|
||||
break;
|
||||
case Intent.ACTION_PICK:
|
||||
mViewPager.setFixedPage(2, R.string.select_an_address);
|
||||
break;
|
||||
|
@ -35,6 +35,7 @@ class InitActivities {
|
||||
public InitActivities(Context c) {
|
||||
ctx = c;
|
||||
myDir = Util.getFileDir(c);
|
||||
Util.i("My app directory is "+myDir);
|
||||
_ourVersion = Util.getOurVersion(c);
|
||||
}
|
||||
|
||||
@ -59,90 +60,89 @@ class InitActivities {
|
||||
}
|
||||
|
||||
void initialize() {
|
||||
Util.i("Initializing the I2P resources");
|
||||
|
||||
if (checkNewVersion()) {
|
||||
List<Properties> lProps = Util.getPropertiesFromPreferences(ctx);
|
||||
Properties props = lProps.get(0);
|
||||
List<Properties> lProps = Util.getPropertiesFromPreferences(ctx);
|
||||
Properties props = lProps.get(0);
|
||||
|
||||
props.setProperty("i2p.dir.temp", myDir + "/tmp");
|
||||
props.setProperty("i2p.dir.pid", myDir + "/tmp");
|
||||
// Time disabled in default router.config
|
||||
// But lots of time problems on Android, not all carriers support NITZ
|
||||
// and there was no NTP before 3.0. Tablets should be fine?
|
||||
// Phones in airplane mode with wifi enabled still a problem.
|
||||
// Deactivated phones in airplane mode definitely won't have correct time.
|
||||
if (Build.VERSION.SDK_INT < 11) // Honeycomb 3.0
|
||||
props.setProperty("time.disabled", "false");
|
||||
mergeResourceToFile(R.raw.router_config, "router.config", props);
|
||||
mergeResourceToFile(R.raw.logger_config, "logger.config", lProps.get(1));
|
||||
// This is not needed for now, i2ptunnel.config only contains tunnel
|
||||
// settings, which can now be configured manually. We don't want to
|
||||
// overwrite the user's tunnels.
|
||||
//mergeResourceToFile(R.raw.i2ptunnel_config, "i2ptunnel.config", null);
|
||||
copyResourceToFileIfAbsent(R.raw.i2ptunnel_config, "i2ptunnel.config");
|
||||
// FIXME this is a memory hog to merge this way
|
||||
mergeResourceToFile(R.raw.hosts_txt, "hosts.txt", null);
|
||||
mergeResourceToFile(R.raw.more_hosts_txt, "hosts.txt", null);
|
||||
copyResourceToFile(R.raw.blocklist_txt, "blocklist.txt");
|
||||
props.setProperty("i2p.dir.temp", myDir + "/tmp");
|
||||
props.setProperty("i2p.dir.pid", myDir + "/tmp");
|
||||
// Time disabled in default router.config
|
||||
// But lots of time problems on Android, not all carriers support NITZ
|
||||
// and there was no NTP before 3.0. Tablets should be fine?
|
||||
// Phones in airplane mode with wifi enabled still a problem.
|
||||
// Deactivated phones in airplane mode definitely won't have correct time.
|
||||
if (Build.VERSION.SDK_INT < 11) // Honeycomb 3.0
|
||||
props.setProperty("time.disabled", "false");
|
||||
mergeResourceToFile(R.raw.router_config, "router.config", props);
|
||||
mergeResourceToFile(R.raw.logger_config, "logger.config", lProps.get(1));
|
||||
// This is not needed for now, i2ptunnel.config only contains tunnel
|
||||
// settings, which can now be configured manually. We don't want to
|
||||
// overwrite the user's tunnels.
|
||||
//mergeResourceToFile(R.raw.i2ptunnel_config, "i2ptunnel.config", null);
|
||||
copyResourceToFileIfAbsent(R.raw.i2ptunnel_config, "i2ptunnel.config");
|
||||
// FIXME this is a memory hog to merge this way
|
||||
mergeResourceToFile(R.raw.hosts_txt, "hosts.txt", null);
|
||||
mergeResourceToFile(R.raw.more_hosts_txt, "hosts.txt", null);
|
||||
copyResourceToFile(R.raw.blocklist_txt, "blocklist.txt");
|
||||
|
||||
File abDir = new File(myDir, "addressbook");
|
||||
abDir.mkdir();
|
||||
copyResourceToFile(R.raw.subscriptions_txt, "addressbook/subscriptions.txt");
|
||||
mergeResourceToFile(R.raw.addressbook_config_txt, "addressbook/config.txt", null);
|
||||
File abDir = new File(myDir, "addressbook");
|
||||
abDir.mkdir();
|
||||
copyResourceToFile(R.raw.subscriptions_txt, "addressbook/subscriptions.txt");
|
||||
mergeResourceToFile(R.raw.addressbook_config_txt, "addressbook/config.txt", null);
|
||||
|
||||
File docsDir = new File(myDir, "docs");
|
||||
docsDir.mkdir();
|
||||
/*copyResourceToFile(R.raw.ahelper_conflict_header_ht, "docs/ahelper-conflict-header.ht");
|
||||
copyResourceToFile(R.raw.ahelper_new_header_ht, "docs/ahelper-new-header.ht");
|
||||
copyResourceToFile(R.raw.ahelper_notfound_header_ht, "docs/ahelper-notfound-header.ht");
|
||||
copyResourceToFile(R.raw.auth_header_ht, "docs/auth-header.ht");
|
||||
copyResourceToFile(R.raw.baduri_header_ht, "docs/baduri-header.ht");
|
||||
copyResourceToFile(R.raw.denied_header_ht, "docs/denied-header.ht");
|
||||
copyResourceToFile(R.raw.dnf_header_ht, "docs/dnf-header.ht");
|
||||
copyResourceToFile(R.raw.dnfb_header_ht, "docs/dnfb-header.ht");
|
||||
copyResourceToFile(R.raw.dnfh_header_ht, "docs/dnfh-header.ht");
|
||||
copyResourceToFile(R.raw.dnfp_header_ht, "docs/dnfp-header.ht");
|
||||
copyResourceToFile(R.raw.enc_header_ht, "docs/enc-header.ht");
|
||||
copyResourceToFile(R.raw.encp_header_ht, "docs/encp-header.ht");
|
||||
copyResourceToFile(R.raw.localhost_header_ht, "docs/localhost-header.ht");
|
||||
copyResourceToFile(R.raw.nols_header_ht, "docs/nols-header.ht");
|
||||
copyResourceToFile(R.raw.nolsp_header_ht, "docs/nolsp-header.ht");
|
||||
copyResourceToFile(R.raw.noproxy_header_ht, "docs/noproxy-header.ht");
|
||||
copyResourceToFile(R.raw.protocol_header_ht, "docs/protocol-header.ht");
|
||||
copyResourceToFile(R.raw.reset_header_ht, "docs/reset-header.ht");
|
||||
copyResourceToFile(R.raw.resetp_header_ht, "docs/resetp-header.ht");*/
|
||||
File docsDir = new File(myDir, "docs");
|
||||
docsDir.mkdir();
|
||||
/*copyResourceToFile(R.raw.ahelper_conflict_header_ht, "docs/ahelper-conflict-header.ht");
|
||||
copyResourceToFile(R.raw.ahelper_new_header_ht, "docs/ahelper-new-header.ht");
|
||||
copyResourceToFile(R.raw.ahelper_notfound_header_ht, "docs/ahelper-notfound-header.ht");
|
||||
copyResourceToFile(R.raw.auth_header_ht, "docs/auth-header.ht");
|
||||
copyResourceToFile(R.raw.baduri_header_ht, "docs/baduri-header.ht");
|
||||
copyResourceToFile(R.raw.denied_header_ht, "docs/denied-header.ht");
|
||||
copyResourceToFile(R.raw.dnf_header_ht, "docs/dnf-header.ht");
|
||||
copyResourceToFile(R.raw.dnfb_header_ht, "docs/dnfb-header.ht");
|
||||
copyResourceToFile(R.raw.dnfh_header_ht, "docs/dnfh-header.ht");
|
||||
copyResourceToFile(R.raw.dnfp_header_ht, "docs/dnfp-header.ht");
|
||||
copyResourceToFile(R.raw.enc_header_ht, "docs/enc-header.ht");
|
||||
copyResourceToFile(R.raw.encp_header_ht, "docs/encp-header.ht");
|
||||
copyResourceToFile(R.raw.localhost_header_ht, "docs/localhost-header.ht");
|
||||
copyResourceToFile(R.raw.nols_header_ht, "docs/nols-header.ht");
|
||||
copyResourceToFile(R.raw.nolsp_header_ht, "docs/nolsp-header.ht");
|
||||
copyResourceToFile(R.raw.noproxy_header_ht, "docs/noproxy-header.ht");
|
||||
copyResourceToFile(R.raw.protocol_header_ht, "docs/protocol-header.ht");
|
||||
copyResourceToFile(R.raw.reset_header_ht, "docs/reset-header.ht");
|
||||
copyResourceToFile(R.raw.resetp_header_ht, "docs/resetp-header.ht");*/
|
||||
|
||||
File cssDir = new File(docsDir, "themes/console/light");
|
||||
cssDir.mkdirs();
|
||||
//copyResourceToFile(R.raw.console_css, "docs/themes/console/light/console.css");
|
||||
//copyResourceToFile(R.raw.android_css, "docs/themes/console/light/android.css");
|
||||
File cssDir = new File(docsDir, "themes/console/light");
|
||||
cssDir.mkdirs();
|
||||
//copyResourceToFile(R.raw.console_css, "docs/themes/console/light/console.css");
|
||||
//copyResourceToFile(R.raw.android_css, "docs/themes/console/light/android.css");
|
||||
|
||||
File imgDir = new File(docsDir, "themes/console/images");
|
||||
imgDir.mkdir();
|
||||
copyResourceToFile(R.drawable.i2plogo, "docs/themes/console/images/i2plogo.png");
|
||||
copyResourceToFile(R.drawable.itoopie_sm, "docs/themes/console/images/itoopie_sm.png");
|
||||
//copyResourceToFile(R.drawable.outbound, "docs/themes/console/images/outbound.png");
|
||||
//copyResourceToFile(R.drawable.inbound, "docs/themes/console/images/inbound.png");
|
||||
File imgDir = new File(docsDir, "themes/console/images");
|
||||
imgDir.mkdir();
|
||||
copyResourceToFile(R.drawable.i2plogo, "docs/themes/console/images/i2plogo.png");
|
||||
copyResourceToFile(R.drawable.itoopie_sm, "docs/themes/console/images/itoopie_sm.png");
|
||||
//copyResourceToFile(R.drawable.outbound, "docs/themes/console/images/outbound.png");
|
||||
//copyResourceToFile(R.drawable.inbound, "docs/themes/console/images/inbound.png");
|
||||
|
||||
File img2Dir = new File(cssDir, "images");
|
||||
img2Dir.mkdir();
|
||||
//copyResourceToFile(R.drawable.header, "docs/themes/console/light/images/header.png");
|
||||
File img2Dir = new File(cssDir, "images");
|
||||
img2Dir.mkdir();
|
||||
//copyResourceToFile(R.drawable.header, "docs/themes/console/light/images/header.png");
|
||||
|
||||
File certDir = new File(myDir, "certificates");
|
||||
certDir.mkdir();
|
||||
File certificates = new File(myDir, "certificates");
|
||||
File[] allcertificates = certificates.listFiles();
|
||||
if ( allcertificates != null) {
|
||||
for (File f : allcertificates) {
|
||||
Util.d("Deleting old certificate file/dir " + f);
|
||||
FileUtil.rmdir(f, false);
|
||||
}
|
||||
File certDir = new File(myDir, "certificates");
|
||||
certDir.mkdir();
|
||||
File certificates = new File(myDir, "certificates");
|
||||
File[] allCertificates = certificates.listFiles();
|
||||
if ( allCertificates != null) {
|
||||
for (File f : allCertificates) {
|
||||
Util.d("Deleting old certificate file/dir " + f);
|
||||
FileUtil.rmdir(f, false);
|
||||
}
|
||||
unzipResourceToDir(R.raw.certificates_zip, "certificates");
|
||||
//File netDBDir = new File(myDir, "netDB");
|
||||
//netDBDir.mkdir();
|
||||
//unzipResourceToDir(R.raw.netdb_zip, "netDB");
|
||||
}
|
||||
File netDBDir = new File(myDir, "netDB");
|
||||
netDBDir.mkdir();
|
||||
//unzipResourceToDir(R.raw.netdb_zip, "netDB");
|
||||
unzipResourceToDir(R.raw.certificates_zip, "certificates");
|
||||
|
||||
// Set up the locations so settings can find them
|
||||
System.setProperty("i2p.dir.base", myDir);
|
||||
@ -178,10 +178,16 @@ class InitActivities {
|
||||
out.write(buf, 0, read);
|
||||
|
||||
} catch (IOException ioe) {
|
||||
Util.e("copyResourceToFile" + "IOE: ", ioe);
|
||||
} catch (Resources.NotFoundException nfe) {
|
||||
Util.e("copyResourceToFile" + "NFE: ", nfe);
|
||||
} finally {
|
||||
if (in != null) try { in.close(); } catch (IOException ioe) {}
|
||||
if (out != null) try { out.close(); } catch (IOException ioe) {}
|
||||
if (in != null) try { in.close(); } catch (IOException ioe) {
|
||||
Util.e("copyResourceToFile" + "IOE in.close(): ", ioe);
|
||||
}
|
||||
if (out != null) try { out.close(); } catch (IOException ioe) {
|
||||
Util.e("copyResourceToFile" + "IOE out.close(): ", ioe);
|
||||
}
|
||||
}
|
||||
}
|
||||
/**
|
||||
@ -192,7 +198,7 @@ class InitActivities {
|
||||
FileOutputStream out = null;
|
||||
ZipInputStream zis = null;
|
||||
|
||||
Util.d("Creating files in '" + myDir + "/" + folder + "/' from resource");
|
||||
Util.i("Creating files in '" + myDir + "/" + folder + "/' from resource");
|
||||
try {
|
||||
// Context methods
|
||||
in = ctx.getResources().openRawResource(resID);
|
||||
@ -200,6 +206,7 @@ class InitActivities {
|
||||
ZipEntry ze;
|
||||
while ((ze = zis.getNextEntry()) != null) {
|
||||
out = null;
|
||||
Util.i("unzipping "+ze);
|
||||
try {
|
||||
ByteArrayOutputStream baos = new ByteArrayOutputStream();
|
||||
byte[] buffer = new byte[1024];
|
||||
@ -209,26 +216,51 @@ class InitActivities {
|
||||
}
|
||||
String name = ze.getName();
|
||||
File f = new File(myDir + "/" + folder +"/" + name);
|
||||
if (ze.isDirectory()) {
|
||||
Util.d("Creating directory " + myDir + "/" + folder +"/" + name + " from resource");
|
||||
String canonicalPath = f.getCanonicalPath().replace("/user/0/", "/data/");
|
||||
// account for canonical path differences when using .aab bundles
|
||||
if (!canonicalPath.startsWith(myDir.replace("/user/0/", "/data/"))) {
|
||||
// If these don't match, there's a path-traversal possibility.
|
||||
// So ignore it.
|
||||
Util.e("Path mismatch bug " + canonicalPath.toString() + " " + myDir.toString());
|
||||
} else if (ze.isDirectory()) {
|
||||
Util.i("Creating directory " + myDir + "/" + folder +"/" + name + " from resource");
|
||||
f.mkdir();
|
||||
} else {
|
||||
Util.d("Creating file " + myDir + "/" + folder +"/" + name + " from resource");
|
||||
Util.i("Creating file " + myDir + "/" + folder +"/" + name + " from resource");
|
||||
//create all the leading directories
|
||||
File newFile = new File(myDir+"/"+folder+"/"+name);
|
||||
newFile.getParentFile().mkdirs();
|
||||
byte[] bytes = baos.toByteArray();
|
||||
out = new FileOutputStream(f);
|
||||
out.write(bytes);
|
||||
}
|
||||
} catch (IOException ioe) {
|
||||
Util.e("unzipResourceToDir" + "IOE: ", ioe);
|
||||
} finally {
|
||||
if (out != null) { try { out.close(); } catch (IOException ioe) {} out = null; }
|
||||
if (out != null) {
|
||||
try {
|
||||
out.close();
|
||||
} catch (IOException ioe) {
|
||||
Util.e("unzipResourceToDir" + "IOE: interior out.close ", ioe);
|
||||
}
|
||||
out = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (IOException ioe) {
|
||||
Util.e("unzipResourceToDir" + "IOE: ", ioe);
|
||||
} catch (Resources.NotFoundException nfe) {
|
||||
Util.e("unzipResourceToDir" + "NFE: ", nfe);
|
||||
} finally {
|
||||
if (in != null) try { in.close(); } catch (IOException ioe) {}
|
||||
if (out != null) try { out.close(); } catch (IOException ioe) {}
|
||||
if (zis != null) try { zis.close(); } catch (IOException ioe) {}
|
||||
if (in != null) try { in.close(); } catch (IOException ioe) {
|
||||
Util.e("unzipResourceToDir" + "IOE: in.close() ", ioe);
|
||||
}
|
||||
if (out != null) try { out.close(); } catch (IOException ioe) {
|
||||
Util.e("unzipResourceToDir" + "IOE: out.close() ", ioe);
|
||||
}
|
||||
if (zis != null) try { zis.close(); } catch (IOException ioe) {
|
||||
Util.e("unzipResourceToDir" + "IOE: zis.close() ", ioe);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -252,18 +284,31 @@ class InitActivities {
|
||||
private boolean checkNewVersion() {
|
||||
Properties props = new Properties();
|
||||
|
||||
Util.i("Checking for a new install/version");
|
||||
InputStream fin = null;
|
||||
try {
|
||||
fin = ctx.openFileInput(CONFIG_FILE);
|
||||
DataHelper.loadProps(props, fin);
|
||||
} catch (IOException ioe) {
|
||||
Util.d("Looks like a new install");
|
||||
Util.i("Looks like a new install");
|
||||
} finally {
|
||||
if (fin != null) try { fin.close(); } catch (IOException ioe) {}
|
||||
if (fin != null) {
|
||||
try {
|
||||
Util.i("fin was not null "+CONFIG_FILE);
|
||||
fin.close();
|
||||
} catch (IOException ioe) {
|
||||
Util.i("Error loading config:", ioe);
|
||||
}
|
||||
}else {
|
||||
Util.i("fin was null");
|
||||
}
|
||||
}
|
||||
|
||||
String oldVersion = props.getProperty(PROP_INSTALLED_VERSION);
|
||||
Util.i("Old version is:"+oldVersion);
|
||||
boolean newInstall = oldVersion == null;
|
||||
if (newInstall)
|
||||
return true;
|
||||
boolean newVersion = !_ourVersion.equals(oldVersion);
|
||||
|
||||
if (newVersion) {
|
||||
|
@ -102,8 +102,28 @@ public class BrowserListFragment extends Fragment implements
|
||||
getContext().getResources().getStringArray(R.array.supported_browsers));
|
||||
supportedLabels = Arrays.asList(
|
||||
getContext().getResources().getStringArray(R.array.supported_browser_labels));
|
||||
unsupported = Arrays.asList(
|
||||
context.getResources().getStringArray(R.array.unsupported_browsers));
|
||||
unsupported = allBrowsers(context);//Arrays.asList(
|
||||
//context.getResources().getStringArray(R.array.unsupported_browsers));
|
||||
}
|
||||
|
||||
public List<String> allBrowsers(Context context){
|
||||
//try {
|
||||
Intent intent = new Intent(Intent.ACTION_VIEW);
|
||||
intent.setData(Uri.parse("http://www.google.com"));
|
||||
List<ResolveInfo> browserList;
|
||||
PackageManager pm = context.getPackageManager();
|
||||
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
|
||||
// gets all
|
||||
browserList = pm.queryIntentActivities(intent, PackageManager.MATCH_ALL);
|
||||
} else {
|
||||
browserList = pm.queryIntentActivities(intent, 0);
|
||||
}
|
||||
//}catch()
|
||||
List<String> finalResult = new ArrayList<String>();
|
||||
for (ResolveInfo ri : browserList){
|
||||
finalResult.add(ri.resolvePackageName);
|
||||
}
|
||||
return finalResult;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -661,6 +661,7 @@ public class MainFragment extends I2PFragmentBase {
|
||||
// even if an error occurs. http://trac.i2p2.i2p/ticket/2783
|
||||
intent.setAction(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS);
|
||||
intent.setData(Uri.parse("package:" + packageName));
|
||||
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
try {
|
||||
mContext.startActivity(intent);
|
||||
} catch (ActivityNotFoundException activityNotFound) {
|
||||
|
@ -25,16 +25,16 @@ public class AboutDialog extends DialogFragment {
|
||||
View view = li.inflate(R.layout.fragment_dialog_about, null);
|
||||
|
||||
final String currentVersion = Util.getOurVersion(getActivity());
|
||||
TextView tv = (TextView)view.findViewById(R.id.about_version);
|
||||
TextView tv = (TextView) view.findViewById(R.id.about_version);
|
||||
tv.setText(currentVersion);
|
||||
|
||||
tv = (TextView)view.findViewById(R.id.url_project);
|
||||
tv = (TextView) view.findViewById(R.id.url_project);
|
||||
Linkify.addLinks(tv, I2Patterns.I2P_WEB_URL, "http://");
|
||||
tv = (TextView)view.findViewById(R.id.url_android_bugs);
|
||||
tv = (TextView) view.findViewById(R.id.url_android_bugs);
|
||||
Linkify.addLinks(tv, I2Patterns.I2P_WEB_URL, "http://");
|
||||
tv = (TextView)view.findViewById(R.id.url_android_volunteer);
|
||||
tv = (TextView) view.findViewById(R.id.url_android_volunteer);
|
||||
Linkify.addLinks(tv, I2Patterns.I2P_WEB_URL, "http://");
|
||||
tv = (TextView)view.findViewById(R.id.url_donate);
|
||||
tv = (TextView) view.findViewById(R.id.url_gitlab);
|
||||
Linkify.addLinks(tv, I2Patterns.I2P_WEB_URL, "http://");
|
||||
|
||||
AlertDialog.Builder b = new AlertDialog.Builder(getActivity());
|
||||
|
@ -27,7 +27,11 @@ public class OnBootReceiver extends BroadcastReceiver implements I2PConstants {
|
||||
Intent routerService = new Intent(context, RouterService.class);
|
||||
// Ticket #2404
|
||||
try {
|
||||
context.startService(routerService);
|
||||
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O){
|
||||
context.startForegroundService(routerService);
|
||||
} else {
|
||||
context.startService(routerService);
|
||||
}
|
||||
} catch (IllegalStateException ex) {
|
||||
Util.e("Error: ", ex);
|
||||
}
|
||||
|
@ -0,0 +1,147 @@
|
||||
package net.i2p.android.router.service;
|
||||
|
||||
import android.app.PendingIntent;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
|
||||
import net.i2p.android.I2PActivity;
|
||||
import net.i2p.android.I2PActivityBase;
|
||||
import net.i2p.android.router.R;
|
||||
import net.i2p.android.router.util.Notifications;
|
||||
import net.i2p.android.router.util.Util;
|
||||
import net.i2p.router.Router;
|
||||
import net.i2p.router.RouterContext;
|
||||
import net.i2p.sam.*;
|
||||
import net.i2p.sam.SAMException;
|
||||
|
||||
import java.security.MessageDigest;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Properties;
|
||||
|
||||
/**
|
||||
* Implements SAMSecureSessionInterface on Android platforms using a Toast
|
||||
* as the interactive channel.
|
||||
*
|
||||
* @since 1.8.0
|
||||
*/
|
||||
public class AndroidSAMSecureSession extends AppCompatActivity implements SAMSecureSessionInterface {
|
||||
private static final String URI_I2P_ANDROID = "net.i2p.android";
|
||||
private final Context mCtx;
|
||||
private final RouterService _routerService;
|
||||
private final StatusBar _statusBar;
|
||||
static private Map<String, Integer> results = new HashMap<>();
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
}
|
||||
|
||||
public static void affirmResult(String clientId) {
|
||||
Util.d("Affirmed result for: " + clientId);
|
||||
results.put(clientId, 1);
|
||||
}
|
||||
|
||||
public AndroidSAMSecureSession(Context ctx, RouterService rCtx, StatusBar statusBar) {
|
||||
mCtx = ctx;
|
||||
_routerService = rCtx;
|
||||
_statusBar = statusBar;
|
||||
}
|
||||
|
||||
private void waitForResult(String clientId) {
|
||||
for (int i=0;i<60;i++) {
|
||||
try {
|
||||
Thread.sleep(1000);
|
||||
} catch (InterruptedException e) {
|
||||
Util.e("SAMSecureSession Error", e);
|
||||
}
|
||||
Integer result = results.get(clientId);
|
||||
if (result == null)
|
||||
continue;
|
||||
if (result != -1)
|
||||
break;
|
||||
Util.d("Waiting on user to approve SAM connection for: "+clientId);
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isResult(String clientId) {
|
||||
waitForResult(clientId);
|
||||
final Integer finResult = results.get(clientId);
|
||||
if (finResult == null)
|
||||
return false;
|
||||
_routerService.updateStatus();
|
||||
if (finResult == 0) {
|
||||
Util.w("SAM connection cancelled by user request");
|
||||
return false;
|
||||
}
|
||||
if (finResult == 1) {
|
||||
Util.w("SAM connection allowed by user action");
|
||||
return true;
|
||||
}
|
||||
Util.w("SAM connection denied by timeout.");
|
||||
return false;
|
||||
}
|
||||
|
||||
private boolean checkResult(String clientId) {
|
||||
Intent intent = new Intent("net.i2p.android.router.service.APPROVE_SAM", null, mCtx, I2PActivity.class );
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
intent.setPackage(URI_I2P_ANDROID);
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putBoolean("approveSAMConnection", true);
|
||||
bundle.putString("ID", clientId);
|
||||
intent.putExtras(bundle);
|
||||
PendingIntent pendingIntent;
|
||||
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.S) {
|
||||
pendingIntent = PendingIntent.getActivity(
|
||||
mCtx, 7656,
|
||||
intent,
|
||||
PendingIntent.FLAG_MUTABLE,
|
||||
bundle);
|
||||
} else {
|
||||
pendingIntent = PendingIntent.getActivity(
|
||||
mCtx, 7656,
|
||||
intent,
|
||||
PendingIntent.FLAG_UPDATE_CURRENT,
|
||||
bundle);
|
||||
}
|
||||
String dlgText = mCtx.getString(R.string.settings_confirm_sam) + "\n";//""</br>";
|
||||
dlgText += mCtx.getString(R.string.settings_confirm_sam_id) + clientId + "\n";//""</br>";
|
||||
dlgText += mCtx.getString(R.string.settings_confirm_allow_sam) + "\n";//""</br>";
|
||||
dlgText += mCtx.getString(R.string.settings_confirm_deny_sam) + "\n";//""</br>";
|
||||
|
||||
|
||||
_statusBar.replaceIntent(StatusBar.ICON_ACTIVE, dlgText, pendingIntent);
|
||||
return isResult(clientId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean approveOrDenySecureSession(Properties i2cpProps, Properties props) throws SAMException {
|
||||
String ID = props.getProperty("USER");
|
||||
if (ID == null)
|
||||
ID = i2cpProps.getProperty("inbound.nickname");
|
||||
if (ID == null)
|
||||
ID = i2cpProps.getProperty("outbound.nickname");
|
||||
if (ID == null)
|
||||
ID = props.getProperty("ID");
|
||||
if (ID == null) {
|
||||
MessageDigest messageDigest = null;
|
||||
try {
|
||||
messageDigest = MessageDigest.getInstance("SHA-256");
|
||||
} catch (NoSuchAlgorithmException e) {
|
||||
ID = "No_ID_Present";
|
||||
}
|
||||
if (messageDigest != null) {
|
||||
String combinedProps = i2cpProps.toString() + props.toString();
|
||||
messageDigest.update(combinedProps.getBytes());
|
||||
ID = messageDigest.digest().toString();
|
||||
}else{
|
||||
ID = "No_ID_Present";
|
||||
}
|
||||
}
|
||||
return checkResult(ID);
|
||||
}
|
||||
}
|
@ -1,21 +1,26 @@
|
||||
package net.i2p.android.router.service;
|
||||
|
||||
import android.app.Notification;
|
||||
import android.content.Context;
|
||||
|
||||
//import net.i2p.BOB.BOB;
|
||||
import net.i2p.I2PAppContext;
|
||||
import net.i2p.addressbook.DaemonThread;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Looper;
|
||||
import android.preference.PreferenceManager;
|
||||
import net.i2p.android.apps.NewsFetcher;
|
||||
import net.i2p.android.router.service.AndroidSAMSecureSession;
|
||||
import net.i2p.android.router.util.Notifications;
|
||||
import net.i2p.android.router.util.Util;
|
||||
import net.i2p.i2ptunnel.TunnelControllerGroup;
|
||||
import net.i2p.router.Job;
|
||||
import net.i2p.router.JobImpl;
|
||||
import net.i2p.router.Router;
|
||||
import net.i2p.router.RouterContext;
|
||||
import net.i2p.router.startup.RouterAppManager;
|
||||
import net.i2p.util.I2PAppThread;
|
||||
import net.i2p.sam.SAMBridge;
|
||||
import net.i2p.sam.SAMSecureSessionInterface;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
@ -27,7 +32,8 @@ import java.util.Properties;
|
||||
* We can't use LoadClientAppsJob (reading in clients.config) directly
|
||||
* because Class.forName() needs a PathClassLoader argument -
|
||||
* http://doandroids.com/blogs/2010/6/10/android-classloader-dynamic-loading-of/
|
||||
* ClassLoader cl = new PathClassLoader(_apkPath, ClassLoader.getSystemClassLoader());
|
||||
* ClassLoader cl = new PathClassLoader(_apkPath,
|
||||
* ClassLoader.getSystemClassLoader());
|
||||
*
|
||||
* We can't extend LoadClientAppsJob to specify a class loader,
|
||||
* even if we use it only for Class.forName() and not for
|
||||
@ -43,46 +49,68 @@ import java.util.Properties;
|
||||
class LoadClientsJob extends JobImpl {
|
||||
|
||||
private final Context mCtx;
|
||||
private final RouterService _routerService;
|
||||
private final Notifications _notif;
|
||||
private DaemonThread _addressbook;
|
||||
public SAMBridge SAM_BRIDGE;
|
||||
//private BOB _bob;
|
||||
private final StatusBar _statusBar;
|
||||
// private BOB _bob;
|
||||
|
||||
/** this is the delay to load (and start) the clients. */
|
||||
private static final long LOAD_DELAY = 60*1000;
|
||||
private static final long LOAD_DELAY = 60 * 1000;
|
||||
|
||||
public LoadClientsJob(Context ctx, RouterContext rCtx, Notifications notif, StatusBar status) {
|
||||
super(rCtx);
|
||||
mCtx = ctx;
|
||||
_routerService = null;
|
||||
_notif = notif;
|
||||
getTiming().setStartAfter(getContext().clock().now() + LOAD_DELAY);
|
||||
_statusBar = status;
|
||||
}
|
||||
|
||||
public LoadClientsJob(Context ctx, RouterContext rCtx, RouterService rSvc, Notifications notif, StatusBar status) {
|
||||
super(rCtx);
|
||||
mCtx = ctx;
|
||||
_routerService = rSvc;
|
||||
_notif = notif;
|
||||
getTiming().setStartAfter(getContext().clock().now() + LOAD_DELAY);
|
||||
_statusBar = status;
|
||||
}
|
||||
|
||||
public LoadClientsJob(Context ctx, RouterContext rCtx, Notifications notif) {
|
||||
super(rCtx);
|
||||
mCtx = ctx;
|
||||
_routerService = null;
|
||||
_notif = notif;
|
||||
getTiming().setStartAfter(getContext().clock().now() + LOAD_DELAY);
|
||||
_statusBar = null;
|
||||
}
|
||||
|
||||
public String getName() { return "Start Clients"; }
|
||||
public String getName() {
|
||||
return "Start Clients";
|
||||
}
|
||||
|
||||
public void runJob() {
|
||||
Job jtunnel = new RunI2PTunnel(getContext());
|
||||
getContext().jobQueue().addJob(jtunnel);
|
||||
|
||||
|
||||
Thread t = new I2PAppThread(new StatSummarizer(), "StatSummarizer", true);
|
||||
t.setPriority(Thread.NORM_PRIORITY - 1);
|
||||
t.start();
|
||||
|
||||
// add other clients here
|
||||
//_bob = new BOB(I2PAppContext.getGlobalContext(), null, new String[0]);
|
||||
//try {
|
||||
// _bob.startup();
|
||||
//} catch (IOException ioe) {}
|
||||
// _bob = new BOB(I2PAppContext.getGlobalContext(), null, new String[0]);
|
||||
// try {
|
||||
// _bob.startup();
|
||||
// } catch (IOException ioe) {}
|
||||
boolean useSAM = PreferenceManager.getDefaultSharedPreferences(mCtx).getBoolean("i2pandroid.client.SAM", true);
|
||||
Util.i("SAM API " + useSAM);
|
||||
if (useSAM) {
|
||||
Job jsam = new RunI2PSAM(getContext());
|
||||
getContext().jobQueue().addJob(jsam);
|
||||
Util.i("SAM API started successfully" + useSAM);
|
||||
}else{
|
||||
Util.i("SAM API disabled, not starting "+useSAM);
|
||||
} else {
|
||||
Util.i("SAM API disabled, not starting " + useSAM);
|
||||
}
|
||||
getContext().addShutdownTask(new ClientShutdownHook());
|
||||
}
|
||||
@ -93,7 +121,9 @@ class LoadClientsJob extends JobImpl {
|
||||
super(ctx);
|
||||
}
|
||||
|
||||
public String getName() { return "Start I2P Tunnel"; }
|
||||
public String getName() {
|
||||
return "Start I2P Tunnel";
|
||||
}
|
||||
|
||||
public void runJob() {
|
||||
if (!getContext().router().isRunning()) {
|
||||
@ -116,7 +146,7 @@ class LoadClientsJob extends JobImpl {
|
||||
NewsFetcher fetcher = NewsFetcher.getInstance(mCtx, getContext(), _notif);
|
||||
ctx.routerAppManager().addAndStart(fetcher, new String[0]);
|
||||
|
||||
_addressbook = new DaemonThread(new String[] {"addressbook"});
|
||||
_addressbook = new DaemonThread(new String[] { "addressbook" });
|
||||
_addressbook.setName("Addressbook");
|
||||
_addressbook.setDaemon(true);
|
||||
_addressbook.start();
|
||||
@ -133,7 +163,9 @@ class LoadClientsJob extends JobImpl {
|
||||
super(ctx);
|
||||
}
|
||||
|
||||
public String getName() { return "Start SAM API"; }
|
||||
public String getName() {
|
||||
return "Start SAM API";
|
||||
}
|
||||
|
||||
public void runJob() {
|
||||
if (!getContext().router().isRunning()) {
|
||||
@ -147,15 +179,19 @@ class LoadClientsJob extends JobImpl {
|
||||
Util.d("Starting SAM");
|
||||
try {
|
||||
Util.i("Starting the SAM API");
|
||||
Looper.prepare();
|
||||
AndroidSAMSecureSession _androidSecureSession = new AndroidSAMSecureSession(mCtx, _routerService, _statusBar);
|
||||
SAMSecureSessionInterface _secureSession = _androidSecureSession;
|
||||
SAM_BRIDGE = new SAMBridge("127.0.0.1",
|
||||
7656,
|
||||
false,
|
||||
SAM_PROPERTIES(),
|
||||
"sam.keys",
|
||||
new File("sam_config"));
|
||||
7656,
|
||||
false,
|
||||
SAM_PROPERTIES(),
|
||||
"sam.keys",
|
||||
new File("sam_config"),
|
||||
_secureSession);
|
||||
SAM_BRIDGE.run();
|
||||
} catch (IOException e) {
|
||||
Util.e( e.toString());
|
||||
Util.e(e.toString());
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
@ -173,8 +209,8 @@ class LoadClientsJob extends JobImpl {
|
||||
// i2ptunnel registers its own hook
|
||||
// StatSummarizer registers its own hook
|
||||
// NewsFetcher registers its own hook
|
||||
//if (_bob != null)
|
||||
// _bob.shutdown(null);
|
||||
// if (_bob != null)
|
||||
// _bob.shutdown(null);
|
||||
if (SAM_BRIDGE != null)
|
||||
SAM_BRIDGE.shutdown(null);
|
||||
if (_addressbook != null)
|
||||
|
@ -236,7 +236,7 @@ public class RouterService extends Service {
|
||||
throw new IllegalStateException("Router has no context?");
|
||||
}
|
||||
_context.router().setKillVMOnEnd(false);
|
||||
Job loadJob = new LoadClientsJob(RouterService.this, _context, _notif);
|
||||
Job loadJob = new LoadClientsJob(RouterService.this, _context, RouterService.this, _notif, _statusBar);
|
||||
_context.jobQueue().addJob(loadJob);
|
||||
_context.addShutdownTask(new ShutdownHook());
|
||||
_context.addFinalShutdownTask(new FinalShutdownHook());
|
||||
@ -262,6 +262,16 @@ public class RouterService extends Service {
|
||||
private String _currTitle;
|
||||
private boolean _hadTunnels;
|
||||
|
||||
public void updateStatus() {
|
||||
RouterContext ctx = _context;
|
||||
if(ctx != null && (_state == State.RUNNING || _state == State.ACTIVE || _state == State.GRACEFUL_SHUTDOWN)) {
|
||||
Router router = ctx.router();
|
||||
if(router.isAlive()) {
|
||||
updateStatus(ctx);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void updateStatus(RouterContext ctx) {
|
||||
int active = ctx.commSystem().countActivePeers();
|
||||
int known = Math.max(ctx.netDb().getKnownRouters() - 1, 0);
|
||||
|
@ -13,6 +13,7 @@ import android.widget.Toast;
|
||||
|
||||
import net.i2p.android.I2PActivity;
|
||||
import net.i2p.android.router.R;
|
||||
import net.i2p.android.router.util.Notifications;
|
||||
|
||||
class StatusBar {
|
||||
|
||||
@ -45,37 +46,80 @@ class StatusBar {
|
||||
int icon = ICON_STARTING;
|
||||
// won't be shown if replace() is called
|
||||
String text = mCtx.getString(R.string.notification_status_starting);
|
||||
mNotifyBuilder = notifyBuilder(icon, text);
|
||||
}
|
||||
|
||||
private NotificationCompat.Builder notifyBuilder(int icon, String text) {
|
||||
NotificationCompat.Builder tNotifyBuilder;
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||
mNotifyBuilder = new NotificationCompat.Builder(mCtx);
|
||||
tNotifyBuilder = new NotificationCompat.Builder(mCtx);
|
||||
} else {
|
||||
mNotifyBuilder = new NotificationCompat.Builder(mCtx, NOTIFICATION_CHANNEL_ID);
|
||||
tNotifyBuilder = new NotificationCompat.Builder(mCtx, NOTIFICATION_CHANNEL_ID);
|
||||
}
|
||||
tNotifyBuilder.setContentText(text);
|
||||
tNotifyBuilder.setSmallIcon(icon);
|
||||
tNotifyBuilder.setColor(mCtx.getResources().getColor(R.color.primary_light));
|
||||
tNotifyBuilder.setOngoing(true);
|
||||
tNotifyBuilder.setPriority(NotificationManager.IMPORTANCE_LOW);
|
||||
tNotifyBuilder.setCategory(Notification.CATEGORY_SERVICE);
|
||||
|
||||
mNotifyBuilder.setContentText(text);
|
||||
mNotifyBuilder.setSmallIcon(icon);
|
||||
mNotifyBuilder.setColor(mCtx.getResources().getColor(R.color.primary_light));
|
||||
mNotifyBuilder.setOngoing(true);
|
||||
mNotifyBuilder.setPriority(NotificationManager.IMPORTANCE_LOW);
|
||||
mNotifyBuilder.setCategory(Notification.CATEGORY_SERVICE);
|
||||
PendingIntent pi = this.pendingIntent();
|
||||
tNotifyBuilder.setContentIntent(pi);
|
||||
return tNotifyBuilder;
|
||||
}
|
||||
|
||||
private PendingIntent pendingIntent() {
|
||||
Intent intent = new Intent(mCtx, I2PActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
PendingIntent pi = PendingIntent.getActivity(mCtx, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
mNotifyBuilder.setContentIntent(pi);
|
||||
PendingIntent pi = null;
|
||||
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.S) {
|
||||
pi = PendingIntent.getActivity(mCtx,
|
||||
0,
|
||||
intent,
|
||||
PendingIntent.FLAG_MUTABLE);
|
||||
} else {
|
||||
pi = PendingIntent.getActivity(mCtx,
|
||||
0,
|
||||
intent,
|
||||
PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
}
|
||||
return pi;
|
||||
}
|
||||
|
||||
public void replace(int icon, int textResource) {
|
||||
PendingIntent pi = pendingIntent();
|
||||
mNotifyBuilder.setContentIntent(pi);
|
||||
replace(icon, mCtx.getString(textResource));
|
||||
}
|
||||
|
||||
public void replace(int icon, String title) {
|
||||
PendingIntent pi = pendingIntent();
|
||||
mNotifyBuilder.setContentIntent(pi);
|
||||
mNotifyBuilder.setSmallIcon(icon)
|
||||
.setStyle(null)
|
||||
.setTicker(title);
|
||||
update(title);
|
||||
}
|
||||
|
||||
public void replaceIntent(int icon, String text, PendingIntent pi) {
|
||||
mNotifyBuilder.setContentIntent(pi);
|
||||
mNotifyBuilder.setPriority(NotificationCompat.PRIORITY_MAX);
|
||||
mNotifyBuilder.setAutoCancel(true);
|
||||
mNotifyBuilder.setStyle(new NotificationCompat.BigTextStyle().bigText(text));
|
||||
mNotifyBuilder.setSmallIcon(icon).setContentText(text);
|
||||
update(null, text);
|
||||
}
|
||||
|
||||
public void replaceIntent(int icon, int textResource, PendingIntent pi) {
|
||||
String text = mCtx.getString(textResource);
|
||||
mNotifyBuilder.setContentIntent(pi);
|
||||
mNotifyBuilder.setPriority(NotificationCompat.PRIORITY_MAX);
|
||||
mNotifyBuilder.setAutoCancel(true);
|
||||
mNotifyBuilder.setStyle(new NotificationCompat.BigTextStyle().bigText(text));
|
||||
mNotifyBuilder.setSmallIcon(icon).setContentText(text);
|
||||
update(null, text);
|
||||
}
|
||||
|
||||
public void update(String title) {
|
||||
update(title, null);
|
||||
}
|
||||
@ -87,8 +131,10 @@ class StatusBar {
|
||||
}
|
||||
|
||||
public void update(String title, String text) {
|
||||
mNotifyBuilder.setContentTitle(title)
|
||||
.setContentText(text);
|
||||
if (title != null)
|
||||
mNotifyBuilder.setContentTitle(title);
|
||||
if (text != null)
|
||||
mNotifyBuilder.setContentText(text);
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||
mNotificationChannel = new NotificationChannel(NOTIFICATION_CHANNEL_ID, channelName, NotificationManager.IMPORTANCE_LOW);
|
||||
mNotificationManager.createNotificationChannel(mNotificationChannel);
|
||||
|
@ -53,7 +53,12 @@ public class Notifications {
|
||||
if (c != null) {
|
||||
Intent intent = new Intent(mCtx, c);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
PendingIntent pi = PendingIntent.getActivity(mCtx, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
PendingIntent pi;
|
||||
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.S) {
|
||||
pi = PendingIntent.getActivity(mCtx, 0, intent, PendingIntent.FLAG_MUTABLE);
|
||||
} else {
|
||||
pi = PendingIntent.getActivity(mCtx, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
}
|
||||
b.setContentIntent(pi);
|
||||
}
|
||||
|
||||
|
@ -29,10 +29,12 @@ public class I2PDestinationPage extends SingleTextFieldPage {
|
||||
public boolean isValid() {
|
||||
String data = mData.getString(SIMPLE_DATA_KEY);
|
||||
if (data.toLowerCase(Locale.US).endsWith(".b32.i2p")) { /* B32 */
|
||||
if (data.length() != BASE32_HASH_LENGTH + 8) {
|
||||
mFeedback = "Invalid B32";
|
||||
return false;
|
||||
if (data.length() == BASE32_HASH_LENGTH + 8 || data.length() >= BASE32_HASH_LENGTH + 12) {
|
||||
mFeedback = "";
|
||||
return true;
|
||||
}
|
||||
mFeedback = "Invalid B32";
|
||||
return false;
|
||||
} else if (data.endsWith(".i2p")) { /* Domain */
|
||||
// Valid
|
||||
} else if (data.length() >= 516) { /* B64 */
|
||||
|
@ -64,13 +64,13 @@
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:text="@string/about_donate" />
|
||||
android:text="@string/about_gitlab" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/url_donate"
|
||||
android:id="@+id/url_gitlab"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:text="@string/url_donate" />
|
||||
android:text="@string/url_gitlab" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
@ -0,0 +1,17 @@
|
||||
<html>
|
||||
<head></head>
|
||||
<body>
|
||||
<h2>Privacy Brower has native I2P support!</h2>
|
||||
<p>Make sure your I2P router is started before launching Privacy Browser</p>
|
||||
<p>Privacy Browser supports both I2P and Orbot (Tor), but not at the same time.</p>
|
||||
<h2>How to configure Privacy Browser:</h2>
|
||||
<ol>
|
||||
<li>Open the main menu and tap “Settings”</li>
|
||||
<li>Select "Disable Javascript"(Recommended)</li>
|
||||
<li>Select "Enable Incognito Mode"(Optional)</li>
|
||||
<li>Tap the "Proxy" menu item and select "I2P" from the submenu</li>
|
||||
<li>Exit the settings menu.</li>
|
||||
</ol>
|
||||
<a href="https://eyedeekay.github.io/Configuring-Privacy-Browser-for-I2P-on-Android/">A detailed guide with screenshots to is available online</a>
|
||||
</body>
|
||||
</html>
|
@ -156,12 +156,8 @@ href="git.idk.i2p/i2p-hackers/i2p.i2p/-/commits/master" target="_blank">git.idk.
|
||||
</li>
|
||||
|
||||
<li class="tidylist"><b>Get Involved!</b><br>I2P is developed and maintained
|
||||
mostly through unfunded, voluntary participation by community members. We're
|
||||
happy to accept <a href="http://i2p-projekt.i2p/donate.html"
|
||||
target="_blank">donations</a>, which go into essential hosting and
|
||||
administrative costs. We have <a href="http://i2p-projekt.i2p/bounties.html"
|
||||
target="_blank">cash bounties</a> for aspects of I2P for developers looking for
|
||||
incentives to participate, and we're always looking for more <a
|
||||
mostly through unfunded, voluntary participation by community members. We're
|
||||
always looking for more <a
|
||||
href="http://i2p-projekt.i2p/newdevelopers.html" target="_blank">Java coders</a>,
|
||||
<a href="http://i2p-projekt.i2p/newtranslators.html"
|
||||
target="_blank">translators</a>, promoters and users to help I2P grow. The
|
||||
|
@ -21,6 +21,9 @@
|
||||
<string name="button_router_off">Dlouze stiskněte pro spuštění I2P</string>
|
||||
<string name="button_router_on">I2P běží (dlouze stiskněte pro zastavení)</string>
|
||||
<string name="hidden">Skryté</string>
|
||||
<string name="testing">Testování</string>
|
||||
<string name="firewalled">Firewalled</string>
|
||||
<string name="symmetric_nat">Symetrický NAT</string>
|
||||
<!--Parameter is a time, e.g. 32s or 2m-->
|
||||
<!--Character to indicate a client tunnel. Usually first letter of the word "client".-->
|
||||
<string name="char_client_tunnel">C</string>
|
||||
@ -53,11 +56,15 @@
|
||||
<string name="configure_graphs">Konfigurovat grafy</string>
|
||||
<string name="country">Země</string>
|
||||
<string name="version">Verze</string>
|
||||
<string name="count">Počet</string>
|
||||
<string name="netdb_routers_empty">Žádné routery ve vaší NetDB</string>
|
||||
<string name="netdb_leases_empty">Žádné LeaseSets ve vaší NetDB</string>
|
||||
<string name="menu_settings">Nastavení</string>
|
||||
<string name="settings_enable">Zapnout</string>
|
||||
<string name="settings_label_bandwidth">Šířka pásma</string>
|
||||
<string name="settings_label_network">Síť</string>
|
||||
<string name="settings_label_hiddenMode">Participace</string>
|
||||
<string name="settings_dialog_sharePercent">Procento šířky pásma ke sdílení</string>
|
||||
<string name="settings_label_appearance">Podoba</string>
|
||||
<string name="settings_label_language">Jazyk</string>
|
||||
<string name="settings_default">Výchozí</string>
|
||||
@ -101,6 +108,7 @@
|
||||
<string name="description">Popis</string>
|
||||
<string name="outproxies">Výstupní proxy (Outproxies)</string>
|
||||
<string name="use_ssl">Použít SSL</string>
|
||||
<string name="profile">Profil</string>
|
||||
<string name="access_control">Řízení přístupu</string>
|
||||
<string name="disabled">Vypnuto</string>
|
||||
<string name="whitelist">Seznam povolených (whitelist)</string>
|
||||
|
@ -26,6 +26,7 @@
|
||||
<string name="button_router_graceful">I2P در %s خاموش خواهد شد</string>
|
||||
<string name="no_internet">هیچ اتصال اینترنتی موجود نمی باشد</string>
|
||||
<string name="hidden">پنهان</string>
|
||||
<string name="testing">در حال تست</string>
|
||||
<string name="symmetric_nat">NAT همگام</string>
|
||||
<!--Parameter is a time, e.g. 32s or 2m-->
|
||||
<string name="net_status_error_unresolved_tcp">آدرس های TCP حل نشده</string>
|
||||
@ -70,6 +71,7 @@
|
||||
<string name="transport">انتقال</string>
|
||||
<string name="versions">نسخه ها</string>
|
||||
<string name="version">نسخه</string>
|
||||
<string name="count">شمارش</string>
|
||||
<string name="notification_status_starting">I2P در حال شروع می باشد</string>
|
||||
<string name="notification_status_restarting">I2P در حال راه اندازی مجدد است</string>
|
||||
<string name="notification_status_starting_after_waiting">شبکه اتصال یافت، I2P در حال آغاز است</string>
|
||||
@ -95,6 +97,7 @@
|
||||
<string name="settings_desc_hiddenMode">خاموش کردن حالت پنهان</string>
|
||||
<string name="settings_label_sharePercent">اشتراک گذاری درصد</string>
|
||||
<string name="settings_desc_upnp">باز کردن درگاه های دیوار آتشین به صورت خودکار</string>
|
||||
<string name="settings_label_logging">ثبت وقایع</string>
|
||||
<string name="settings_label_appearance">ظاهر</string>
|
||||
<string name="settings_label_language">زبان</string>
|
||||
<string name="settings_default">پیش فرض</string>
|
||||
|
@ -55,6 +55,7 @@
|
||||
<string name="upload">Feltöltés</string>
|
||||
<string name="configure_browser_title">Böngésző beállítása?</string>
|
||||
<string name="configure_browser_for_i2p">Szeretné beállítani a böngészőt az I2P oldalak megjelenítéséhez? (Ezt később is megteheti a “Segítség” menüből.)</string>
|
||||
<string name="configure_no_doze_title">Hírek frissítve</string>
|
||||
<string name="first_start_title">Gratulálunk az I2P telepítéséhez!</string>
|
||||
<string name="first_start_welcome"><b>Üdvözli az I2P!</b> Kérem <b>legyen türelemmel</b> amíg az I2P elindul és peer-eket talál.</string>
|
||||
<string name="first_start_read">Amíg várakozik, kérjük olvassa el a kiadási megjegyzéseket és az üdvözlőlapot.</string>
|
||||
@ -73,15 +74,28 @@
|
||||
<string name="action_refresh">Frissítés</string>
|
||||
<string name="hint_search_addressbook">Keresés a címjegyzékben</string>
|
||||
<string name="action_reload_subscriptions">Feliratkozások újratöltése</string>
|
||||
<string name="news_updated">Hírek Frissítve</string>
|
||||
<string name="router_not_running">A router nem fut.</string>
|
||||
<string name="router_shutting_down">A router bezárása folyamatban.</string>
|
||||
<string name="stats_not_ready">A statisztikakezelő még nincs kész. Próbáld újra később.</string>
|
||||
<string name="select_an_address">Válassz egy címet.</string>
|
||||
<string name="configure_graphs">Grafikonok beállítása</string>
|
||||
<string name="statistics">Statisztikák</string>
|
||||
<string name="routers">Routerek</string>
|
||||
<string name="leasesets">LeaseSet-ek</string>
|
||||
<string name="leasesets">Úticél Kapcsolódási Információ (LeaseSet)</string>
|
||||
<string name="countries">Ország</string>
|
||||
<string name="country">Ország</string>
|
||||
<string name="transport">Szállítás</string>
|
||||
<string name="versions">Verziók</string>
|
||||
<string name="version">Verzió</string>
|
||||
<string name="count">Mennyiség</string>
|
||||
<string name="tname_0">Rejtett vagy indul</string>
|
||||
<string name="netdb_routers_empty">Nincsenek router-ek a NetDB-dben.</string>
|
||||
<string name="notification_status_starting">az I2P indul</string>
|
||||
<string name="notification_status_restarting">Az I2P újraindul</string>
|
||||
<string name="notification_status_waiting">Az I2P hálózati kapcsolatra vár</string>
|
||||
<string name="notification_status_starting_after_waiting">Hálózat csatlakoztatva, az I2P indul</string>
|
||||
<string name="notification_status_running">Az I2P fut</string>
|
||||
<string name="notification_status_client_ready">Kliens alagutak készen állnak</string>
|
||||
<string name="notification_status_client_down">Kliens alagutak leálltak</string>
|
||||
<string name="notification_status_graceful">I2P megállítása %s másodperc múlva</string>
|
||||
@ -95,18 +109,30 @@
|
||||
<string name="notification_status_client">Kliens alagutak: %1$d/%2$d</string>
|
||||
<string name="menu_settings">Beállítások</string>
|
||||
<string name="settings_enable">Engedélyezés</string>
|
||||
<string name="settings_label_bandwidth_net">Sávszélesség és hálózat</string>
|
||||
<string name="settings_label_startOnBoot">Az I2P indítása Rendszerindításkor</string>
|
||||
<string name="settings_desc_startOnBoot">Automatikus csatlakozás az I2P-hez, mikor az Android eszközöd elindul</string>
|
||||
<string name="settings_label_bandwidth">Sávszélesség</string>
|
||||
<string name="settings_label_bw_inbound">Bejövő sebesség</string>
|
||||
<string name="settings_desc_bw_inbound">Maximális bejövő sebesség</string>
|
||||
<string name="settings_label_bw_outbound">Kimenő sebesség</string>
|
||||
<string name="settings_desc_bw_outbound">Maximális kimenő sebesség</string>
|
||||
<string name="settings_label_network">Hálózat</string>
|
||||
<string name="settings_desc_hiddenMode">Rejtett mód kikapcsolása</string>
|
||||
<string name="settings_label_maxPartTunnels">Maximális résztvevő alagutak</string>
|
||||
<string name="settings_desc_maxPartTunnels">Alagutak maximális száma amiben részt vesz (alapértelmezés=20)</string>
|
||||
<string name="settings_dialog_maxPartTunnels">Alagutak maximális száma amiben részt vesz</string>
|
||||
<string name="settings_desc_upnp">Tűzfal portok automatikus nyitása</string>
|
||||
<string name="settings_label_logging">Naplózás</string>
|
||||
<string name="settings_label_default_log_level">Alapértelmezett naplózási szint</string>
|
||||
<string name="settings_label_appearance">Megjelenés</string>
|
||||
<string name="settings_label_language">Nyelv</string>
|
||||
<string name="settings_default">Alapértelmezett</string>
|
||||
<string name="settings_label_advanced">Haladó</string>
|
||||
<string name="settings_label_showStats">Router statisztika</string>
|
||||
<string name="settings_label_transports">Átvitel</string>
|
||||
<string name="settings_label_maxConns">Max kapcsolatok</string>
|
||||
<string name="settings_label_i2cp">I2CP felület</string>
|
||||
<string name="settings_desc_i2cp">Alagutak létrehozásának engedélyezése harmadik féltől származó alkalmazásoknak (a router újraindítása szükséges hozzá)</string>
|
||||
<string name="settings_desc_exploratory_pool">Alagút paraméterei</string>
|
||||
<string name="settings_label_expl_inbound">Bejövő alagutak</string>
|
||||
@ -121,10 +147,17 @@
|
||||
<string name="menu_about">Névjegy</string>
|
||||
<string name="about_version">Verzió:</string>
|
||||
<string name="about_project">A projekt honlapja:</string>
|
||||
<string name="about_bugs">Hibaelhárítás és Támogatás:</string>
|
||||
<string name="about_helpwanted">Segítséget Kérünk!</string>
|
||||
<string name="menu_help">Segítség</string>
|
||||
<string name="general">Általános</string>
|
||||
<string name="label_router">Nyilvános cmek</string>
|
||||
<string name="label_private">Privát címek</string>
|
||||
<string name="addressbook_is_empty">Címjegyzék üres</string>
|
||||
<string name="addressbook_search_header">%s találat</string>
|
||||
<string name="addressbook_add_wizard_k_name">Név</string>
|
||||
<string name="addressbook_add_wizard_k_destination">Célállomás</string>
|
||||
<string name="addressbook_add_wizard_desc_name">A név</string>
|
||||
<string name="i2ptunnel_type_client">Normál kliens</string>
|
||||
<string name="i2ptunnel_type_httpclient">HTTP kliens</string>
|
||||
<string name="i2ptunnel_type_ircclient">IRC kliens</string>
|
||||
@ -150,6 +183,7 @@
|
||||
<string name="i2ptunnel_delete_confirm_message">Törli az alagutat?</string>
|
||||
<string name="i2ptunnel_delete_confirm_button">Alagút törlése</string>
|
||||
<string name="i2ptunnel_no_tunnel_details">Alagút részleteit nem lehet betölteni</string>
|
||||
<string name="i2ptunnel_wizard_k_client_server">Kliens vagy Szerver</string>
|
||||
<string name="i2ptunnel_wizard_v_client">Kliens alagút</string>
|
||||
<string name="i2ptunnel_wizard_v_server">Kiszolgáló alagút</string>
|
||||
<string name="i2ptunnel_wizard_k_type">Alagút típusa</string>
|
||||
@ -157,6 +191,8 @@
|
||||
<string name="i2ptunnel_wizard_k_desc">Leírás</string>
|
||||
<string name="i2ptunnel_wizard_k_dest">Célállomás</string>
|
||||
<string name="i2ptunnel_wizard_k_outproxies">Kimenő proxyk</string>
|
||||
<string name="i2ptunnel_wizard_k_target_port">Célport</string>
|
||||
<string name="i2ptunnel_wizard_k_reachable_on">Elérhető itt:</string>
|
||||
<string name="i2ptunnel_wizard_k_auto_start">Automatikus indítás</string>
|
||||
<string name="next">Következő</string>
|
||||
<string name="prev">Előző</string>
|
||||
@ -174,30 +210,51 @@
|
||||
<string name="i2ptunnel_wizard_submit_confirm_message">Létrehozza az alagutat?</string>
|
||||
<string name="i2ptunnel_wizard_submit_confirm_button">Alagút létrehozása</string>
|
||||
<string name="i2ptunnel_view_target">Cél</string>
|
||||
<string name="i2ptunnel_view_autostart">Automatikus indítás</string>
|
||||
<string name="address_copied_to_clipboard">Cím másolva a vágólapra</string>
|
||||
<string name="edit_tunnel">Alagút szerkesztése</string>
|
||||
<string name="name">Név</string>
|
||||
<string name="description">Leírás</string>
|
||||
<string name="auto_start">Automatikus indítás</string>
|
||||
<string name="tunnel_summ_auto_start">A router indulásakor az alagút is induljon el.</string>
|
||||
<string name="tunnel_cat_ports">Helyi portok</string>
|
||||
<string name="shared_client">Megosztott kliens</string>
|
||||
<string name="tunnel_summ_shared_client">Használja ugyanazt a Célállomást és alagutakat mint a többi megosztott kliens</string>
|
||||
<string name="persistent_key_conflict_msg">Nem engedélyezheti az állandó kulcsokat amíg az alagút arra van konfigurálva hogy készítsen új kulcsokat újranyitáskor. Le akarja tiltani az új kulcsok készítését újranyitáskor?</string>
|
||||
<string name="tunnel_summ_persistent_key">Tartsa meg ennek az alagútnak a Célállomását amikor újraindul</string>
|
||||
<string name="reachable_on">Elérhető itt:</string>
|
||||
<string name="listen_port">Figyelő port</string>
|
||||
<string name="client_ssl">Kliens SSL</string>
|
||||
<string name="tunnel_summ_client_ssl">Klienseknek a kapcsolódáshoz SSL használata kötelező</string>
|
||||
<string name="outproxies">Kimenő proxyk</string>
|
||||
<string name="ssl_outproxies">SSL kimenő proxyk</string>
|
||||
<string name="irc">IRC</string>
|
||||
<string name="enable_dcc">DCC Engedélyezése</string>
|
||||
<string name="tunnel_summ_enable_dcc">IRC klienseknek DCC használatának engedélyezése</string>
|
||||
<string name="target_port">Célport</string>
|
||||
<string name="use_ssl">SSL használata</string>
|
||||
<string name="tunnel_summ_use_ssl">SSL használata célhoz való kapcsolódáshoz</string>
|
||||
<string name="tunnel_parameters">Alagút paraméterei</string>
|
||||
<string name="profile">Profil</string>
|
||||
<string name="delay_connect">Csatlakozás késleltetése</string>
|
||||
<string name="access_control">Hozzáférés kezelése</string>
|
||||
<string name="restricted_access">Korlátozott elérés</string>
|
||||
<string name="disabled">Tiltva</string>
|
||||
<string name="whitelist">Engedélyezett-Lista</string>
|
||||
<string name="blacklist">Tiltott-Lista</string>
|
||||
<string name="access_list">Elérési lista</string>
|
||||
<string name="reject_inproxies">Bejövő proxyk elutasítása</string>
|
||||
<string name="tunnel_summ_delay_open">Az alagút nyitás késleltetése szükségessé válásig</string>
|
||||
<string name="tunnel_summ_reduce_quantity">Alagutak mennyiségének csökkentése üres állapotban</string>
|
||||
<string name="reduced_tunnel_quantity">Csökkentett alagút mennyiség</string>
|
||||
<string name="close_tunnels">Alagutak bezárása üresjárat esetén</string>
|
||||
<string name="new_keys_on_reopen_conflict_msg">Nem engedélyezheti az új kulcsok készítését újranyitáskor amíg az alagút állandó kulcsok használatára van konfigurálva. Le akarja tiltani az állandó kulcsokat?</string>
|
||||
<string name="http_client">HTTP kliens</string>
|
||||
<string name="tunnel_summ_allow_ssl">SSL engedélyezése I2P címekhez</string>
|
||||
<string name="username">Felhasználónév</string>
|
||||
<string name="password">Jelszó</string>
|
||||
<string name="other">Egyéb</string>
|
||||
<string name="signature_type">Aláírás Típusa</string>
|
||||
<string name="custom_options">Egyéni beállítások</string>
|
||||
<string name="all">Összes</string>
|
||||
<string name="no_messages">Nincs üzenet</string>
|
||||
|
@ -2,10 +2,12 @@
|
||||
<resources>
|
||||
<string name="app_name">I2P</string>
|
||||
<string name="desc_i2p_logo">I2P ロゴ</string>
|
||||
<string name="choose_language">言語を選択</string>
|
||||
<string name="welcome_new_install">I2P へようこそ!このアプリはアルファ版のソフトウェアであり、強い匿名性を提供いたしません。リリース・ノート及びライセンス情報をご覧ください。</string>
|
||||
<string name="welcome_new_version">新しいバージョンがインストールされました。リリース・ノートをご覧ください。バージョン:</string>
|
||||
<string name="label_tunnels">トンネル</string>
|
||||
<string name="label_status">ステータス</string>
|
||||
<string name="label_status">状態</string>
|
||||
<string name="label_console">コンソール</string>
|
||||
<string name="label_addresses">アドレス</string>
|
||||
<string name="label_addressbook">アドレス帳</string>
|
||||
<string name="label_i2ptunnel_client">クライアントトンネル</string>
|
||||
@ -20,24 +22,45 @@
|
||||
<string name="label_graphs">グラフ</string>
|
||||
<string name="button_router_off">長押しして I2P を起動</string>
|
||||
<string name="button_router_on">I2P を起動中 (長押しで中止)</string>
|
||||
<string name="button_router_graceful">I2Pは%sでシャットダウン</string>
|
||||
<string name="button_shutdown_now">長押しで今すぐ停止</string>
|
||||
<string name="button_cancel_graceful">長押ししてシャットダウンをキャンセル</string>
|
||||
<string name="no_internet">インターネット接続は利用不可能</string>
|
||||
<string name="hidden">非表示</string>
|
||||
<string name="testing">テスト中</string>
|
||||
<string name="firewalled">警告-ファイアーウォールされ、高速</string>
|
||||
<string name="firewalled">ファイアーウォールされた</string>
|
||||
<string name="symmetric_nat">対称型NAT</string>
|
||||
<string name="net_status_error_i2cp">クライアントマネージャ I2CP エラー- ログをご確認ください</string>
|
||||
<!--Parameter is a time, e.g. 32s or 2m-->
|
||||
<string name="net_status_error_skew">%sのクロックスキュー</string>
|
||||
<string name="net_status_error_unresolved_tcp">未解決の TCP アドレス</string>
|
||||
<string name="net_status_error_private_tcp">プライベートな TCP アドレス</string>
|
||||
<string name="net_status_warn_firewalled_inbound_tcp">着信 TCP が有効となり、ファイアーウォールされています</string>
|
||||
<string name="net_status_warn_firewalled_floodfill">ファイアーウォールに防がれ、 Floodfill</string>
|
||||
<string name="net_status_info_disconnected">切断されました - ネットワーク接続を確認してください</string>
|
||||
<string name="net_status_error_udp_port">UDPポートが使用中 - 設定を変更して再起動してください</string>
|
||||
<string name="net_status_error_no_active_peers">アクティブなピアなし - ネットワークの接続およびファイアーウォールを確認してください</string>
|
||||
<string name="net_status_error_udp_disabled_tcp_not_set">UDP が無効化され、着信 TCP のホスト/ポートが設定されていません</string>
|
||||
<string name="net_status_warn_firewalled_udp_disabled">UDP が無効化され、ファイアウォールされています</string>
|
||||
<string name="shared_clients">共有クライアント</string>
|
||||
<string name="uptime">稼働時間</string>
|
||||
<string name="active_peers">アクティブなピア</string>
|
||||
<string name="known_peers">既知のピア</string>
|
||||
<!--Character to indicate a client tunnel. Usually first letter of the word "client".-->
|
||||
<string name="char_client_tunnel">C</string>
|
||||
<!--Character to indicate a server tunnel. Usually first letter of the word "server".-->
|
||||
<string name="char_server_tunnel">S</string>
|
||||
<string name="no_tunnels_running">まだトンネルは起動していません。</string>
|
||||
<string name="download">ダウンロード</string>
|
||||
<string name="upload">アップロード</string>
|
||||
<string name="configure_browser_title">ブラウザの設定をしますか?</string>
|
||||
<string name="configure_browser_for_i2p">I2Pサイトを見るためにブラウザを設定しますか?(あとでヘルプメニューからも設定できます)</string>
|
||||
<string name="configure_no_doze_title">バッテリー最適化を管理?</string>
|
||||
<string name="configure_no_doze">I2Pは稼働し続けていれば最もよく動作します。Androidが電気の節約を試みたときにI2Pを終了しないようにするため、バッテリー例外リストにI2Pを追加できます。これにより、アプリケーションの信頼性が大幅に上昇します。\n\nI2Pをバックグラウンドで稼働し続けますか?(推奨)</string>
|
||||
<string name="first_start_title">I2P のインストールおめでとうございます!</string>
|
||||
<string name="first_start_welcome"><b>I2P へようこそ!</b> I2P が立ち上がり、ピアを見つけるまで<b>我慢してください</b>。</string>
|
||||
<string name="first_start_read">待っている間、リリースノートとウェルカムページをお読みください。</string>
|
||||
<string name="first_start_faq">クライアントトンネルを得たら、以下の FAQ を<b>ご確認ください</b>:</string>
|
||||
<string name="first_start_faq">クライアントトンネルを得たら、以下のよくある質問を<b>ご確認ください</b>:</string>
|
||||
<string name="first_start_faq_nonanon">あるいは、トンネルを待ちたくないなら、この非匿名リンクを使用してください:</string>
|
||||
<string name="first_start_irc">IRC クライアントを <b>localhost:6668</b> に合わせて、私たちに一言挨拶してください:</string>
|
||||
<string name="action_search">検索</string>
|
||||
@ -51,30 +74,52 @@
|
||||
<string name="action_i2ptunnel_restart_all">全てのトンネルを再開始</string>
|
||||
<string name="action_reload">再読み込み</string>
|
||||
<string name="action_refresh">更新</string>
|
||||
<string name="hint_search_addressbook">アドレスブックを検索</string>
|
||||
<string name="hint_search_addressbook">アドレス帳を検索</string>
|
||||
<string name="action_reload_subscriptions">購読を再読込</string>
|
||||
<string name="router_not_running">ルーターが起動していません。</string>
|
||||
<string name="news_last_updated">ニュースは%s前に最終更新</string>
|
||||
<string name="news_last_checked">ニュースは%s前に最終確認</string>
|
||||
<string name="news_updated">ニュース更新</string>
|
||||
<string name="view_news">タッチして最終のI2Pのニュースを表示</string>
|
||||
<string name="router_not_running">ルータが起動していません。</string>
|
||||
<string name="router_shutting_down">ルータはシャットダウン中です。</string>
|
||||
<string name="stats_not_ready">統計マネージャーはまだ準備出来ていません。後でやり直してください。</string>
|
||||
<string name="select_an_address">アドレスを選択</string>
|
||||
<string name="no_graphs_configured">グラフは設定されていません。設定でどの統計をグラフにするか選択できます。すべての変更は60秒後に有効になります</string>
|
||||
<string name="configure_graphs">グラフ設定</string>
|
||||
<string name="graphs_not_ready">グラフの準備ができていません。後でやり直してください。</string>
|
||||
<string name="statistics">統計</string>
|
||||
<string name="routers">ルータ</string>
|
||||
<string name="leasesets">リースセット</string>
|
||||
<string name="countries">国</string>
|
||||
<string name="country">国</string>
|
||||
<string name="transport">トランスポート</string>
|
||||
<string name="versions">バージョン</string>
|
||||
<string name="version">バージョン</string>
|
||||
<string name="count">カウント</string>
|
||||
<string name="tname_0">隠すか起動中</string>
|
||||
<string name="netdb_routers_empty">NetDB にルーターがありません。</string>
|
||||
<string name="netdb_routers_empty">NetDB にルータがありません。</string>
|
||||
<string name="netdb_leases_empty">NetDB にリースセットがありません。</string>
|
||||
<string name="notification_status_starting">I2P は起動中</string>
|
||||
<string name="notification_status_restarting">I2P は再起動中</string>
|
||||
<string name="notification_status_waiting">I2Pはネットワーク接続を待機しています</string>
|
||||
<string name="notification_status_starting_after_waiting">ネットワーク接続済み、I2Pは起動中</string>
|
||||
<string name="notification_status_running">I2P は稼働中</string>
|
||||
<string name="notification_status_client_ready">クライアントトンネルは準備完了</string>
|
||||
<string name="notification_status_client_down">クライアントトンネルは落ちます</string>
|
||||
<string name="notification_status_graceful">%sでI2Pを停止</string>
|
||||
<string name="notification_status_stopping">I2Pを停止中</string>
|
||||
<string name="notification_status_stopping_after_net">ネットワーク切断、I2Pを停止中</string>
|
||||
<string name="notification_status_shutdown_cancelled">シャットダウンをキャンセルしました</string>
|
||||
<string name="notification_status_shutting_down">I2Pはシャットダウン中です。</string>
|
||||
<string name="notification_status_bw">帯域幅: %1$sBps 下方向 / %2$sBps 上方向</string>
|
||||
<string name="notification_status_peers">ピア: %1$d アクティブ、 %2$d 既知</string>
|
||||
<string name="notification_status_expl">予備トンネル: %1$d/%2$d</string>
|
||||
<string name="notification_status_expl">調査トンネル: %1$d/%2$d</string>
|
||||
<string name="notification_status_client">クライアントトンネル: %1$d/%2$d</string>
|
||||
<string name="menu_settings">設定</string>
|
||||
<string name="settings_enable">有効</string>
|
||||
<string name="settings_desc_subscriptions">URL を登録</string>
|
||||
<string name="settings_label_bandwidth_net">帯域幅とネットワーク</string>
|
||||
<string name="settings_label_startOnBoot">デバイスの起動時ににI2Pも起動</string>
|
||||
<string name="settings_label_startOnBoot">デバイスの起動時にI2Pも起動</string>
|
||||
<string name="settings_desc_startOnBoot">デバイスの起動時に自動でI2Pに接続</string>
|
||||
<string name="settings_label_bandwidth">帯域幅</string>
|
||||
<string name="settings_label_bw_inbound">受信速度</string>
|
||||
@ -83,7 +128,7 @@
|
||||
<string name="settings_desc_bw_outbound">最大送信速度</string>
|
||||
<string name="settings_label_network">ネットワーク</string>
|
||||
<string name="settings_label_hiddenMode">参加</string>
|
||||
<string name="settings_desc_hiddenMode">ヒドゥン・モードを切る</string>
|
||||
<string name="settings_desc_hiddenMode">秘匿モードを切る</string>
|
||||
<string name="settings_label_maxPartTunnels">最大参加トンネル数</string>
|
||||
<string name="settings_desc_maxPartTunnels">参加するトンネルの最大数 (既定=20)</string>
|
||||
<string name="settings_dialog_maxPartTunnels">参加するトンネルの最大数</string>
|
||||
@ -92,17 +137,18 @@
|
||||
<string name="settings_dialog_sharePercent">共有する帯域幅の割合</string>
|
||||
<string name="settings_desc_upnp">自動的にファイアーウォールのポートを開く</string>
|
||||
<string name="settings_label_logging">ロギング</string>
|
||||
<string name="settings_label_default_log_level">デフォルトのログ水準</string>
|
||||
<string name="settings_label_default_log_level">規定のログ水準</string>
|
||||
<string name="settings_label_appearance">外観</string>
|
||||
<string name="settings_label_language">言語</string>
|
||||
<string name="settings_default">デフォルト</string>
|
||||
<string name="settings_label_advanced">高度</string>
|
||||
<string name="settings_label_showStats">ルーターの統計</string>
|
||||
<string name="settings_label_showStats">ルータの統計</string>
|
||||
<string name="settings_summ_showStats">メインコンソールに高度な統計を表示</string>
|
||||
<string name="settings_label_transports">トランスポート</string>
|
||||
<string name="settings_label_maxConns">最大接続数</string>
|
||||
<string name="settings_label_i2cp">I2CP インターフェース</string>
|
||||
<string name="settings_label_exploratory_pool">予備プール</string>
|
||||
<string name="settings_desc_i2cp">サードパーティのアプリがトンネルを作成することを許可(ルータの再起動が必要)</string>
|
||||
<string name="settings_label_exploratory_pool">調査のプール</string>
|
||||
<string name="settings_desc_exploratory_pool">トンネルパラーメーター</string>
|
||||
<string name="settings_label_expl_inbound">受信トンネル</string>
|
||||
<string name="settings_label_expl_outbound">送信トンネル</string>
|
||||
@ -129,6 +175,9 @@
|
||||
<string name="about_donate">開発や試験用にさらに Android デバイスを購入するために、お金や Bitcoin を寄付していただけますか? こちらです:</string>
|
||||
<string name="menu_help">ヘルプ</string>
|
||||
<string name="general">一般</string>
|
||||
<string name="label_router">公開アドレス</string>
|
||||
<string name="label_private">プライベートなアドレス</string>
|
||||
<string name="addressbook_is_empty">アドレス帳は空です</string>
|
||||
<string name="addressbook_search_header">%s 検出</string>
|
||||
<string name="addressbook_add_wizard_k_name">名前</string>
|
||||
<string name="addressbook_add_wizard_k_destination">宛先</string>
|
||||
@ -153,7 +202,9 @@
|
||||
<string name="i2ptunnel_type_httpbidirserver">HTTP 双方向</string>
|
||||
<string name="install_recommended_app">推奨アプリをインストールしますか?</string>
|
||||
<string name="app_needed_for_this_tunnel_type">このトンネルを使用するには推奨アプリをインストールする必要があります。インストールしますか?</string>
|
||||
<string name="i2ptunnel_not_initialized">トンネルはまだ初期化されていません、2分後に再読み込みしてください。</string>
|
||||
<string name="i2ptunnel_not_initialized">トンネルはまだ初期化されていませんので、2分後に再読み込みしてください。</string>
|
||||
<string name="no_configured_client_tunnels">設定されていないクライアントンネル。</string>
|
||||
<string name="no_configured_server_tunnels">設定されていないサーバートンネル。</string>
|
||||
<string name="i2ptunnel_new_tunnel">新規トンネル</string>
|
||||
<string name="i2ptunnel_msg_config_saved">構成の変更が保存されました</string>
|
||||
<string name="i2ptunnel_msg_config_save_failed">構成の保存に失敗しました</string>
|
||||
@ -161,10 +212,11 @@
|
||||
<string name="i2ptunnel_msg_tunnel_stopping">トンネルを停止中</string>
|
||||
<string name="i2ptunnel_delete_confirm_message">トンネルを削除しますか?</string>
|
||||
<string name="i2ptunnel_delete_confirm_button">トンネルを削除</string>
|
||||
<string name="i2ptunnel_no_tunnel_details">トンネルの詳細を読み込めませんでした</string>
|
||||
<string name="i2ptunnel_wizard_k_client_server">クライアントあるいはサーバー</string>
|
||||
<string name="i2ptunnel_wizard_v_client">クライアントトンネル</string>
|
||||
<string name="i2ptunnel_wizard_v_server">サーバートンネル</string>
|
||||
<string name="i2ptunnel_wizard_k_type">トンネルタイプ</string>
|
||||
<string name="i2ptunnel_wizard_k_type">トンネルの種類</string>
|
||||
<string name="i2ptunnel_wizard_k_name">名前</string>
|
||||
<string name="i2ptunnel_wizard_k_desc">説明</string>
|
||||
<string name="i2ptunnel_wizard_k_dest">宛先</string>
|
||||
@ -181,25 +233,32 @@
|
||||
<string name="enabled">有効</string>
|
||||
<string name="i2ptunnel_wizard_desc_name">トンネルリストでの識別用に、トンネルの名前。</string>
|
||||
<string name="i2ptunnel_wizard_desc_desc">トンネルの説明。これは任意であり、単なる参考です。</string>
|
||||
<string name="i2ptunnel_wizard_desc_outproxies">このタイプのトンネル用 (HTTP か SOCKS のいずれか) のアウトプロキシを知っているなら、それらを入力してください。カンマで複数のプロキシを分割できます。</string>
|
||||
<string name="i2ptunnel_wizard_desc_dest">このクライアントトンネルが接続するサービスのI2P宛先を入力します。これには、ベース64の完全な宛先キーや、アドレス帳にあるI2Pホスト名を使用できます。</string>
|
||||
<string name="i2ptunnel_wizard_desc_outproxies">この種類のトンネル用 (HTTP か SOCKS のいずれか) のアウトプロキシを知っているなら、それらを入力してください。カンマで複数のプロキシを分割できます。</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_host">これは、サービスが起動している IPです。通常同一のマシン上なので、 127.0.0.1 が自動で入力されます。</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_port">これはサービスが接続を受け入れているポートです。</string>
|
||||
<string name="i2ptunnel_wizard_desc_reachable_on">これはどのコンピューターまたはスマートフォンがトンネルにアクセスできるかを制限するものです。</string>
|
||||
<string name="i2ptunnel_wizard_desc_binding_port">これは、クライアントトンネルがローカルにアクセスされるポートです。これはHTTP bidir サーバートンネル用のクライアントポートでもあります。</string>
|
||||
<string name="i2ptunnel_wizard_desc_auto_start">ルーターの起動時に自動的にトンネルを開始しますか?</string>
|
||||
<string name="i2ptunnel_wizard_desc_auto_start">ルータの起動時に自動的にトンネルを開始しますか?</string>
|
||||
<string name="i2ptunnel_wizard_submit_confirm_message">トンネルを作成しますか?</string>
|
||||
<string name="i2ptunnel_wizard_submit_confirm_button">トンネルを作成</string>
|
||||
<string name="i2ptunnel_view_target">ターゲット</string>
|
||||
<string name="i2ptunnel_view_access_point">アクセスポイント</string>
|
||||
<string name="i2ptunnel_view_autostart">自動開始</string>
|
||||
<string name="address_copied_to_clipboard">アドレスはクリップボードにコピーされました</string>
|
||||
<string name="edit_tunnel">トンネルを編集</string>
|
||||
<string name="name">名前</string>
|
||||
<string name="description">説明</string>
|
||||
<string name="auto_start">自動開始</string>
|
||||
<string name="tunnel_summ_auto_start">ルーター起動時にトンネルを開始</string>
|
||||
<string name="tunnel_summ_auto_start">ルータ起動時にトンネルを開始</string>
|
||||
<string name="tunnel_cat_ports">ローカルポート</string>
|
||||
<string name="shared_client">共有クライアント</string>
|
||||
<string name="target_destination">範囲</string>
|
||||
<string name="tunnel_summ_shared_client">他の共有クライアントと同じ宛先を使う</string>
|
||||
<string name="target_destination">対象の宛先</string>
|
||||
<string name="persistent_key">永続的なキー</string>
|
||||
<string name="persistent_key_conflict_title">新しいキーの再開放を無効にしますか?</string>
|
||||
<string name="persistent_key_conflict_msg">再開放で新しいキーを生成するようトンネルを設定している間に永続キーを有効にできません。新しいキーの再開放を無効にしますか?</string>
|
||||
<string name="tunnel_summ_persistent_key">再起動時にこのトンネルの宛先を維持する</string>
|
||||
<string name="reachable_on">到達可能</string>
|
||||
<string name="listen_port">着信ポート</string>
|
||||
<string name="client_ssl">クライアントSSL</string>
|
||||
@ -209,22 +268,27 @@
|
||||
<string name="irc">IRC</string>
|
||||
<string name="enable_dcc">DCC有効</string>
|
||||
<string name="tunnel_summ_enable_dcc">DCCを使用しているクライアントにIRCを許可</string>
|
||||
<string name="website_domain_name">ウェブサイトドメイン・ネーム</string>
|
||||
<string name="website_domain_name">ウェブサイトドメイン名</string>
|
||||
<string name="target_host">ターゲットホスト</string>
|
||||
<string name="target_port">ターゲットポート</string>
|
||||
<string name="use_ssl">SSLを使用</string>
|
||||
<string name="tunnel_summ_use_ssl">ターゲットに接続するためにSSLを使用</string>
|
||||
<string name="tunnel_parameters">トンネル調節</string>
|
||||
<string name="profile">プロファイル</string>
|
||||
<string name="profile_bulk">バルク接続(ダウンロード/ウェブサイト/BT)</string>
|
||||
<string name="profile_interactive">双方向接続</string>
|
||||
<string name="delay_connect">接続延滞</string>
|
||||
<string name="access_control">アクセスコントロール</string>
|
||||
<string name="tunnel_summ_delay_connect">要求/応答 接続用を有効</string>
|
||||
<string name="access_control">アクセス制御</string>
|
||||
<string name="restricted_access">許可されたアクセス</string>
|
||||
<string name="disabled">無効</string>
|
||||
<string name="whitelist">ホワイトリスト</string>
|
||||
<string name="blacklist">ブラックリスト</string>
|
||||
<string name="access_list">アクセスリスト</string>
|
||||
<string name="tunnel_summ_reject_inproxies">I2Pユーザー飲みに接続を許可</string>
|
||||
<string name="reject_inproxies">インプロキシを拒否する</string>
|
||||
<string name="tunnel_summ_reject_inproxies">I2Pユーザーのみに接続を許可</string>
|
||||
<string name="unique_local">ユニークローカル</string>
|
||||
<string name="tunnel_summ_unique_local">クライアントごとに固有のローカルホストIPを使用</string>
|
||||
<string name="multihome">マルチホーム</string>
|
||||
<string name="tunnel_summ_multihome">マルチホーム最適化を有効</string>
|
||||
<string name="client_connection_limits">接続数制限</string>
|
||||
@ -242,29 +306,54 @@
|
||||
<string name="unlimited">無制限</string>
|
||||
<string name="set_zero_for_unlimited">0=無制限</string>
|
||||
<string name="post_limits">投稿制限</string>
|
||||
<string name="limit_period">制限期間</string>
|
||||
<string name="client_posts_per_period">期間当たりのクライアントのPOST数</string>
|
||||
<string name="client_ban_length">クライアントの禁止の長さ</string>
|
||||
<string name="total_posts_per_period">期間当たりの合計POST数</string>
|
||||
<string name="total_ban_length">禁止の長さの合計</string>
|
||||
<string name="power_saving">パワーセーブ</string>
|
||||
<string name="delay_open">オープンを遅れさせる</string>
|
||||
<string name="tunnel_summ_delay_open">要求されるまでトンネルのオープンを遅らせる</string>
|
||||
<string name="reduce_quantity">数を減らす</string>
|
||||
<string name="tunnel_summ_reduce_quantity">アイドル時トンネルの数を減らす</string>
|
||||
<string name="idle_time">アイドル時間</string>
|
||||
<string name="num_minutes">%s /分</string>
|
||||
<string name="reduced_tunnel_quantity">減らしたトンネルの数量</string>
|
||||
<string name="close_tunnels">アイドル時トンネルを閉じる</string>
|
||||
<string name="new_keys_on_reopen">再開放で新しいキーにする</string>
|
||||
<string name="new_keys_on_reopen_conflict_title">持続的なキーを無効化する?</string>
|
||||
<string name="new_keys_on_reopen_conflict_msg">トンネルが永続キーを持つよう設定している間に新しいキーの再解放を有効にできません。永続キーを無効にしますか?</string>
|
||||
<string name="http_client">HTTPクライアント</string>
|
||||
<string name="tunnel_summ_user_agent">\'User-Agent\'ヘッダーを通す</string>
|
||||
<string name="tunnel_summ_referer">\'リファラー\'ヘッダーを通す</string>
|
||||
<string name="tunnel_summ_accept">\'Accept-*\'ヘッダーを通す</string>
|
||||
<string name="tunnel_summ_allow_ssl">I2PアドレスにSSLを使用可能にする</string>
|
||||
<string name="jump_url_list">ジャンプURLリスト</string>
|
||||
<string name="proxy_auth">プロキシ認証</string>
|
||||
<string name="tunnel_summ_proxy_auth">このプロキシを使用するにはログインが必要です</string>
|
||||
<string name="username">ユーザーネーム</string>
|
||||
<string name="username">ユーザー名</string>
|
||||
<string name="password">パスワード</string>
|
||||
<string name="outproxy_auth">外部プロキシ認証</string>
|
||||
<string name="tunnel_summ_outproxy_auth">ログインにはアウトプロキシが必要です</string>
|
||||
<string name="other">その他</string>
|
||||
<string name="signature_type">署名形式</string>
|
||||
<string name="custom_options">カスタムオプション</string>
|
||||
<string name="all">すべて</string>
|
||||
<string name="no_messages">本文がありません</string>
|
||||
<string name="no_error_messages">エラーメッセージなし</string>
|
||||
<plurals name="log_error_messages">
|
||||
<item quantity="other">%d エラーメッセージ、新しい順</item>
|
||||
</plurals>
|
||||
<plurals name="log_messages">
|
||||
<item quantity="other">%dメッセージ、新しい順</item>
|
||||
</plurals>
|
||||
<string name="log_entry">ログ項目</string>
|
||||
<string name="copy_logs">ログをコピー</string>
|
||||
<string name="i2p_android_error_logs">I2PAndroidエラーログ</string>
|
||||
<string name="i2p_android_logs">I2PAndroidログ</string>
|
||||
<string name="error_logs_copied_to_clipboard">エラーログはクリップボードにコピーされました</string>
|
||||
<string name="logs_copied_to_clipboard">ログはクリップボードにコピーされました</string>
|
||||
<string name="label_browser_configuration">ブラウザ設定</string>
|
||||
<string name="no_market_app">マーケットのアプリが見つかりませんでした。手動でインストールしてください。</string>
|
||||
<string name="unset">解除</string>
|
||||
</resources>
|
||||
|
@ -111,7 +111,7 @@
|
||||
<string name="notification_status_stopping_after_net">Sieć rozłączona, zatrzymywanie I2P</string>
|
||||
<string name="notification_status_shutdown_cancelled">Anulowano zamknięcie</string>
|
||||
<string name="notification_status_shutting_down">Trwa wyłączanie I2P</string>
|
||||
<string name="notification_status_bw">Przepustowość: %1$sBps pobieranie / %2$sBps wysyłanie</string>
|
||||
<string name="notification_status_bw">Przepustowość: %1$s B/s pobieranie / %2$s B/s wysyłanie</string>
|
||||
<string name="notification_status_peers">Peery: %1$d aktywnych, %2$d znanych</string>
|
||||
<string name="notification_status_expl">Tunelów rozpoznawczych: %1$d/%2$d</string>
|
||||
<string name="notification_status_client">Tunele klienta: %1$d/%2$d</string>
|
||||
|
@ -6,10 +6,10 @@
|
||||
<string name="welcome_new_install">Bem vindo ao I2P! Este aplicativo está em estágio ALPHA e não provê anonimidade forte. Por favor leia as notas e informações de licença.</string>
|
||||
<string name="welcome_new_version">Nova versão instalada. Por favor, leia as notas de lançamento. Versão:</string>
|
||||
<string name="label_tunnels">Túneis</string>
|
||||
<string name="label_status">Estado</string>
|
||||
<string name="label_status">Status</string>
|
||||
<string name="label_console">Painel</string>
|
||||
<string name="label_addresses">Endereços</string>
|
||||
<string name="label_addressbook">Livro de endereços</string>
|
||||
<string name="label_addressbook">Catálogo de endereços</string>
|
||||
<string name="label_i2ptunnel_client">Túneis clientes</string>
|
||||
<string name="label_i2ptunnel_server">Túneis servidor</string>
|
||||
<string name="label_logs">Registros</string>
|
||||
@ -32,9 +32,11 @@
|
||||
<string name="symmetric_nat">NAT simétrico</string>
|
||||
<string name="net_status_error_i2cp">Erro no gerenciador de clientes I2CP - verificar logs</string>
|
||||
<!--Parameter is a time, e.g. 32s or 2m-->
|
||||
<string name="net_status_error_skew">Desincronização do relógio de %s</string>
|
||||
<string name="net_status_error_unresolved_tcp">Endereço TCP não resolvido</string>
|
||||
<string name="net_status_error_private_tcp">Endereço TCP privado</string>
|
||||
<string name="net_status_warn_firewalled_inbound_tcp">Sob firewall com entrada via TCP ativada</string>
|
||||
<string name="net_status_warn_firewalled_floodfill">Sob firewall e enchimento por inundação</string>
|
||||
<string name="net_status_info_disconnected">Desconectado - verifique a conexão de rede</string>
|
||||
<string name="net_status_error_udp_port">Porta UDP em uso - altere as configurações e reinicie</string>
|
||||
<string name="net_status_error_no_active_peers">Sem pares ativos - verifique a conexão de rede e o firewall</string>
|
||||
@ -53,8 +55,10 @@
|
||||
<string name="upload">Carregar</string>
|
||||
<string name="configure_browser_title">Configurar o navegador?</string>
|
||||
<string name="configure_browser_for_i2p">Gostaria de configurar um navegador para visualizar sites da I2P? (Você pode também fazer isso depois a partir do menu ajuda.)</string>
|
||||
<string name="first_start_title">Parabéns em instalar o I2P!</string>
|
||||
<string name="first_start_welcome"><b>Seja bem-vindo!</b> Por favor<b>, tenha paciência enquanto o roteador I2P inicia e procura por pares.</string>
|
||||
<string name="configure_no_doze_title">Gerenciar otimizações de bateria?</string>
|
||||
<string name="configure_no_doze">I2P funciona melhor se continuar funcionando. Para evitar que o Android feche o I2P ao tentar economizar/salvar energia, você pode adicioná-lo à lista de exceções da bateria. Isto melhorá substancialmente a confiabilidade do aplicativo.\n\nMantenha I2P funcionando em segundo plano? (recomendado)</string>
|
||||
<string name="first_start_title">Parabéns por ter I2P instalado!</string>
|
||||
<string name="first_start_welcome"><b>Boas-Vindas ao I2P!</b> Por favor <b>tenha paciência</b> enquanto I2P inicia e procura por pares.</string>
|
||||
<string name="first_start_read">Enquanto você está esperando, por favor leia as notas de lançamento e a página de boas vindas.</string>
|
||||
<string name="first_start_faq">Uma vez que você tenha túneis clientes, por favor <b>verifique</b> nosso FAQ:</string>
|
||||
<string name="first_start_faq_nonanon">Ou use esse link não-anonimo se você não deseja esperar por túneis:</string>
|
||||
@ -70,7 +74,7 @@
|
||||
<string name="action_i2ptunnel_restart_all">Reiniciar todos os túneis</string>
|
||||
<string name="action_reload">Recarregar</string>
|
||||
<string name="action_refresh">Atualizar</string>
|
||||
<string name="hint_search_addressbook">Procurar por livro de endereços</string>
|
||||
<string name="hint_search_addressbook">Pesquisar no catálogo de endereços</string>
|
||||
<string name="action_reload_subscriptions">Recarregar inscriçoes</string>
|
||||
<string name="news_last_updated">Última atualização das noticias a %s atrás</string>
|
||||
<string name="news_last_checked">Última verificação das noticias a %s atrás</string>
|
||||
@ -85,6 +89,7 @@
|
||||
<string name="graphs_not_ready">Gráficos não estão prontos ainda. Tente novamente.</string>
|
||||
<string name="statistics">Estatísticas</string>
|
||||
<string name="routers">Roteadores</string>
|
||||
<string name="leasesets">LeaseSets</string>
|
||||
<string name="countries">Países</string>
|
||||
<string name="country">País</string>
|
||||
<string name="transport">Transporte</string>
|
||||
@ -93,11 +98,12 @@
|
||||
<string name="count">Contagem</string>
|
||||
<string name="tname_0">Oculto ou inicializando</string>
|
||||
<string name="netdb_routers_empty">Sem roteadores em seu NetDB.</string>
|
||||
<string name="netdb_leases_empty">Não tem LeaseSets na sua NetDB.</string>
|
||||
<string name="notification_status_starting">O roteador I2P está inicializando</string>
|
||||
<string name="notification_status_restarting">O roteador I2P está reiniciando</string>
|
||||
<string name="notification_status_waiting">O roteador I2P está esperando por uma conexão de rede</string>
|
||||
<string name="notification_status_starting_after_waiting">Conectado a rede, inicializando o roteador I2P</string>
|
||||
<string name="notification_status_running">Software I2P em execução</string>
|
||||
<string name="notification_status_running">I2P está em execução</string>
|
||||
<string name="notification_status_client_ready">Os túneis de cliente estão prontos</string>
|
||||
<string name="notification_status_client_down">Os túneis de cliente estão fora de serviço</string>
|
||||
<string name="notification_status_graceful">Interrompendo o roteador I2P em %s</string>
|
||||
@ -130,6 +136,7 @@
|
||||
<string name="settings_desc_sharePercent">Percentual da largura de banda compartilhada (por omissão=80)</string>
|
||||
<string name="settings_dialog_sharePercent">Porcentagem de banda para comprtilhar</string>
|
||||
<string name="settings_desc_upnp">Abrir portas do firewall automaticamente</string>
|
||||
<string name="settings_label_logging">Registo de Eventos</string>
|
||||
<string name="settings_label_default_log_level">Nível padrão do log</string>
|
||||
<string name="settings_label_appearance">Aparência</string>
|
||||
<string name="settings_label_language">Idioma</string>
|
||||
@ -140,12 +147,15 @@
|
||||
<string name="settings_label_transports">Transportes</string>
|
||||
<string name="settings_label_maxConns">Número máximo de conexões</string>
|
||||
<string name="settings_label_i2cp">Interface do I2CP</string>
|
||||
<string name="settings_desc_exploratory_pool">Parêmetros de tunel</string>
|
||||
<string name="settings_desc_i2cp">Permitir que aplicações de terceiros criem túneis (requer reinicialização do roteador)</string>
|
||||
<string name="settings_label_exploratory_pool">Reservatório exploratório</string>
|
||||
<string name="settings_desc_exploratory_pool">Parâmetros do túnel</string>
|
||||
<string name="settings_label_expl_inbound">Túneis entrantes</string>
|
||||
<string name="settings_label_expl_outbound">Tuneis de saída</string>
|
||||
<string name="settings_label_expl_outbound">Túneis de saída</string>
|
||||
<string name="settings_label_expl_length">Comprimento</string>
|
||||
<string name="settings_summ_expl_length">%s saltos</string>
|
||||
<string name="settings_desc_expl_length">Quantos saltos usar</string>
|
||||
<string name="settings_label_expl_lengthVariance">Variação do salto</string>
|
||||
<string name="settings_summ_expl_lengthVariance">%s</string>
|
||||
<string name="settings_desc_expl_lengthVariance">Quantos saltos aleatórios a adicionar</string>
|
||||
<string name="settings_label_expl_quantity">Quantidade</string>
|
||||
@ -155,11 +165,11 @@
|
||||
<string name="settings_summ_expl_backupQuantity">%s túneis</string>
|
||||
<string name="settings_desc_expl_backupQuantity">Quantos backups de túneis</string>
|
||||
<string name="settings_need_transport_enabled">Você deve ter pelo menos um transporte ativado</string>
|
||||
<string name="settings_router_restart_required">Por favor, reinicialize o software I2P para aplicar as alterações</string>
|
||||
<string name="settings_router_restart_required">Por favor reinicie I2P para aplicar as mudanças</string>
|
||||
<string name="menu_about">Sobre</string>
|
||||
<string name="about_version">Versão:</string>
|
||||
<string name="about_project">Lar do projeto:</string>
|
||||
<string name="about_bugs">Bugs e suporte:</string>
|
||||
<string name="about_bugs">Falhas e Suporte:</string>
|
||||
<string name="about_helpwanted">Procura-se ajuda!</string>
|
||||
<string name="about_volunteer">Quer ajudar a tornar o aplicativo melhor? Seja voluntário no fórum Android:</string>
|
||||
<string name="about_donate">Quer doar dinheiro ou bitcoins para comprar mais dispositivos Android para desenvolvimento e testes? Vá para:</string>
|
||||
@ -203,7 +213,7 @@
|
||||
<string name="i2ptunnel_delete_confirm_message">Apagar túnel?</string>
|
||||
<string name="i2ptunnel_delete_confirm_button">Apagar túnel</string>
|
||||
<string name="i2ptunnel_no_tunnel_details">Não foi possível carregar os detalhes do túnel</string>
|
||||
<string name="i2ptunnel_wizard_k_client_server">Cliente ou servidor</string>
|
||||
<string name="i2ptunnel_wizard_k_client_server">Cliente ou Servidor</string>
|
||||
<string name="i2ptunnel_wizard_v_client">Túnel cliente</string>
|
||||
<string name="i2ptunnel_wizard_v_server">Túnel servidor</string>
|
||||
<string name="i2ptunnel_wizard_k_type">Tipo de túnel</string>
|
||||
@ -223,6 +233,8 @@
|
||||
<string name="enabled">Ativado</string>
|
||||
<string name="i2ptunnel_wizard_desc_name">O nome do túnel, para identificação na lista de túneis.</string>
|
||||
<string name="i2ptunnel_wizard_desc_desc">Uma descrição do túnel. Isso é opcional e puramente informativo.</string>
|
||||
<string name="i2ptunnel_wizard_desc_dest">Digite o destino I2P do serviço ao qual este túnel cliente deve se conectar. Esta pode ser a chave base 64 do destino, ou um host I2P de seu catálogo de endereços.</string>
|
||||
<string name="i2ptunnel_wizard_desc_outproxies">Se você souber de algum proxies de saída para este tipo de túnel (seja HTTP ou SOCKS), digite-os. Separe os múltiplos proxies com vírgulas.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_host">Esse é o IP no qual o serviço está rodando, isto está geralmente na mesma maquina então 127.0.0.1 é autopreenchido.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_port">Essa é a porta pela qual o serviço está aceitando conexões.</string>
|
||||
<string name="i2ptunnel_wizard_desc_reachable_on">Isso limita quais computadores ou smartphones podem acessar esse túnel</string>
|
||||
@ -233,6 +245,7 @@
|
||||
<string name="i2ptunnel_view_target">Alvo</string>
|
||||
<string name="i2ptunnel_view_access_point">Ponto de acesso</string>
|
||||
<string name="i2ptunnel_view_autostart">Auto-inicialização</string>
|
||||
<string name="address_copied_to_clipboard">Endereço copiado para a área de transferência</string>
|
||||
<string name="edit_tunnel">Editar túnel</string>
|
||||
<string name="name">Nome</string>
|
||||
<string name="description">Descrição</string>
|
||||
@ -273,7 +286,7 @@
|
||||
<string name="blacklist">Lista de proibições</string>
|
||||
<string name="access_list">Lista de acessos</string>
|
||||
<string name="reject_inproxies">Rejeitar proxies de entrada</string>
|
||||
<string name="tunnel_summ_reject_inproxies">Permitir que apenas usuários da I2P se conectem</string>
|
||||
<string name="tunnel_summ_reject_inproxies">Permitir que apenas usuários I2P se conectem</string>
|
||||
<string name="unique_local">Local único</string>
|
||||
<string name="tunnel_summ_unique_local">Usar IPs de host locais únicos para cada cliente</string>
|
||||
<string name="multihome">Multihome</string>
|
||||
@ -294,6 +307,10 @@
|
||||
<string name="set_zero_for_unlimited">Especifique 0 para ilimitado</string>
|
||||
<string name="post_limits">Limites de POST</string>
|
||||
<string name="limit_period">Período limite</string>
|
||||
<string name="client_posts_per_period">POSTs de clientes por período</string>
|
||||
<string name="client_ban_length">Duração do banir/exclusão do cliente</string>
|
||||
<string name="total_posts_per_period">Total de POSTs por período</string>
|
||||
<string name="total_ban_length">Duração total do banir/exclusão</string>
|
||||
<string name="power_saving">Economia de energia</string>
|
||||
<string name="delay_open">Atrasar a abertura</string>
|
||||
<string name="tunnel_summ_delay_open">Atrasar a abertura do túnel até ser utilizado</string>
|
||||
@ -316,7 +333,7 @@
|
||||
<string name="tunnel_summ_proxy_auth">É necessário um login para usar esse proxy</string>
|
||||
<string name="username">Nome de usuário</string>
|
||||
<string name="password">Senha</string>
|
||||
<string name="outproxy_auth">Autorização de proxy de saída</string>
|
||||
<string name="outproxy_auth">Autorização do proxy de saída</string>
|
||||
<string name="tunnel_summ_outproxy_auth">Autenticação necessária para o proxy de saída</string>
|
||||
<string name="other">Outros</string>
|
||||
<string name="signature_type">Tipo de assinatura</string>
|
||||
@ -324,14 +341,21 @@
|
||||
<string name="all">Todos</string>
|
||||
<string name="no_messages">Sem mensagens</string>
|
||||
<string name="no_error_messages">Nenhuma mensagem de erro</string>
|
||||
<plurals name="log_error_messages">
|
||||
<item quantity="one">Uma mensagem de erro</item>
|
||||
<item quantity="other">%d mensagens de erro, a primeira a mais recente</item>
|
||||
</plurals>
|
||||
<plurals name="log_messages">
|
||||
<item quantity="one">Uma mensagem</item>
|
||||
<item quantity="other">%d mensagens, mais novas primeiro</item>
|
||||
</plurals>
|
||||
<string name="log_entry">Entrada no log</string>
|
||||
<string name="copy_logs">Copiar logs</string>
|
||||
<string name="error_logs_copied_to_clipboard">Logs de erro copiados para a área de transferência</string>
|
||||
<string name="logs_copied_to_clipboard">Logs copiados para a área de transferência</string>
|
||||
<string name="i2p_android_error_logs">Registros de erros do I2P Android</string>
|
||||
<string name="i2p_android_logs">Registros do I2P Android</string>
|
||||
<string name="error_logs_copied_to_clipboard">Registros dos erros copiados para a área de transferência</string>
|
||||
<string name="logs_copied_to_clipboard">Registros copiados para a área de transferência</string>
|
||||
<string name="label_browser_configuration">Configuração do navegador</string>
|
||||
<string name="no_market_app">Nenhum aplicativo de mercado encontrado, por favor, instale manualmente</string>
|
||||
<string name="unset">Desligado</string>
|
||||
</resources>
|
||||
|
@ -55,6 +55,8 @@
|
||||
<string name="upload">Enviar</string>
|
||||
<string name="configure_browser_title">Configurar o navegador?</string>
|
||||
<string name="configure_browser_for_i2p">Gostaria de configurar um navegador para ver sites I2P? (Pode fazê-lo mais tarde através do menu de ajuda.)</string>
|
||||
<string name="configure_no_doze_title">Gerenciar otimizações de bateria?</string>
|
||||
<string name="configure_no_doze">I2P funciona melhor se continuar funcionando. Para evitar que o Android feche o I2P ao tentar economizar/salvar energia, você pode adicioná-lo à lista de exceções da bateria. Isto melhorá substancialmente a confiabilidade do aplicativo.\n\nMantenha I2P funcionando em segundo plano? (recomendado)</string>
|
||||
<string name="first_start_title">Parabéns por ter instalado o I2P!</string>
|
||||
<string name="first_start_welcome"><b>Bem vindo ao I2P!</b> Por favor <b>tenha paciência</b> enquanto o I2P arranca e encontra outros nós na rede.</string>
|
||||
<string name="first_start_read">Enquanto espera, pode ler as notas de lançamento e a página de boas vindas.</string>
|
||||
@ -145,6 +147,7 @@
|
||||
<string name="settings_label_transports">Transportes</string>
|
||||
<string name="settings_label_maxConns">Nr. máx. de ligações</string>
|
||||
<string name="settings_label_i2cp">Interface I2CP</string>
|
||||
<string name="settings_desc_i2cp">Permitir que aplicações de terceiros criem túneis (requer reinicialização do roteador)</string>
|
||||
<string name="settings_label_exploratory_pool">Poço exploratório</string>
|
||||
<string name="settings_desc_exploratory_pool">Parâmetros dos túneis</string>
|
||||
<string name="settings_label_expl_inbound">Túneis de entrada</string>
|
||||
@ -209,6 +212,7 @@
|
||||
<string name="i2ptunnel_msg_tunnel_stopping">Parar túnel</string>
|
||||
<string name="i2ptunnel_delete_confirm_message">Apagar túnel?</string>
|
||||
<string name="i2ptunnel_delete_confirm_button">Apagar túnel </string>
|
||||
<string name="i2ptunnel_no_tunnel_details">Não foi possível carregar os detalhes do túnel</string>
|
||||
<string name="i2ptunnel_wizard_k_client_server">Cliente ou Servidor</string>
|
||||
<string name="i2ptunnel_wizard_v_client">Túnel cliente </string>
|
||||
<string name="i2ptunnel_wizard_v_server">Túnel servidor </string>
|
||||
@ -241,6 +245,7 @@
|
||||
<string name="i2ptunnel_view_target">Alvo</string>
|
||||
<string name="i2ptunnel_view_access_point">Ponto de acesso</string>
|
||||
<string name="i2ptunnel_view_autostart">Iniciar automaticamente</string>
|
||||
<string name="address_copied_to_clipboard">Endereço copiado para a área de transferência</string>
|
||||
<string name="edit_tunnel">Alterar túnel </string>
|
||||
<string name="name">Nome</string>
|
||||
<string name="description">Descrição </string>
|
||||
@ -351,5 +356,6 @@
|
||||
<string name="error_logs_copied_to_clipboard">Registos de erro copiados para a área de transferência</string>
|
||||
<string name="logs_copied_to_clipboard">Registos copiados para a área de transferência</string>
|
||||
<string name="label_browser_configuration">Configuração do navegador</string>
|
||||
<string name="no_market_app">Nenhum aplicativo de mercado encontrado, por favor, instale manualmente</string>
|
||||
<string name="unset">Desselecionar</string>
|
||||
</resources>
|
||||
|
@ -1,26 +1,17 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<resources>
|
||||
<string name="app_name">I2P</string>
|
||||
<string name="desc_i2p_logo">Logoja e I2P\'së</string>
|
||||
<string name="welcome_new_install">Mirë se vini në I2P! Ky aplikacion është i tipit ALPHA sopftware dhe nuk mund të ju shërbej me anonimitet të plotë. Ju lutem lexoni notat dhe informacionin e lisencës. </string>
|
||||
<string name="welcome_new_version">Tip/version i ri është instaluar. Ju lutem lexoni notat e lëshimit .Versioni:</string>
|
||||
<string name="label_tunnels">Tunelet</string>
|
||||
<string name="label_status">Statusi</string>
|
||||
<string name="label_tunnels">Tunele</string>
|
||||
<string name="label_status">Gjendje</string>
|
||||
<string name="label_console">Konsolë</string>
|
||||
<string name="label_addresses">Adresa</string>
|
||||
<string name="label_addressbook">Libri i adresave. </string>
|
||||
<string name="label_i2ptunnel_client">Tunelet e klientëve</string>
|
||||
<string name="label_i2ptunnel_server">Tunelet e Serverave. </string>
|
||||
<string name="label_logs">Logot</string>
|
||||
<string name="label_error_logs">Logot e gabimeve</string>
|
||||
<string name="label_news">Lajmet. </string>
|
||||
<string name="label_peers_status">Të barabartit/shokët. </string>
|
||||
<string name="label_release_notes">Shënime lëshimi</string>
|
||||
<string name="label_licenses">Lisencat</string>
|
||||
<string name="label_browse">Shfletimi</string>
|
||||
<string name="label_graphs">Grafikët</string>
|
||||
<string name="button_router_off">Mbaje tastin për ta filluar I2P\'në</string>
|
||||
<string name="button_router_on">I2P është në funkcion (mbaje tastin gjatë për ta ndalur) </string>
|
||||
<string name="label_addressbook">Libër adresash</string>
|
||||
<string name="label_logs">Shënime</string>
|
||||
<string name="label_news">Lajme</string>
|
||||
<string name="label_peers_status">Ortakë</string>
|
||||
<string name="label_release_notes">Shënime Hedhjeje Në Qarkullim</string>
|
||||
<string name="label_licenses">Licenca</string>
|
||||
<string name="label_browse">Shfletoni</string>
|
||||
<string name="label_graphs">Grafikë</string>
|
||||
<string name="hidden">Fshehur</string>
|
||||
<string name="testing">Po provohet</string>
|
||||
<!--Parameter is a time, e.g. 32s or 2m-->
|
||||
@ -30,169 +21,74 @@
|
||||
<string name="char_server_tunnel">S</string>
|
||||
<string name="download">Shkarkim</string>
|
||||
<string name="upload">Ngarkoni</string>
|
||||
<string name="first_start_title">Urime që arritët ta instaloni I2P\'në!</string>
|
||||
<string name="first_start_title">Urime që arritët ta instaloni I2P-në!</string>
|
||||
<string name="first_start_welcome"><b>Mirë se vini në I2P!<b> Ju lutem <b>duroni<b> deri sa I2P të boot dhe tåe gjejë peers, </string>
|
||||
<string name="first_start_read">Deri sa jeni duke pritur, ju lutem lexoni notat që janë lëshuar dhe vizitoni faqen e mirëseardhjes. </string>
|
||||
<string name="first_start_faq">Kur ti keni tunelët për klientë, ju lutem <b>vështroni<b> FAQ\'un tonë: </string>
|
||||
<string name="first_start_faq_nonanon">Ose mund ta përdorni këtë link që nuk mund të ku sigurojë anonimitetin, nëse nuk keni durim të pritni për tunelët: </string>
|
||||
<string name="first_start_irc">Drejtoni IRC klientin tuaj te <b> localhost:66688<b> dhe na përshëndetni në: </string>
|
||||
<string name="action_search">Kërko</string>
|
||||
<string name="action_add">Shto</string>
|
||||
<string name="action_edit">Përmirso</string>
|
||||
<string name="action_delete">Fshij</string>
|
||||
<string name="action_i2ptunnel_start">Starto tunelin</string>
|
||||
<string name="action_i2ptunnel_stop">Ndalo tunelin</string>
|
||||
<string name="action_i2ptunnel_start_all">Starto të gjithë tunelët</string>
|
||||
<string name="action_i2ptunnel_stop_all">Ndalo të gjithë tunelët </string>
|
||||
<string name="action_i2ptunnel_restart_all">Restarto të gjithë tunelët</string>
|
||||
<string name="action_reload">Ringarko</string>
|
||||
<string name="action_refresh">Ripajis</string>
|
||||
<string name="hint_search_addressbook">Kërko në librin e adresave</string>
|
||||
<string name="action_reload_subscriptions">Rifresko abonimet</string>
|
||||
<string name="router_not_running">Routeri nuk është duke punuar.</string>
|
||||
<string name="stats_not_ready">menaxheri i statistikave nuk është gati ende. Provoni përsëri më vone. </string>
|
||||
<string name="no_graphs_configured">Asnjë graf nuk është konfigururar. Mund të zgjedhni statistikat për graf në menynë e cilësimeve. Ndryshimet do të kenë efekt pas 60 sekondave.</string>
|
||||
<string name="configure_graphs">Konfiguro grafët</string>
|
||||
<string name="action_add">Shtoje</string>
|
||||
<string name="action_edit">Përpunojeni</string>
|
||||
<string name="action_delete">Fshije</string>
|
||||
<string name="action_reload">Ringarkoje</string>
|
||||
<string name="action_refresh">Rifreskoje</string>
|
||||
<string name="country">Vendi</string>
|
||||
<string name="version">Version</string>
|
||||
<string name="netdb_routers_empty">Nuk ka routerë në NetDB\'në tuaj. </string>
|
||||
<string name="netdb_leases_empty">Nuk ka LeaseSets në NetDB\'në tuaj.</string>
|
||||
<string name="notification_status_peers">Peers: %1$d aktivë, %2$d të njohur</string>
|
||||
<string name="notification_status_expl">Tunelët zbulues: %1$d/%2$d</string>
|
||||
<string name="notification_status_client">Tunelët për klientë: %1$d/%2$d</string>
|
||||
<string name="menu_settings">Cilësimet</string>
|
||||
<string name="settings_enable">Mundëso</string>
|
||||
<string name="settings_desc_subscriptions">URL`të për abonim</string>
|
||||
<string name="settings_label_bandwidth_net">Bandwidth dhe rrjeti. </string>
|
||||
<string name="settings_label_bandwidth">Bandwidth</string>
|
||||
<string name="settings_label_bw_inbound">Shpejtësia hyrëse</string>
|
||||
<string name="settings_desc_bw_inbound">Shpejtësia hyrëse maksimale</string>
|
||||
<string name="settings_label_bw_outbound">Shpejtësia dalëse</string>
|
||||
<string name="settings_desc_bw_outbound">Shpejtësia dalëse maksimale</string>
|
||||
<string name="settings_label_network">Rrjeti </string>
|
||||
<string name="count">Numër</string>
|
||||
<string name="menu_settings">Rregullime</string>
|
||||
<string name="settings_enable">Aktivizoje</string>
|
||||
<string name="settings_label_bandwidth">Gjerësi bande</string>
|
||||
<string name="settings_label_network">Rrjet</string>
|
||||
<string name="settings_label_hiddenMode">Pjesëmarrje</string>
|
||||
<string name="settings_desc_hiddenMode">Fike mode\'in e fshehur</string>
|
||||
<string name="settings_label_maxPartTunnels">Pjesëmarrja maksimale e tuneleve</string>
|
||||
<string name="settings_desc_maxPartTunnels">Pjesëmarrja maksimale e tunelëve në (default=20)</string>
|
||||
<string name="settings_dialog_maxPartTunnels">Pjesëmarrja maksimale e tuneleve në</string>
|
||||
<string name="settings_label_sharePercent">Përqindja e shpërndarjes</string>
|
||||
<string name="settings_desc_sharePercent">Përqindja e Bandwidth\'it për shpërndarje (default=80)</string>
|
||||
<string name="settings_dialog_sharePercent">Përqindja e Bandwidth\'it për shpërndarje</string>
|
||||
<string name="settings_desc_upnp">Hapni portalet e firewall\'ëve automatikisht</string>
|
||||
<string name="settings_label_logging">Logimet</string>
|
||||
<string name="settings_label_default_log_level">Niveli i logimit mesatar</string>
|
||||
<string name="settings_dialog_sharePercent">Përqindje gjerësie bande për t’u ndarë me të tjerë</string>
|
||||
<string name="settings_label_appearance">Paraqitja</string>
|
||||
<string name="settings_label_language">Gjuhë</string>
|
||||
<string name="settings_default">Parazgjedhje</string>
|
||||
<string name="settings_label_advanced">I/e avancuar</string>
|
||||
<string name="settings_label_showStats">Statistikat e Router\'ëve</string>
|
||||
<string name="settings_summ_showStats">Paraqiti cilësitë e avancuara në konsolin kryesor</string>
|
||||
<string name="settings_label_transports">Transportimet</string>
|
||||
<string name="settings_label_maxConns">Lidhjet maksimale</string>
|
||||
<string name="settings_label_i2cp">Ndërfaqja e I2CP\'së</string>
|
||||
<string name="settings_label_exploratory_pool">Mjet zbulimi</string>
|
||||
<string name="settings_desc_exploratory_pool">Parametrat e tunelëve</string>
|
||||
<string name="settings_label_expl_inbound">Tunelët në hyrje</string>
|
||||
<string name="settings_label_expl_outbound">Tunelët në dalje</string>
|
||||
<string name="settings_label_expl_length">Gjatësia</string>
|
||||
<string name="settings_summ_expl_length">%s hope</string>
|
||||
<string name="settings_desc_expl_length">Sa hope për tu përdorur</string>
|
||||
<string name="settings_label_expl_lengthVariance">Variacionet e hopeve</string>
|
||||
<string name="settings_summ_expl_lengthVariance">%s</string>
|
||||
<string name="settings_desc_expl_lengthVariance">Sa hope të i inkludojmë rëndom</string>
|
||||
<string name="settings_label_expl_quantity">Kvantitet</string>
|
||||
<string name="settings_summ_expl_quantity">%s tunelet</string>
|
||||
<string name="settings_desc_expl_quantity">Sa tunele</string>
|
||||
<string name="settings_label_expl_backupQuantity">Kvantiteti i rezervave</string>
|
||||
<string name="settings_summ_expl_backupQuantity">%s tunele</string>
|
||||
<string name="settings_desc_expl_backupQuantity">Sa rezerva të tuneleve</string>
|
||||
<string name="menu_about">Për</string>
|
||||
<string name="about_version">Variant:</string>
|
||||
<string name="about_project">Projekti Home:</string>
|
||||
<string name="about_bugs">Bugs dhe Ndihmuesi:</string>
|
||||
<string name="about_helpwanted">Kërkohet Ndihmë!</string>
|
||||
<string name="about_volunteer">Doni të ndihmoni aplikacionin të përmirësohet? Ndihmo vullnetarisht në forumin e Android\'it:</string>
|
||||
<string name="about_donate">Doni të jipni para ose bitcoins për të blerë më shumë pajisje të Android\'it për zhvillim dhe testim? Shko te:</string>
|
||||
<string name="settings_label_advanced">Të mëtejshme</string>
|
||||
<string name="settings_label_transports">Bartje</string>
|
||||
<string name="settings_label_expl_length">Gjatësi</string>
|
||||
<string name="settings_label_expl_quantity">Sasi</string>
|
||||
<string name="settings_label_expl_backupQuantity">Sasi kopjeruajtjeje</string>
|
||||
<string name="menu_about">Mbi</string>
|
||||
<string name="about_version">Versioni:</string>
|
||||
<string name="menu_help">Ndihmë</string>
|
||||
<string name="general">Të përgjithshme</string>
|
||||
<string name="addressbook_search_header">%s u gjetën</string>
|
||||
<string name="addressbook_add_wizard_k_name">Emër</string>
|
||||
<string name="addressbook_add_wizard_k_destination">Destinacioni</string>
|
||||
<string name="addressbook_add_wizard_desc_name">Emri</string>
|
||||
<string name="addressbook_add_wizard_desc_destination">Paste B64\'në të Destinacionit këtu. Nëse keni Menaxher Filesh të instaluar, mund të shfletoni për një fil teksti që përmban B64në.</string>
|
||||
<string name="nsu_iae_illegal_char">Emri i host\'it \"%1$s\" përmban karakterë ilegalë %2$s</string>
|
||||
<string name="nsu_iae_cannot_start_with">Emri i host\'it nuk mund të fillojë me \"%s\"</string>
|
||||
<string name="nsu_iae_cannot_end_with">Emri i host\'it nuk mund të përfundojë me \"%s\"</string>
|
||||
<string name="nsu_iae_cannot_contain">Emri i host\'it nuk mund të përmban \"%s\"</string>
|
||||
<string name="nsu_iae_requires_conversion">Emri i hostit \"%s\" i duhet konvertim në ASCII por libraria e konvertimeve është e padisponueshme në këtë verzion të Android\'it. </string>
|
||||
<string name="i2ptunnel_type_client">Klient standard</string>
|
||||
<string name="i2ptunnel_type_httpclient">Klient i HTTP\'së</string>
|
||||
<string name="i2ptunnel_type_ircclient">Klient i IRC\'së</string>
|
||||
<string name="i2ptunnel_type_server">Server i rëndomtë</string>
|
||||
<string name="i2ptunnel_type_httpserver">Server HTTP</string>
|
||||
<string name="i2ptunnel_type_sockstunnel">Proksi SOCKS 4/4a/5</string>
|
||||
<string name="i2ptunnel_type_socksirctunnel">Proksi SOCKS IRC</string>
|
||||
<string name="i2ptunnel_type_connectclient">Proksi CONNECT/SSL/HTTPS</string>
|
||||
<string name="i2ptunnel_type_ircserver">IRC server </string>
|
||||
<string name="i2ptunnel_type_streamrclient">Klienti i Streamr\'it</string>
|
||||
<string name="i2ptunnel_type_streamrserver">Serveri i Streamr\'it</string>
|
||||
<string name="i2ptunnel_type_httpbidirserver">HTTP bidir</string>
|
||||
<string name="i2ptunnel_not_initialized">Tunelët nuk janë inicializuar ende, ju lutem ringarkoni pas dy minutave.</string>
|
||||
<string name="i2ptunnel_new_tunnel">Tunel i Ri</string>
|
||||
<string name="i2ptunnel_msg_config_saved">Ndryshimet në konigurim janë ruajtur</string>
|
||||
<string name="i2ptunnel_msg_config_save_failed">Dështoi të ruaj konfigurimin</string>
|
||||
<string name="i2ptunnel_msg_tunnel_starting">Duke startuar tunelin</string>
|
||||
<string name="i2ptunnel_msg_tunnel_stopping">Duke ndalur tunelin</string>
|
||||
<string name="i2ptunnel_delete_confirm_message">Fshij tunelin? </string>
|
||||
<string name="i2ptunnel_delete_confirm_button">Fshij tunelin </string>
|
||||
<string name="i2ptunnel_wizard_k_client_server">Klient ose Server</string>
|
||||
<string name="i2ptunnel_wizard_v_client">Tuneli i klientëve</string>
|
||||
<string name="i2ptunnel_wizard_v_server">Tuneli i serverëve</string>
|
||||
<string name="i2ptunnel_wizard_k_type">Tipi i tunelit</string>
|
||||
<string name="addressbook_add_wizard_k_destination">Vendmbërritje</string>
|
||||
<string name="i2ptunnel_type_ircclient">Klient IRC</string>
|
||||
<string name="i2ptunnel_type_server">Shërbyes standard</string>
|
||||
<string name="i2ptunnel_type_httpserver">Shërbyes HTTP</string>
|
||||
<string name="i2ptunnel_type_sockstunnel">Ndërmjetës SOCKS 4/4a/5</string>
|
||||
<string name="i2ptunnel_type_socksirctunnel">Ndërmjetës SOCKS IRC</string>
|
||||
<string name="i2ptunnel_type_connectclient">Ndërmjetës CONNECT/SSL/HTTPS</string>
|
||||
<string name="i2ptunnel_type_ircserver">Shërbyes IRC</string>
|
||||
<string name="i2ptunnel_type_streamrclient">Klient Streamr</string>
|
||||
<string name="i2ptunnel_type_streamrserver">Shërbyes Streamr</string>
|
||||
<string name="i2ptunnel_not_initialized">Tunelet s’janë gatitur ende, ju lutemi, ringarkojeni pas dy minutash.</string>
|
||||
<string name="i2ptunnel_msg_tunnel_starting">Po niset tunel</string>
|
||||
<string name="i2ptunnel_msg_tunnel_stopping">Po ndalet tunel</string>
|
||||
<string name="i2ptunnel_wizard_k_type">Lloj tuneli</string>
|
||||
<string name="i2ptunnel_wizard_k_name">Emër</string>
|
||||
<string name="i2ptunnel_wizard_k_desc">Përshkrim</string>
|
||||
<string name="i2ptunnel_wizard_k_dest">Destinacion</string>
|
||||
<string name="i2ptunnel_wizard_k_outproxies">Prokurët jashtësor</string>
|
||||
<string name="i2ptunnel_wizard_k_target_host">Host\'i i shënjuar</string>
|
||||
<string name="i2ptunnel_wizard_k_target_port">Portalja e shenjuar</string>
|
||||
<string name="i2ptunnel_wizard_k_reachable_on">Mund të arrihet në </string>
|
||||
<string name="i2ptunnel_wizard_k_binding_port">Portalja lidhëse </string>
|
||||
<string name="i2ptunnel_wizard_k_auto_start">Autostarto</string>
|
||||
<string name="next">Tjetër</string>
|
||||
<string name="prev">Mëparshme</string>
|
||||
<string name="finish">Paraqit</string>
|
||||
<string name="review">Rishikim</string>
|
||||
<string name="enabled">I/e mundësuar</string>
|
||||
<string name="i2ptunnel_wizard_desc_name">Emri i tunelit, për identifikim në listën e tuneleve.</string>
|
||||
<string name="i2ptunnel_wizard_desc_desc">Një përshkrim i tunelit. Kjo është opcionale dhe vetëm informative.</string>
|
||||
<string name="i2ptunnel_wizard_desc_outproxies">Nëse keni njohuri për ndonjë outproksë për këtë lloj tuneli (ja HTTP ose SOCKS), plotësoni. Proksa të veqantë dhe shumëfishtë med presje.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_host">Kjo është IP\'ja ku shërbimi juaj është duke punuar, kjo është në të njëjtin kompjuter kështu që 127.0.0.1 është vetëmbushur. </string>
|
||||
<string name="i2ptunnel_wizard_desc_target_port">Kjo është portalja ku shërbimi pranon lidhjet. </string>
|
||||
<string name="i2ptunnel_wizard_desc_reachable_on">Kjo e kufizon çfarë kompjuterë ose smartfonë mund të kenë qasje në këtë tunel. </string>
|
||||
<string name="i2ptunnel_wizard_desc_binding_port">Kjo është portalja ku tuneli i klientëve do të ketë qasje lokalisht. Kjo është poashtu portalja e klientëve për tunelin e serverëve HTTP bidir.</string>
|
||||
<string name="i2ptunnel_wizard_desc_auto_start">Të startojë tuneli njëkohësisht me router\'in?</string>
|
||||
<string name="i2ptunnel_wizard_submit_confirm_message">Krijo tunel?</string>
|
||||
<string name="i2ptunnel_wizard_submit_confirm_button">Krijo tunel</string>
|
||||
<string name="i2ptunnel_wizard_k_dest">Vendmbërritje</string>
|
||||
<string name="next">Pasuesi</string>
|
||||
<string name="prev">I mëparshmi</string>
|
||||
<string name="finish">Parashtroje</string>
|
||||
<string name="review">Shqyrtoni</string>
|
||||
<string name="enabled">E aktivizuar</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_host">Kjo është IP-ja në të cilën xhiron shërbimi juaj, zakonisht bëhet fjalë për të njëjtën makinë, ndaj 127.0.0.1 është vetëplotësuar.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_port">Kjo është porta në të cilën shërbimi po pranon lidhje. </string>
|
||||
<string name="i2ptunnel_view_target">Objektiv</string>
|
||||
<string name="i2ptunnel_view_autostart">Autostarto</string>
|
||||
<string name="name">Emër</string>
|
||||
<string name="description">Përshkrim</string>
|
||||
<string name="auto_start">Autostarto</string>
|
||||
<string name="reachable_on">Mund të arrihet në </string>
|
||||
<string name="outproxies">Prokurët jashtësor</string>
|
||||
<string name="target_host">Host\'i i shënjuar</string>
|
||||
<string name="target_port">Portalja e shenjuar</string>
|
||||
<string name="irc">IRC</string>
|
||||
<string name="use_ssl">Përdorni SSL</string>
|
||||
<string name="tunnel_parameters">Parametrat e tunelëve</string>
|
||||
<string name="profile">Profil</string>
|
||||
<string name="access_control">Kontrolli i qasjes</string>
|
||||
<string name="disabled">E çaktivizuar</string>
|
||||
<string name="whitelist">Listë lejimesh</string>
|
||||
<string name="unlimited">E pakufizuar</string>
|
||||
<string name="num_minutes">%s minuta</string>
|
||||
<string name="http_client">Klient i HTTP\'së</string>
|
||||
<string name="username">Emër përdoruesi</string>
|
||||
<string name="password">Fjalëkalim</string>
|
||||
<string name="other">Tjetër</string>
|
||||
<string name="all">Krejt</string>
|
||||
<string name="no_messages">Nuk ka mesazhe</string>
|
||||
</resources>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<string name="choose_language">Välj språk</string>
|
||||
<string name="welcome_new_install">Välkommen till I2P! Den här appen är ALFA-mjukvara och erbjuder inte stark anonymitet.
|
||||
Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="welcome_new_version">Ny version installerad. Vänligen läs versionsanteckningarna. Version: </string>
|
||||
<string name="welcome_new_version">Ny version installerad. Läs versionsanteckningarna. Version: </string>
|
||||
<string name="label_tunnels">Tunnlar</string>
|
||||
<string name="label_status">Status</string>
|
||||
<string name="label_console">Konsoll</string>
|
||||
@ -16,7 +16,7 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="label_logs">Loggar</string>
|
||||
<string name="label_error_logs">Felloggar</string>
|
||||
<string name="label_news">Nyheter</string>
|
||||
<string name="label_peers_status">Noder</string>
|
||||
<string name="label_peers_status">Jämlikar</string>
|
||||
<string name="label_release_notes">Utgåva noteringar</string>
|
||||
<string name="label_licenses">Licenser</string>
|
||||
<string name="label_browse">Bläddra</string>
|
||||
@ -40,13 +40,13 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="net_status_warn_firewalled_floodfill">Bakom brandvägg och \'floodfill\'</string>
|
||||
<string name="net_status_info_disconnected">Frånkopplad - kontrollera nätverksanslutning</string>
|
||||
<string name="net_status_error_udp_port">UDP-porten används - ändra i inställningar och start om</string>
|
||||
<string name="net_status_error_no_active_peers">Inga aktiva noder - kontrollera nätverksanslutning och brandvägg</string>
|
||||
<string name="net_status_error_no_active_peers">Inga aktiva jämlikar - kontrollera nätverksanslutning och brandvägg</string>
|
||||
<string name="net_status_error_udp_disabled_tcp_not_set">UDP deaktiverad och inåtgående TCP värd/port inte angiven</string>
|
||||
<string name="net_status_warn_firewalled_udp_disabled">Bakom brandvägg med UDP avaktiverad</string>
|
||||
<string name="net_status_warn_firewalled_udp_disabled">Bakom brandvägg med UDP inaktiverad</string>
|
||||
<string name="shared_clients">Delade klienter</string>
|
||||
<string name="uptime">Drifttid</string>
|
||||
<string name="active_peers">Aktiva noder</string>
|
||||
<string name="known_peers">Kända noder</string>
|
||||
<string name="active_peers">Aktiva jämlikar</string>
|
||||
<string name="known_peers">Kända jämlikar</string>
|
||||
<!--Character to indicate a client tunnel. Usually first letter of the word "client".-->
|
||||
<string name="char_client_tunnel">C</string>
|
||||
<!--Character to indicate a server tunnel. Usually first letter of the word "server".-->
|
||||
@ -59,15 +59,15 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="configure_no_doze_title">Hantera batterioptimeringar?</string>
|
||||
<string name="configure_no_doze">I2P fungerar bäst om den fortsätter att fungera. För att förhindra att Android stänger I2P när du försöker spara ström kan du lägga till den i listan över undantag från batterier. Detta kommer att förbättra applikationens tillförlitlighet avsevärt.\n\nHålla I2P igång i bakgrunden? (rekommenderad)</string>
|
||||
<string name="first_start_title">Gratulerar till din I2P-installation!</string>
|
||||
<string name="first_start_welcome"><b>Välkommen till I2P!</b> Vänligen <b>ha tålamod</b> medan I2P startar och letar upp noder.</string>
|
||||
<string name="first_start_read">Medan du väntar, vänligen läs utgåvans meddelanden och välkomstsidan.</string>
|
||||
<string name="first_start_faq">När du har fått klienttunnlar, vänligen <b>kolla</b> våra vanliga frågor:</string>
|
||||
<string name="first_start_welcome"><b>Välkommen till I2P!</b> <b>Ha tålamod</b> medan I2P startar och letar upp jämlikar.</string>
|
||||
<string name="first_start_read">Medan du väntar, läs utgåvans meddelanden och välkomstsidan.</string>
|
||||
<string name="first_start_faq">När du har fått klienttunnlar, <b>kolla</b> våra vanliga frågor:</string>
|
||||
<string name="first_start_faq_nonanon">Använd den här icke-anonyma länken om du inte vill vänta på tunnlar:</string>
|
||||
<string name="first_start_irc">Peka din IRCclient till <b>localhost:6668</b> och säg hej till oss på:</string>
|
||||
<string name="action_search">Sök</string>
|
||||
<string name="action_add">Lägg till</string>
|
||||
<string name="action_edit">Redigera</string>
|
||||
<string name="action_delete">Radera</string>
|
||||
<string name="action_delete">Ta bort</string>
|
||||
<string name="action_i2ptunnel_start">Starta tunnel</string>
|
||||
<string name="action_i2ptunnel_stop">Stanna tunnel</string>
|
||||
<string name="action_i2ptunnel_start_all">Starta alla tunnlar</string>
|
||||
@ -113,7 +113,7 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="notification_status_shutdown_cancelled">Stängning avbruten</string>
|
||||
<string name="notification_status_shutting_down">I2P stängs av</string>
|
||||
<string name="notification_status_bw">Bandbredd:%1$sBps ner / %2$sBps upp</string>
|
||||
<string name="notification_status_peers">Noder: %1$d aktiva, %2$d kända</string>
|
||||
<string name="notification_status_peers">Jämlikar: %1$d aktiva, %2$d kända</string>
|
||||
<string name="notification_status_expl">Utforskande tunnlar: %1$d/%2$d</string>
|
||||
<string name="notification_status_client">Klienttunnlar:%1$d/%2$d</string>
|
||||
<string name="menu_settings">Inställningar</string>
|
||||
@ -138,7 +138,7 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="settings_dialog_sharePercent">Procent av bandbredd at dela</string>
|
||||
<string name="settings_desc_upnp">Öppna portar i brandvägg automatiskt</string>
|
||||
<string name="settings_label_logging">Loggning</string>
|
||||
<string name="settings_label_default_log_level">Förvald log nivå</string>
|
||||
<string name="settings_label_default_log_level">Standard loggnivå</string>
|
||||
<string name="settings_label_appearance">Stil</string>
|
||||
<string name="settings_label_language">Språk</string>
|
||||
<string name="settings_default">Förval</string>
|
||||
@ -162,7 +162,7 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="settings_label_expl_quantity">Kvantitet</string>
|
||||
<string name="settings_summ_expl_quantity">%s tunnlar</string>
|
||||
<string name="settings_desc_expl_quantity">Hur många tunnlar</string>
|
||||
<string name="settings_label_expl_backupQuantity">Backup kvantitet</string>
|
||||
<string name="settings_label_expl_backupQuantity">Reservmängd</string>
|
||||
<string name="settings_summ_expl_backupQuantity">%s tunnlar</string>
|
||||
<string name="settings_desc_expl_backupQuantity">Hur många reservtunnlar</string>
|
||||
<string name="settings_need_transport_enabled">Du måste ha minst en transport aktiverad</string>
|
||||
@ -190,8 +190,8 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="nsu_iae_cannot_contain">Värdnamnet kan inte innehålla \"%s\"</string>
|
||||
<string name="nsu_iae_requires_conversion">Värdnamnet \"%s\" kräver konvertering till ASCII men konverteringsbiblioteket är inte tillgängligt i denna version av Adroid</string>
|
||||
<string name="i2ptunnel_type_client">Standardklient</string>
|
||||
<string name="i2ptunnel_type_httpclient">HTTPklient</string>
|
||||
<string name="i2ptunnel_type_ircclient">IRCklient</string>
|
||||
<string name="i2ptunnel_type_httpclient">HTTP-klient</string>
|
||||
<string name="i2ptunnel_type_ircclient">IRC-klient</string>
|
||||
<string name="i2ptunnel_type_server">Standradserver</string>
|
||||
<string name="i2ptunnel_type_httpserver">HTTPserver</string>
|
||||
<string name="i2ptunnel_type_sockstunnel">SOCKS 4/4a/5 proxy</string>
|
||||
@ -211,9 +211,9 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="i2ptunnel_msg_config_save_failed">Misslyckades med att spara konfiguration</string>
|
||||
<string name="i2ptunnel_msg_tunnel_starting">Startar tunnel</string>
|
||||
<string name="i2ptunnel_msg_tunnel_stopping">Stannar tunnel</string>
|
||||
<string name="i2ptunnel_delete_confirm_message">Radera tunnel?</string>
|
||||
<string name="i2ptunnel_delete_confirm_button">Radera tunnel</string>
|
||||
<string name="i2ptunnel_no_tunnel_details">Det gick inte att läsa in detaljer i tunneln</string>
|
||||
<string name="i2ptunnel_delete_confirm_message">Ta bort tunnel?</string>
|
||||
<string name="i2ptunnel_delete_confirm_button">Ta bort tunnel</string>
|
||||
<string name="i2ptunnel_no_tunnel_details">Det gick inte att läsa in tunneldetaljer</string>
|
||||
<string name="i2ptunnel_wizard_k_client_server">Klient eller Server</string>
|
||||
<string name="i2ptunnel_wizard_v_client">Klienttunnel</string>
|
||||
<string name="i2ptunnel_wizard_v_server">Servertunnel</string>
|
||||
@ -234,9 +234,9 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="enabled">Aktiverad</string>
|
||||
<string name="i2ptunnel_wizard_desc_name">Tunnelns namn, för identifikation i tunnellistan</string>
|
||||
<string name="i2ptunnel_wizard_desc_desc">Beskrivning av tunneln. Frivillig och endast för information.</string>
|
||||
<string name="i2ptunnel_wizard_desc_dest">Mata in I2Pdestinationen för den tjänst denna tunnel skall ansluta till. Detta kan vara den fulla 64 destinationsnyckeln, eller ett I2Pvärdnamn från din adressbok.</string>
|
||||
<string name="i2ptunnel_wizard_desc_dest">Skriv in I2P-destinationen för den tjänst som denna klienttunnel ska ansluta till. Detta kan vara den fullständiga 64-grunddestinationsnyckeln eller ett I2P-värdnamn från din adressbok.</string>
|
||||
<string name="i2ptunnel_wizard_desc_outproxies">Om du känner till några utproxier för den här typen av tunnel (antingen HTTP eller SOCKS), fyll i dem. Separera flera proxier med kommatecken.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_host">Detta är den IP din tjänst kör på, vanligtvis på samma maskin så 127.0.0.1 är automatiskt ifylld.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_host">Detta är IP-adressen som din tjänst körs på, den är vanligtvis på samma maskin så 127.0.0.1 fylls i automatiskt.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_port">Detta är den port din tjänst tar emot anslutningar på.</string>
|
||||
<string name="i2ptunnel_wizard_desc_reachable_on">Det här begränsar vilka datorer eller smartphones som kan få tillgång till denna tunnel.</string>
|
||||
<string name="i2ptunnel_wizard_desc_binding_port">Detta är den port som klienttunneln blir åtkomlig från lokalt. Detta är också klientporten för HTTP bidir servertunneln.</string>
|
||||
@ -257,8 +257,8 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="tunnel_summ_shared_client">Använd samma Destination och tunnlar som andra klienter</string>
|
||||
<string name="target_destination">Måldestination</string>
|
||||
<string name="persistent_key">Beständig nyckel</string>
|
||||
<string name="persistent_key_conflict_title">Avaktivera nya nycklar vid återöppning?</string>
|
||||
<string name="persistent_key_conflict_msg">Du kan inte aktivera beständiga nycklar när tunneln är konfigurerad att generera nya nycklar vid återöppning. Vill du avaktivera ny nycklar vid återöppning?</string>
|
||||
<string name="persistent_key_conflict_title">Inaktivera nya nycklar vid återöppning?</string>
|
||||
<string name="persistent_key_conflict_msg">Du kan inte aktivera beständiga nycklar när tunneln är konfigurerad att generera nya nycklar vid återöppning. Vill du inaktivera ny nycklar vid återöppning?</string>
|
||||
<string name="tunnel_summ_persistent_key">Behåll den här tunnelns destination när den startar om</string>
|
||||
<string name="reachable_on">Nåbar på</string>
|
||||
<string name="listen_port">Lyssnande port</string>
|
||||
@ -268,7 +268,7 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="ssl_outproxies">SSL utproxier</string>
|
||||
<string name="irc">IRC</string>
|
||||
<string name="enable_dcc">Aktivera DCC</string>
|
||||
<string name="tunnel_summ_enable_dcc">Tillåt IRCklienter att använda DCC</string>
|
||||
<string name="tunnel_summ_enable_dcc">Tillåt IRC-klienter att använda DCC</string>
|
||||
<string name="website_domain_name">Webbplats domännamn</string>
|
||||
<string name="target_host">Målvärd</string>
|
||||
<string name="target_port">Målport</string>
|
||||
@ -282,7 +282,7 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="tunnel_summ_delay_connect">Aktivera för request/response-anslutningar</string>
|
||||
<string name="access_control">Tillgångskontroll</string>
|
||||
<string name="restricted_access">Bekgränsad åtkomst</string>
|
||||
<string name="disabled">Avaktiverad</string>
|
||||
<string name="disabled">Inaktiverad</string>
|
||||
<string name="whitelist">Whitelist</string>
|
||||
<string name="blacklist">Blacklist</string>
|
||||
<string name="access_list">Åtkomstlista</string>
|
||||
@ -322,10 +322,10 @@ Läs utgåvenoteringar och licens-information.</string>
|
||||
<string name="reduced_tunnel_quantity">Minska tunnelmängd</string>
|
||||
<string name="close_tunnels">Stäng tunnlar i viloläge</string>
|
||||
<string name="new_keys_on_reopen">Nya nycklar vid återöppning</string>
|
||||
<string name="new_keys_on_reopen_conflict_title">Avaktivera beständiga nycklar?</string>
|
||||
<string name="new_keys_on_reopen_conflict_msg">Du kan inte aktivera nya nycklar vid återöppning medan tunneln är konfigurerad att ha beständiga nycklar. Vill du avaktivera beständiga nycklar?</string>
|
||||
<string name="http_client">HTTPklient</string>
|
||||
<string name="tunnel_summ_user_agent">Släpp igenom \'Användar-Agent\' header</string>
|
||||
<string name="new_keys_on_reopen_conflict_title">Inaktivera beständiga nycklar?</string>
|
||||
<string name="new_keys_on_reopen_conflict_msg">Du kan inte aktivera nya nycklar vid återöppning medan tunneln är konfigurerad att ha beständiga nycklar. Vill du inaktivera beständiga nycklar?</string>
|
||||
<string name="http_client">HTTP-klient</string>
|
||||
<string name="tunnel_summ_user_agent">Släpp igenom \'Användar-Agent\'-rubriken</string>
|
||||
<string name="tunnel_summ_referer">Släpp igenom \'Referer\' header</string>
|
||||
<string name="tunnel_summ_accept">Släpp igenom \'Accept-*\' headers</string>
|
||||
<string name="tunnel_summ_allow_ssl">Tillåt SSL till I2Padresser</string>
|
||||
|
@ -38,9 +38,9 @@
|
||||
<string name="net_status_warn_firewalled_inbound_tcp">Geliş TCP bağlantısı güvenlik duvarı etkinleştirilmiş </string>
|
||||
<string name="net_status_warn_firewalled_floodfill">Güvenlik duvarı arkasında otomatik doldurma</string>
|
||||
<string name="net_status_info_disconnected">Bağlantı kesildi - ağ bağlantısını denetleyin</string>
|
||||
<string name="net_status_error_udp_port">UDP kapı numarası kullanılıyor - ayarları değiştirip yeniden başlatın</string>
|
||||
<string name="net_status_error_udp_port">UDP bağlantı noktası kullanılıyor - ayarları değiştirip yeniden başlatın</string>
|
||||
<string name="net_status_error_no_active_peers">Etkin eş yok, ağ bağlantısını ve güvenlik duvarını denetleyin</string>
|
||||
<string name="net_status_error_udp_disabled_tcp_not_set">UDP devre dışı ve Geliş TCP bağlantısı sunucu/kapı numarası ayarlanmamış</string>
|
||||
<string name="net_status_error_udp_disabled_tcp_not_set">UDP devre dışı ve Geliş TCP bağlantısı sunucu/bağlantı noktası ayarlanmamış</string>
|
||||
<string name="net_status_warn_firewalled_udp_disabled">Güvenlik duvarı ve UDP devre dışı</string>
|
||||
<string name="shared_clients">Paylaşılmış istemciler</string>
|
||||
<string name="uptime">Çalışma süresi</string>
|
||||
@ -58,7 +58,7 @@
|
||||
<string name="configure_no_doze_title">Pil kullanımı yönetilsin mi?</string>
|
||||
<string name="configure_no_doze">I2P için en iyi durum sürekli çalışmasıdır. I2P uygulamasının Android üzerinde pili korumak için kapatılmasını engellemek için uygulamayı pil kullanımı istisnası listesine ekleyebilirsiniz. Bu durumda uygulamanın güvenirliği önemli ölçüde artacaktır.\n\nI2P arka planda çalışır durumda tutulsun mu (önerilir)?</string>
|
||||
<string name="first_start_title">Tebrikler, I2P kuruldu!</string>
|
||||
<string name="first_start_welcome"><b>I2P Yazılımına Hoşgeldiniz</b> Lütfen I2P yüklenip eşleri bulana kadar <b>sabırlı olun</b>.</string>
|
||||
<string name="first_start_welcome"><b>I2P uygulamasına hoş geldiniz</b> Lütfen I2P yüklenip eşleri bulana kadar <b>sabırlı olun</b>.</string>
|
||||
<string name="first_start_read">Beklerken, lütfen sürüm notları ve hoş geldiniz sayfalarını okuyun.</string>
|
||||
<string name="first_start_faq">İstemci tünelleri bulunduğunda, lütfen Sık Sorulan Sorular bölümüne <b>bakın</b>:</string>
|
||||
<string name="first_start_faq_nonanon">Ya da tünelleri beklemek istemiyorsanız anonim olmayan şu bağlantıyı kullanın:</string>
|
||||
@ -98,7 +98,7 @@
|
||||
<string name="count">Sayı</string>
|
||||
<string name="tname_0">Gizli ya da başlatılıyor</string>
|
||||
<string name="netdb_routers_empty">Ağ Veritabanınızda bir yöneltici bulunamadı.</string>
|
||||
<string name="netdb_leases_empty">Ağ Veritabanınızda bir LeaseSets bulunamadı.</string>
|
||||
<string name="netdb_leases_empty">Ağ Veritabanınızda bir Kiralama Kümesi bulunamadı.</string>
|
||||
<string name="notification_status_starting">I2P başlatılıyor</string>
|
||||
<string name="notification_status_restarting">I2P yeniden başlatılıyor</string>
|
||||
<string name="notification_status_waiting">I2P bir ağ bağlantısının kurulmasını bekliyor</string>
|
||||
@ -108,7 +108,7 @@
|
||||
<string name="notification_status_client_down">İstemci tünelleri kapalı</string>
|
||||
<string name="notification_status_graceful">I2P %s içinde durdurulacak</string>
|
||||
<string name="notification_status_stopping">I2P durduruluyor</string>
|
||||
<string name="notification_status_stopping_after_net">Ağ devre dışı bırakıldı, I2P durduruluyor</string>
|
||||
<string name="notification_status_stopping_after_net">Ağ bağlantısı kesildi, I2P durduruluyor</string>
|
||||
<string name="notification_status_shutdown_cancelled">Kapatma iptal edildi</string>
|
||||
<string name="notification_status_shutting_down">I2P kapatılıyor</string>
|
||||
<string name="notification_status_bw">Bant genişliği: %1$sBps indirme / %2$sBps yükleme</string>
|
||||
@ -135,7 +135,7 @@
|
||||
<string name="settings_label_sharePercent">Paylaşım yüzdesi</string>
|
||||
<string name="settings_desc_sharePercent">Paylaşılacak bant genişliği yüzdesi (varsayılan=80)</string>
|
||||
<string name="settings_dialog_sharePercent">Paylaşılacak bant genişliği yüzdesi</string>
|
||||
<string name="settings_desc_upnp">Güvenlik duvarı kapı numaraları kendiliğinden açılsın</string>
|
||||
<string name="settings_desc_upnp">Güvenlik duvarı bağlantı noktaları otomatik olarak açılsın</string>
|
||||
<string name="settings_label_logging">Günlükleme</string>
|
||||
<string name="settings_label_default_log_level">Varsayılan günlük düzeyi</string>
|
||||
<string name="settings_label_appearance">Görünüm</string>
|
||||
@ -222,9 +222,9 @@
|
||||
<string name="i2ptunnel_wizard_k_dest">Hedef</string>
|
||||
<string name="i2ptunnel_wizard_k_outproxies">Çıkış vekil sunucuları</string>
|
||||
<string name="i2ptunnel_wizard_k_target_host">Hedef sunucu</string>
|
||||
<string name="i2ptunnel_wizard_k_target_port">Hedef kapı numarası</string>
|
||||
<string name="i2ptunnel_wizard_k_target_port">Hedef bağlantı noktası</string>
|
||||
<string name="i2ptunnel_wizard_k_reachable_on">Şuradan erişilebilir</string>
|
||||
<string name="i2ptunnel_wizard_k_binding_port">Bağlanılacak kapı numarası</string>
|
||||
<string name="i2ptunnel_wizard_k_binding_port">Bağlanılacak bağlantı noktası</string>
|
||||
<string name="i2ptunnel_wizard_k_auto_start">Otomatik başlat</string>
|
||||
<string name="next">Sonraki</string>
|
||||
<string name="prev">Önceki</string>
|
||||
@ -236,9 +236,9 @@
|
||||
<string name="i2ptunnel_wizard_desc_dest">Bu istemci tünelinin bağlanacağı hizmetin I2P hedefini yazın. Tam Base 64 hedef anahtarı ya da adres defterinizden bir sunucu adı olabilir.</string>
|
||||
<string name="i2ptunnel_wizard_desc_outproxies">Bu tünel türü için bildiğiniz çıkış sunucuları varsa (HTTP ya da SOCKS) buraya virgül ile ayırarak yazın. </string>
|
||||
<string name="i2ptunnel_wizard_desc_target_host">Çalıştırdığınız hizmetin IP adresi. Genellikle aynı bilgisayarda olduğundan otomatik olarak 127.0.0.1 yazılır.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_port">Hizmetin bağlantıları kabul edeceği kapı numarası.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_port">Hizmetin bağlantıları kabul edeceği bağlantı noktası.</string>
|
||||
<string name="i2ptunnel_wizard_desc_reachable_on">Bu seçenek bu tünele erişebilecek bilgisayar ve akıllı telefonları sınırlar.</string>
|
||||
<string name="i2ptunnel_wizard_desc_binding_port">İstemci tüneline yerel olarak erişilebilecek kapı numarası. Aynı zamanda HTTP bidir sunucusu tünelinin istemci kapı numarasıdır.</string>
|
||||
<string name="i2ptunnel_wizard_desc_binding_port">İstemci tüneline yerel olarak erişilebilecek bağlantı noktası. Aynı zamanda HTTP bidir sunucusu tünelinin istemci bağlantı noktasıdır.</string>
|
||||
<string name="i2ptunnel_wizard_desc_auto_start">Yöneltici başlatıldığında tünel de başlatılsın mı?</string>
|
||||
<string name="i2ptunnel_wizard_submit_confirm_message">Tünel oluşturulsun</string>
|
||||
<string name="i2ptunnel_wizard_submit_confirm_button">Tüneli oluştur</string>
|
||||
@ -251,7 +251,7 @@
|
||||
<string name="description">Açıklama</string>
|
||||
<string name="auto_start">Otomatik başlat</string>
|
||||
<string name="tunnel_summ_auto_start">Yöneltici başlatıldığında tünel de başlatılsın.</string>
|
||||
<string name="tunnel_cat_ports">Yerel kapı numaraları</string>
|
||||
<string name="tunnel_cat_ports">Yerel bağlantı noktaları</string>
|
||||
<string name="shared_client">Paylaşılmış istemci</string>
|
||||
<string name="tunnel_summ_shared_client">Diğer paylaşılmış istemciler ile aynı hedef ve tüneller kullanılsın</string>
|
||||
<string name="target_destination">Hedef konum</string>
|
||||
@ -260,9 +260,9 @@
|
||||
<string name="persistent_key_conflict_msg">Tünel yeniden açıldığında yeni anahtarlar oluşturuluyorsa sürekli anahtarlar kullanılamaz. Yeniden açıldığından yeni anahtarların oluşturulması devre dışı bırakılsın mı?</string>
|
||||
<string name="tunnel_summ_persistent_key">Yeniden başlatıldığında bu tünelin hedefi korunsun</string>
|
||||
<string name="reachable_on">Şuradan erişilebilir</string>
|
||||
<string name="listen_port">Dinlenecek kapı numarası</string>
|
||||
<string name="listen_port">Dinlenecek bağlantı noktası</string>
|
||||
<string name="client_ssl">SSL İstemci</string>
|
||||
<string name="tunnel_summ_client_ssl">İstemci yalnız SSL üzerinden bağlanabilir</string>
|
||||
<string name="tunnel_summ_client_ssl">İstemci yalnızca SSL üzerinden bağlanabilir</string>
|
||||
<string name="outproxies">Çıkış vekil sunucuları</string>
|
||||
<string name="ssl_outproxies">SSL çıkış vekil sunucuları</string>
|
||||
<string name="irc">IRC</string>
|
||||
@ -270,7 +270,7 @@
|
||||
<string name="tunnel_summ_enable_dcc">IRC istemcileri DCC kullanabilsin</string>
|
||||
<string name="website_domain_name">Web sitesinin etki alanı</string>
|
||||
<string name="target_host">Hedef sunucu</string>
|
||||
<string name="target_port">Hedef kapı numarası</string>
|
||||
<string name="target_port">Hedef bağlantı noktası</string>
|
||||
<string name="use_ssl">SSL Kullanılsın</string>
|
||||
<string name="tunnel_summ_use_ssl">Hedefe bağlanmak için SSL kullanılsın</string>
|
||||
<string name="tunnel_parameters">Tünel parametreleri</string>
|
||||
@ -285,11 +285,11 @@
|
||||
<string name="whitelist">Beyaz liste</string>
|
||||
<string name="blacklist">Kara liste</string>
|
||||
<string name="access_list">Erişim listesi</string>
|
||||
<string name="reject_inproxies">Geçen vekil sunucular reddedilsin</string>
|
||||
<string name="tunnel_summ_reject_inproxies">Yalnız I2P kullanıcıları bağlanabilsin</string>
|
||||
<string name="unique_local">Tekil yerel</string>
|
||||
<string name="tunnel_summ_unique_local">Her istemci için tekil yerel sunucu IP adresi kullanılsın</string>
|
||||
<string name="multihome">Ana sayfa kopyası</string>
|
||||
<string name="reject_inproxies">Giriş vekil sunucular reddedilsin</string>
|
||||
<string name="tunnel_summ_reject_inproxies">Yalnızca I2P kullanıcıları bağlanabilsin</string>
|
||||
<string name="unique_local">Benzersiz yerel</string>
|
||||
<string name="tunnel_summ_unique_local">Her istemci için benzersiz yerel sunucu IP adresi kullanılsın</string>
|
||||
<string name="multihome">Birden çok barındırma</string>
|
||||
<string name="tunnel_summ_multihome">Çoklu ev iyileştirmeleri kullanılsın</string>
|
||||
<string name="client_connection_limits">İstemci bağlantı sınırları</string>
|
||||
<string name="connections_per_minute">Dakikalık bağlantı sayısı</string>
|
||||
@ -333,8 +333,8 @@
|
||||
<string name="tunnel_summ_proxy_auth">Bu vekil sunucuda oturum açmak için kimlik doğrulaması istensin</string>
|
||||
<string name="username">Kullanıcı Adı</string>
|
||||
<string name="password">Parola</string>
|
||||
<string name="outproxy_auth">Giden vekil sunucu kimlik doğrulaması</string>
|
||||
<string name="tunnel_summ_outproxy_auth">Giden vekil sunucu için oturum açılması gerekiyor</string>
|
||||
<string name="outproxy_auth">Çıkış vekil sunucusu kimlik doğrulaması</string>
|
||||
<string name="tunnel_summ_outproxy_auth">Çıkış vekil sunucusu için oturum açılması gerekiyor</string>
|
||||
<string name="other">Diğer</string>
|
||||
<string name="signature_type">İmza türü</string>
|
||||
<string name="custom_options">Uyarlanmış seçenekler</string>
|
||||
|
@ -110,6 +110,7 @@
|
||||
<string name="use_ssl">Sử dụng SSL</string>
|
||||
<string name="tunnel_parameters">Thông số đường hầm</string>
|
||||
<string name="profile">Hồ sơ</string>
|
||||
<string name="access_control">Kiểm soát truy cập</string>
|
||||
<string name="disabled">Tàn tật</string>
|
||||
<string name="whitelist">Sổ trắng</string>
|
||||
<string name="blacklist">Sổ đen</string>
|
||||
@ -120,6 +121,7 @@
|
||||
<string name="http_client">Khách HTTP</string>
|
||||
<string name="username">Tên đăng nhập</string>
|
||||
<string name="password">Mật khẩu</string>
|
||||
<string name="other">Khác</string>
|
||||
<string name="custom_options">Tùy chọn tùy ý</string>
|
||||
<string name="all">Tất cả</string>
|
||||
</resources>
|
||||
|
@ -55,6 +55,8 @@
|
||||
<string name="upload">上傳</string>
|
||||
<string name="configure_browser_title">配置瀏覽器嗎?</string>
|
||||
<string name="configure_browser_for_i2p">您要配置瀏覽器來查看I2P網站嗎? (您也可以稍後在幫助清單設定。)</string>
|
||||
<string name="configure_no_doze_title">管理电池优化?</string>
|
||||
<string name="configure_no_doze">I2P 在持续工作时能达到最佳效果。为阻止 Android 在尝试节省电量时关闭 I2P,您可以将它添加到电池例外名单中。这将大幅提高应用稳定性。\n\n要保持 I2P 在后台运行吗?(推荐)</string>
|
||||
<string name="first_start_title">恭喜您成功安裝了 I2P !</string>
|
||||
<string name="first_start_welcome"><b>歡迎來到I2P!</b> 請 <b>保持耐心</b> 等 I2P 啟動和找節點。</string>
|
||||
<string name="first_start_read">在您等候的同時,請在閱讀發行公告與歡迎頁面。</string>
|
||||
@ -145,6 +147,7 @@
|
||||
<string name="settings_label_transports">傳輸</string>
|
||||
<string name="settings_label_maxConns">最大連接數</string>
|
||||
<string name="settings_label_i2cp">I2CP 介面</string>
|
||||
<string name="settings_desc_i2cp">允许第三方应用创建隧道(需要路由重启)</string>
|
||||
<string name="settings_label_exploratory_pool">導坑池</string>
|
||||
<string name="settings_desc_exploratory_pool">隧道參數</string>
|
||||
<string name="settings_label_expl_inbound">Inbound 隧道</string>
|
||||
@ -179,6 +182,12 @@
|
||||
<string name="addressbook_add_wizard_k_name">名稱</string>
|
||||
<string name="addressbook_add_wizard_k_destination">目標</string>
|
||||
<string name="addressbook_add_wizard_desc_name">名字是</string>
|
||||
<string name="addressbook_add_wizard_desc_destination">在这里粘贴 B64 形式的目的地。如果您有安装一个文件管理器,您可以浏览包含 B64 的一个文本文件。</string>
|
||||
<string name="nsu_iae_illegal_char">主机名称 \"%1$s\" 中包含非法字符 %2$s</string>
|
||||
<string name="nsu_iae_cannot_start_with">主机名不能以 \"%s\"开始</string>
|
||||
<string name="nsu_iae_cannot_end_with">主机名不能以 \"%s\"结尾</string>
|
||||
<string name="nsu_iae_cannot_contain">主机名不能包含 \"%s\"</string>
|
||||
<string name="nsu_iae_requires_conversion">主机名称 \"%s\" 需要转换为 ASCII,但转换库在此 Android 版本中不可用</string>
|
||||
<string name="i2ptunnel_type_client">標準客戶端</string>
|
||||
<string name="i2ptunnel_type_httpclient">HTTP 客戶端</string>
|
||||
<string name="i2ptunnel_type_ircclient">IRC客戶端</string>
|
||||
@ -188,7 +197,11 @@
|
||||
<string name="i2ptunnel_type_socksirctunnel">SOCKS IRC 代理</string>
|
||||
<string name="i2ptunnel_type_connectclient">CONNECT/SSL/HTTPS 代理</string>
|
||||
<string name="i2ptunnel_type_ircserver">IRC 伺服器</string>
|
||||
<string name="i2ptunnel_type_streamrclient">Streamr 客户端</string>
|
||||
<string name="i2ptunnel_type_streamrserver">Streamr 服务器</string>
|
||||
<string name="i2ptunnel_type_httpbidirserver">双向 HTTP</string>
|
||||
<string name="install_recommended_app">安裝建議的 app ?</string>
|
||||
<string name="app_needed_for_this_tunnel_type">您需要安装一个应用以使用此隧道。您想安装推荐的应用吗?</string>
|
||||
<string name="i2ptunnel_not_initialized">隧道尚未初始化,請在兩分鐘內重整。</string>
|
||||
<string name="no_configured_client_tunnels">客戶端隧道沒有設定。</string>
|
||||
<string name="no_configured_server_tunnels">伺服器隧道沒有設定。</string>
|
||||
@ -211,12 +224,22 @@
|
||||
<string name="i2ptunnel_wizard_k_target_host">目標主機</string>
|
||||
<string name="i2ptunnel_wizard_k_target_port">目標端口</string>
|
||||
<string name="i2ptunnel_wizard_k_reachable_on">開啟被連通</string>
|
||||
<string name="i2ptunnel_wizard_k_binding_port">绑定端口</string>
|
||||
<string name="i2ptunnel_wizard_k_auto_start">自動啟動</string>
|
||||
<string name="next">下一個</string>
|
||||
<string name="prev">前一個</string>
|
||||
<string name="finish">提交</string>
|
||||
<string name="review">複檢</string>
|
||||
<string name="enabled">啟用</string>
|
||||
<string name="i2ptunnel_wizard_desc_name">隧道的名称,隧道列表中的标识。</string>
|
||||
<string name="i2ptunnel_wizard_desc_desc">隧道的描述。这是可选的,纯粹提供信息性。</string>
|
||||
<string name="i2ptunnel_wizard_desc_dest">输入这个客户端隧道应该连接到的该服务的 I2P 目的地。这可以是完整的 base 64 目的地密钥,或者您地址簿中的 I2P 主机名。</string>
|
||||
<string name="i2ptunnel_wizard_desc_outproxies">如果您知道任何此类型的隧道 (HTTP 或者 SOCKS) 的出口代理,填入它们。用逗号分隔多个代理服务器。</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_host">这是您正在运行服务的所在 IP,这通常是在同一台机器上,所以 127.0.0.1 会被自动填写。</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_port">这是这项服务接受连接的端口。</string>
|
||||
<string name="i2ptunnel_wizard_desc_reachable_on">这就限制了哪些电脑或智能手机可以访问此隧道。</string>
|
||||
<string name="i2ptunnel_wizard_desc_binding_port">这是客户端隧道从本地访问的端口。这也是 HTTP bidir 服务器隧道的客户端端口。</string>
|
||||
<string name="i2ptunnel_wizard_desc_auto_start">启动路由器时应自动启动隧道吗?</string>
|
||||
<string name="i2ptunnel_wizard_submit_confirm_message">建立新隧道?</string>
|
||||
<string name="i2ptunnel_wizard_submit_confirm_button">建立新隧道</string>
|
||||
<string name="i2ptunnel_view_target">目標</string>
|
||||
@ -230,21 +253,101 @@
|
||||
<string name="tunnel_summ_auto_start">當路由器啟動時一併啟動這個隧道。</string>
|
||||
<string name="tunnel_cat_ports">本地端口</string>
|
||||
<string name="shared_client">共享客戶端</string>
|
||||
<string name="tunnel_summ_shared_client">使用相同的目的地和隧道为其他客户端共享</string>
|
||||
<string name="target_destination">目标目的地</string>
|
||||
<string name="persistent_key">持久密钥</string>
|
||||
<string name="persistent_key_conflict_title">禁用重新打开时新建密钥?</string>
|
||||
<string name="persistent_key_conflict_msg">您不能在隧道被配置为重新打开时生成新密钥的情况下启用持久密钥。您想禁用重新打开时新建密钥吗?</string>
|
||||
<string name="tunnel_summ_persistent_key">它重启时保持此隧道的目的地</string>
|
||||
<string name="reachable_on">開啟被連通</string>
|
||||
<string name="listen_port">监听端口</string>
|
||||
<string name="client_ssl">客户端 SSL</string>
|
||||
<string name="tunnel_summ_client_ssl">客户端必须使用 SSL 连接</string>
|
||||
<string name="outproxies">連外代理</string>
|
||||
<string name="ssl_outproxies">SSL 的連外代理</string>
|
||||
<string name="irc">IRC</string>
|
||||
<string name="enable_dcc">启用 DCC</string>
|
||||
<string name="tunnel_summ_enable_dcc">允许 IRC 客户端使用 DCC</string>
|
||||
<string name="website_domain_name">网站域名</string>
|
||||
<string name="target_host">目標主機</string>
|
||||
<string name="target_port">目標端口</string>
|
||||
<string name="use_ssl">使用 SSL</string>
|
||||
<string name="tunnel_summ_use_ssl">使用 SSL 连接目标</string>
|
||||
<string name="tunnel_parameters">隧道參數</string>
|
||||
<string name="profile">個人資料</string>
|
||||
<string name="profile_bulk">大包连接 (下载/网站/BT)</string>
|
||||
<string name="profile_interactive">交互连接</string>
|
||||
<string name="delay_connect">延迟连接</string>
|
||||
<string name="tunnel_summ_delay_connect">对请求/响应连接启用</string>
|
||||
<string name="access_control">存取控制</string>
|
||||
<string name="restricted_access">访问受限</string>
|
||||
<string name="disabled">關閉</string>
|
||||
<string name="whitelist">白名单</string>
|
||||
<string name="blacklist">黑名单</string>
|
||||
<string name="access_list">访问列表</string>
|
||||
<string name="reject_inproxies">拒绝代理访问</string>
|
||||
<string name="tunnel_summ_reject_inproxies">只允许 I2P 用户连接</string>
|
||||
<string name="unique_local">唯一本地</string>
|
||||
<string name="tunnel_summ_unique_local">使用唯一的本地 IP 对每个客户端</string>
|
||||
<string name="multihome">多宿主</string>
|
||||
<string name="tunnel_summ_multihome">启用多宿主优化</string>
|
||||
<string name="client_connection_limits">客户端连接数限制</string>
|
||||
<string name="connections_per_minute">每分钟连接数</string>
|
||||
<string name="connections_per_hour">每小时连接数</string>
|
||||
<string name="connections_per_day">每天连接数</string>
|
||||
<string name="total_connection_limits">总连接数限制</string>
|
||||
<string name="total_connections_per_minute">总连接数每分钟</string>
|
||||
<string name="total_connections_per_hour">总连接数每小时</string>
|
||||
<string name="total_connections_per_day">总连接数每天</string>
|
||||
<string name="max_active_connections">最大活动连接数</string>
|
||||
<string name="num_per_minute">%s 每分钟</string>
|
||||
<string name="num_per_hour">%s 每小时</string>
|
||||
<string name="num_per_day">%s 每天</string>
|
||||
<string name="unlimited">無限制</string>
|
||||
<string name="set_zero_for_unlimited">设置 0 表示无限制</string>
|
||||
<string name="post_limits">POST 限制</string>
|
||||
<string name="limit_period">限制周期</string>
|
||||
<string name="client_posts_per_period">客户端 POST 数量每个周期</string>
|
||||
<string name="client_ban_length">客户端封禁长度</string>
|
||||
<string name="total_posts_per_period">POST 总数每个周期</string>
|
||||
<string name="total_ban_length">总计封禁长度</string>
|
||||
<string name="power_saving">省电</string>
|
||||
<string name="delay_open">延迟打开</string>
|
||||
<string name="tunnel_summ_delay_open">延迟隧道打开,直到请求</string>
|
||||
<string name="reduce_quantity">减少数量</string>
|
||||
<string name="tunnel_summ_reduce_quantity">减少隧道数量在空闲时</string>
|
||||
<string name="idle_time">闲置时间</string>
|
||||
<string name="num_minutes">%s 分钟</string>
|
||||
<string name="reduced_tunnel_quantity">减少隧道数量</string>
|
||||
<string name="close_tunnels">关闭隧道在闲置时</string>
|
||||
<string name="new_keys_on_reopen">新建密钥在重新打开时</string>
|
||||
<string name="new_keys_on_reopen_conflict_title">禁用持久密钥</string>
|
||||
<string name="new_keys_on_reopen_conflict_msg">您不能在隧道被配置为有持久密钥情况下启用重新打开时新建密钥。您想禁用持久密钥吗?</string>
|
||||
<string name="http_client">HTTP 客戶端</string>
|
||||
<string name="tunnel_summ_user_agent">传递 \'User-Agent\' 头通过</string>
|
||||
<string name="tunnel_summ_referer">传递 \'Referer\' 头通过</string>
|
||||
<string name="tunnel_summ_accept">传递 \'Accept-*\' 头通过</string>
|
||||
<string name="tunnel_summ_allow_ssl">允许 SSL 到 I2P 地址簿</string>
|
||||
<string name="jump_url_list">跳到 URL 列表</string>
|
||||
<string name="proxy_auth">代理身份验证</string>
|
||||
<string name="tunnel_summ_proxy_auth">需要登录才能使用此代理</string>
|
||||
<string name="username">使用者名稱</string>
|
||||
<string name="password">密碼</string>
|
||||
<string name="outproxy_auth">出口代理身份验证</string>
|
||||
<string name="tunnel_summ_outproxy_auth">该出口代理需要登录</string>
|
||||
<string name="other">其它</string>
|
||||
<string name="signature_type">签名类型</string>
|
||||
<string name="custom_options">自定义选项</string>
|
||||
<string name="all">全部</string>
|
||||
<string name="no_messages">沒有訊息</string>
|
||||
<string name="no_error_messages">无错误消息</string>
|
||||
<string name="log_entry">日志条目</string>
|
||||
<string name="copy_logs">复制日志</string>
|
||||
<string name="i2p_android_error_logs">I2P Android 错误日志</string>
|
||||
<string name="i2p_android_logs">I2P Android 日志</string>
|
||||
<string name="error_logs_copied_to_clipboard">错误日志已复制到剪贴板</string>
|
||||
<string name="logs_copied_to_clipboard">日志已复制到剪贴板</string>
|
||||
<string name="label_browser_configuration">浏览器配置</string>
|
||||
<string name="no_market_app">没有找到应用商店,请手动安装</string>
|
||||
<string name="unset">未设置</string>
|
||||
</resources>
|
||||
|
@ -23,7 +23,7 @@
|
||||
<string name="button_router_off">长按启动 I2P</string>
|
||||
<string name="button_router_on">I2P 正在运行 (长按停止)</string>
|
||||
<string name="button_router_graceful">I2P 将在 %s 后关闭</string>
|
||||
<string name="button_shutdown_now">长按现在停止</string>
|
||||
<string name="button_shutdown_now">长按立即停止</string>
|
||||
<string name="button_cancel_graceful">长按取消关闭</string>
|
||||
<string name="no_internet">没有可用的互联网连接</string>
|
||||
<string name="hidden">隐身</string>
|
||||
@ -56,7 +56,7 @@
|
||||
<string name="configure_browser_title">配置浏览器?</string>
|
||||
<string name="configure_browser_for_i2p">您想配置一个浏览器来查看 I2P 站点吗?(您也可以以后再从帮助菜单设置这个)</string>
|
||||
<string name="configure_no_doze_title">管理电池优化?</string>
|
||||
<string name="configure_no_doze">I2P 在持续工作时能达到最佳效果。为阻止 Android 在尝试省电时关闭 I2P,您可以将它添加到电池例外名单中。这将大幅提高应用稳定性。\n\n要保持 I2P 在后台运行吗?(推荐)</string>
|
||||
<string name="configure_no_doze">I2P 在持续工作时能达到最佳效果。为阻止 Android 在尝试节省电量时关闭 I2P,您可以将它添加到电池例外名单中。这将大幅提高应用稳定性。\n\n要保持 I2P 在后台运行吗?(推荐)</string>
|
||||
<string name="first_start_title">恭喜,I2P 已安装!</string>
|
||||
<string name="first_start_welcome"><b>欢迎使用 I2P!</b>在 I2P 启动和寻找同伴时,请<b>保持耐心</b>。</string>
|
||||
<string name="first_start_read">在您等候时,请阅读发布说明和欢迎页面。</string>
|
||||
|
@ -109,28 +109,25 @@
|
||||
</string-array>
|
||||
<string-array name="recommended_browsers">
|
||||
<item>acr.browser.lightning</item>
|
||||
<item>io.github.forkmaintainers.iceraven</item>
|
||||
<item>com.stoutner.privacybrowser.standard</item>
|
||||
</string-array>
|
||||
<string-array name="recommended_browser_labels">
|
||||
<item>Lightning</item>
|
||||
<item>IceRaven(With Extension)</item>
|
||||
<item>Privacy Browser</item>
|
||||
</string-array>
|
||||
<string-array name="supported_browsers">
|
||||
<item>org.mozilla.firefox</item>
|
||||
<item>org.mozilla.fennec_fdroid</item>
|
||||
<item>org.gnu.icecat</item>
|
||||
</string-array>
|
||||
<string-array name="supported_browser_labels">
|
||||
<item>Firefox</item>
|
||||
<item>Fennec F-Droid</item>
|
||||
<item>IceCatMobile</item>
|
||||
</string-array>
|
||||
<string-array name="unsupported_browsers">
|
||||
<item>org.mozilla.firefox</item>
|
||||
<item>com.android.chrome</item>
|
||||
<item>com.brave.browser</item>
|
||||
<item>com.android.browser</item>
|
||||
<item>com.sec.android.app.sbrowser</item>
|
||||
<item>com.stoutner.privacybrowser.standard</item>
|
||||
<item>org.gnu.icecat</item>
|
||||
<item>info.guardianproject.browser</item>
|
||||
<item>mobi.mgeek.TunnyBrowser</item>
|
||||
<item>com.lastpass.lpandroid</item>
|
||||
@ -172,4 +169,28 @@
|
||||
<item>ECDSA-P521</item>
|
||||
<item>Ed25519</item>
|
||||
</string-array>
|
||||
<string-array name="speed_increments">
|
||||
<item>100 KB/s</item>
|
||||
<item>200 KB/s</item>
|
||||
<item>300 KB/s</item>
|
||||
<item>400 KB/s</item>
|
||||
<item>500 KB/s</item>
|
||||
<item>600 KB/s</item>
|
||||
<item>700 KB/s</item>
|
||||
<item>800 KB/s</item>
|
||||
<item>900 KB/s</item>
|
||||
<item>1000 KB/s</item>
|
||||
</string-array>
|
||||
<integer-array name="speed_values">
|
||||
<item>100</item>
|
||||
<item>200</item>
|
||||
<item>300</item>
|
||||
<item>400</item>
|
||||
<item>500</item>
|
||||
<item>600</item>
|
||||
<item>700</item>
|
||||
<item>800</item>
|
||||
<item>900</item>
|
||||
<item>1000</item>
|
||||
</integer-array>
|
||||
</resources>
|
||||
|
@ -188,6 +188,10 @@
|
||||
<string name="settings_desc_i2cp">Allow third-party apps to create tunnels using I2CP (requires router restart)</string>
|
||||
<string name="settings_label_sam">SAM interface</string>
|
||||
<string name="settings_desc_sam">Allow third-party apps to create tunnels using SAM (requires router restart)</string>
|
||||
<string name="settings_confirm_sam">An application is trying to make a SAM connection.</string>
|
||||
<string name="settings_confirm_sam_id">Connection Name/ID:</string>
|
||||
<string name="settings_confirm_allow_sam">Tap to allow</string>
|
||||
<string name="settings_confirm_deny_sam">Ignore to deny</string>
|
||||
<string name="settings_label_exploratory_pool">Exploratory pool</string>
|
||||
<string name="settings_desc_exploratory_pool">Tunnel parameters</string>
|
||||
<string name="settings_label_expl_inbound">Inbound tunnels</string>
|
||||
@ -216,8 +220,8 @@
|
||||
<string name="url_android_forum" translatable="false">http://zzz.i2p/forums/17</string>
|
||||
<string name="about_helpwanted">Help Wanted!</string>
|
||||
<string name="about_volunteer">Want to help make the app better? Volunteer on the Android forum:</string>
|
||||
<string name="about_donate">Want to donate money or bitcoins to buy more Android devices for development and testing? Go to:</string>
|
||||
<string name="url_donate" translatable="false">https://geti2p.net/en/donate | http://i2p-projekt.i2p/en/donate</string>
|
||||
<string name="about_gitlab">Want to suggest a feature or fix a bug? make a Merge Request on the Android Gitlab:</string>
|
||||
<string name="url_gitlab" translatable="false">https://i2pgit.org/i2p-hackers/i2p.android.base | http://git.idk.i2p/i2p-hackers/i2p.android.base</string>
|
||||
|
||||
<string name="menu_help">Help</string>
|
||||
<string name="general">General</string>
|
||||
@ -290,7 +294,7 @@
|
||||
|
||||
<string name="i2ptunnel_wizard_desc_name">The name of the tunnel, for identification in the tunnel list.</string>
|
||||
<string name="i2ptunnel_wizard_desc_desc">A description of the tunnel. This is optional and purely informative.</string>
|
||||
<string name="i2ptunnel_wizard_desc_dest">Type in the I2P destination of the service that this client tunnel should connect to. This could be the full base 64 destination key, or an I2P host name from your address book.</string>
|
||||
<string name="i2ptunnel_wizard_desc_dest">Specify the .i2p address or destination (hostname.i2p, b32 or b64) of the tunnel here.</string>
|
||||
<string name="i2ptunnel_wizard_desc_outproxies">If you know of any outproxies for this type of tunnel (either HTTP or SOCKS), fill them in. Separate multiple proxies with commas.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_host">This is the IP that your service is running on, this is usually on the same machine so 127.0.0.1 is autofilled.</string>
|
||||
<string name="i2ptunnel_wizard_desc_target_port">This is the port that the service is accepting connections on.</string>
|
||||
@ -420,5 +424,5 @@
|
||||
<string name="no_market_app">No market app found, please install manually</string>
|
||||
|
||||
<string name="unset">Unset</string>
|
||||
<string name="running_background">I2P is running in the background</string>
|
||||
<string name="running_background">I2P is running in the background</string>
|
||||
</resources>
|
||||
|
@ -14,26 +14,26 @@
|
||||
<PreferenceCategory
|
||||
android:key="settings_bandwidth"
|
||||
android:title="@string/settings_label_bandwidth">
|
||||
<!--
|
||||
i2np.bandwidth.inboundKBytesPerSecond=100
|
||||
-->
|
||||
<com.pavelsikun.seekbarpreference.SeekBarPreference
|
||||
android:key="@string/PROP_INBOUND_BANDWIDTH"
|
||||
android:title="@string/settings_desc_bw_inbound"
|
||||
app:msbp_defaultValue="100"
|
||||
app:msbp_maxValue="1000"
|
||||
app:msbp_measurementUnit="KB/s"
|
||||
/>
|
||||
<!--
|
||||
i2np.bandwidth.outboundKBytesPerSecond=30
|
||||
-->
|
||||
<com.pavelsikun.seekbarpreference.SeekBarPreference
|
||||
android:key="@string/PROP_OUTBOUND_BANDWIDTH"
|
||||
android:title="@string/settings_desc_bw_outbound"
|
||||
app:msbp_defaultValue="100"
|
||||
app:msbp_maxValue="1000"
|
||||
app:msbp_measurementUnit="KB/s"
|
||||
/>
|
||||
<!--
|
||||
i2np.bandwidth.inboundKBytesPerSecond=100
|
||||
-->
|
||||
<com.pavelsikun.seekbarpreference.SeekBarPreference
|
||||
android:key="@string/PROP_INBOUND_BANDWIDTH"
|
||||
android:title="@string/settings_desc_bw_inbound"
|
||||
app:msbp_defaultValue="100"
|
||||
app:msbp_maxValue="1000"
|
||||
app:msbp_measurementUnit="KB/s"
|
||||
/>
|
||||
<!--
|
||||
i2np.bandwidth.outboundKBytesPerSecond=30
|
||||
-->
|
||||
<com.pavelsikun.seekbarpreference.SeekBarPreference
|
||||
android:key="@string/PROP_OUTBOUND_BANDWIDTH"
|
||||
android:title="@string/settings_desc_bw_outbound"
|
||||
app:msbp_defaultValue="100"
|
||||
app:msbp_maxValue="1000"
|
||||
app:msbp_measurementUnit="KB/s"
|
||||
/>
|
||||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory
|
||||
@ -51,9 +51,9 @@
|
||||
android:summary="@string/settings_desc_hiddenMode"
|
||||
/>
|
||||
-->
|
||||
<!--
|
||||
router.maxParticipatingTunnels=0
|
||||
-->
|
||||
<!--
|
||||
router.maxParticipatingTunnels=0
|
||||
-->
|
||||
<!--
|
||||
<com.hlidskialf.android.preference.SeekBarPreference
|
||||
android:key="router.maxParticipatingTunnels"
|
||||
@ -66,9 +66,9 @@
|
||||
android:dependency="router.hiddenMode"
|
||||
/>
|
||||
-->
|
||||
<!--
|
||||
router.sharePercentage=10
|
||||
-->
|
||||
<!--
|
||||
router.sharePercentage=10
|
||||
-->
|
||||
<!--
|
||||
<com.hlidskialf.android.preference.SeekBarPreference
|
||||
android:key="router.sharePercentage"
|
||||
@ -83,15 +83,15 @@
|
||||
/>
|
||||
-->
|
||||
|
||||
<!--
|
||||
i2np.upnp.enable=false
|
||||
-->
|
||||
<CheckBoxPreference
|
||||
android:key="@string/PROP_ENABLE_UPNP"
|
||||
android:defaultValue="true"
|
||||
android:title="UPnP"
|
||||
android:summary="@string/settings_desc_upnp"
|
||||
/>
|
||||
<!--
|
||||
i2np.upnp.enable=false
|
||||
-->
|
||||
<CheckBoxPreference
|
||||
android:key="@string/PROP_ENABLE_UPNP"
|
||||
android:defaultValue="true"
|
||||
android:title="UPnP"
|
||||
android:summary="@string/settings_desc_upnp"
|
||||
/>
|
||||
</PreferenceCategory>
|
||||
|
||||
</PreferenceScreen>
|
||||
|
@ -15,7 +15,7 @@ buildscript {
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.3.0'
|
||||
classpath 'com.android.tools.build:gradle:4.2.2'
|
||||
classpath 'com.android.tools.lint:lint-gradle:26.1.1'
|
||||
}
|
||||
}
|
||||
|
2
build.sh
2
build.sh
@ -1,7 +1,7 @@
|
||||
#! /usr/bin/env sh
|
||||
rm -rf app/pkg-temp app/build app/pkg-mavencentral
|
||||
docker build -t i2p.android.base .
|
||||
docker run -it \
|
||||
docker run -itd \
|
||||
-u $(id -u):$(id -g) \
|
||||
--name i2p.android.base \
|
||||
-v $HOME/.gnupg/:/.gnupg/:ro \
|
||||
|
@ -14,7 +14,8 @@ POM_DEVELOPER_ID=idk
|
||||
POM_DEVELOPER_NAME=idk
|
||||
POM_DEVELOPER_EMAIL=hankhill19580@gmail.com
|
||||
|
||||
ANDROID_BUILD_TARGET_SDK_VERSION=29
|
||||
ANDROID_BUILD_SDK_VERSION=28
|
||||
ANDROID_BUILD_TARGET_SDK_VERSION=31
|
||||
ANDROID_BUILD_SDK_VERSION=31
|
||||
|
||||
I2P_VERSION=1.5.0
|
||||
I2P_VERSION=2.0.0
|
||||
I2P_ANDROID_VERSION=2.0.1
|
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip
|
||||
|
@ -9,7 +9,7 @@ repositories {
|
||||
android {
|
||||
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION as String)
|
||||
defaultConfig {
|
||||
minSdkVersion 14
|
||||
minSdkVersion 21
|
||||
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION as String)
|
||||
}
|
||||
buildTypes {
|
||||
@ -19,13 +19,17 @@ android {
|
||||
}
|
||||
}
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_7
|
||||
targetCompatibility JavaVersion.VERSION_1_7
|
||||
coreLibraryDesugaringEnabled true
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
lintOptions {
|
||||
abortOnError false
|
||||
}
|
||||
buildToolsVersion '28.0.3'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
@ -5,7 +5,7 @@ version = '0.9.5'
|
||||
android {
|
||||
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION as String)
|
||||
defaultConfig {
|
||||
minSdkVersion 14
|
||||
minSdkVersion 21
|
||||
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION as String)
|
||||
}
|
||||
buildTypes {
|
||||
@ -15,13 +15,13 @@ android {
|
||||
}
|
||||
}
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_7
|
||||
targetCompatibility JavaVersion.VERSION_1_7
|
||||
coreLibraryDesugaringEnabled true
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
lintOptions {
|
||||
abortOnError false
|
||||
}
|
||||
buildToolsVersion '28.0.3'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
@ -33,4 +33,8 @@ dependencies {
|
||||
testImplementation 'org.mockito:mockito-core:2.11.0'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
|
||||
}
|
||||
|
||||
apply from: "${project.rootDir}/gradle/maven-push.gradle"
|
||||
|
@ -5,4 +5,5 @@
|
||||
<string name="install_i2p_android">Instalovat I2P Android?</string>
|
||||
<string name="you_must_have_i2p_android">Musíte mít nainstalovaný a zapnutý I2P Android. Přejete si jej nainstalovat?</string>
|
||||
<string name="start_i2p_android">Otevřít I2P Android?</string>
|
||||
<string name="would_you_like_to_start_i2p_android">Zdá se, že I2P Android neběží. Chcete jej spustit?</string>
|
||||
</resources>
|
||||
|
9
lib/helper/src/main/res/values-es-rAR/strings.xml
Normal file
9
lib/helper/src/main/res/values-es-rAR/strings.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<resources>
|
||||
<string name="yes">Sí</string>
|
||||
<string name="no">No</string>
|
||||
<string name="install_i2p_android">¿Instalar I2P Android?</string>
|
||||
<string name="you_must_have_i2p_android">Ha de tener I2P Android instalado y ejecutándose. ¿Le gustaría instalarlo?</string>
|
||||
<string name="start_i2p_android">¿Iniciar I2P Android?</string>
|
||||
<string name="would_you_like_to_start_i2p_android">Parece que I2P Android no se está ejecutando. ¿Desea ejecutarlo?</string>
|
||||
</resources>
|
9
lib/helper/src/main/res/values-sl/strings.xml
Normal file
9
lib/helper/src/main/res/values-sl/strings.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<resources>
|
||||
<string name="yes">Da</string>
|
||||
<string name="no">Ne</string>
|
||||
<string name="install_i2p_android">Namesti I2P Android?</string>
|
||||
<string name="you_must_have_i2p_android">Vi morate imeti I2P Android nameščen in zagnan. Bi vi radi ga namestili?</string>
|
||||
<string name="start_i2p_android">Zaženi I2P Android?</string>
|
||||
<string name="would_you_like_to_start_i2p_android">Zgleda, da I2P Android ne teče. Želite ga zagnati?</string>
|
||||
</resources>
|
@ -2,8 +2,8 @@
|
||||
<resources>
|
||||
<string name="yes">Evet</string>
|
||||
<string name="no">Hayır</string>
|
||||
<string name="install_i2p_android">I2P Android Kurulsun mu?</string>
|
||||
<string name="you_must_have_i2p_android">I2P Android yazılımı kurulmuş ve çalışıyor olmalıdır. Kurmak ister misiniz?</string>
|
||||
<string name="start_i2p_android">I2P Android Başlatılsın</string>
|
||||
<string name="would_you_like_to_start_i2p_android">I2P Android yazılımı çalışmıyor gibi görünüyor. Başlatmak ister misiniz?</string>
|
||||
<string name="install_i2p_android">I2P Android kurulsun mu?</string>
|
||||
<string name="you_must_have_i2p_android">I2P Android uygulaması kurulmuş ve çalışıyor olmalıdır. Kurmak ister misiniz?</string>
|
||||
<string name="start_i2p_android">I2P Android başlatılsın</string>
|
||||
<string name="would_you_like_to_start_i2p_android">I2P Android uygulaması çalışmıyor gibi görünüyor. Başlatmak ister misiniz?</string>
|
||||
</resources>
|
||||
|
Reference in New Issue
Block a user