Compare commits

..

12 Commits

Author SHA1 Message Date
b87d77d5e3 Android release commit 0.9.39
* translation updates.
* changed IPC uid to match bote.
2019-03-23 12:18:13 +00:00
ffbd8cfb76 I2P Android 0.9.38 Release commit. 2019-01-27 14:23:08 +00:00
2d1664574d "Fix" for ticket #2404 2019-01-24 18:33:26 +00:00
5d3aa1f625 Strings update 2019-01-24 18:21:20 +00:00
3fa53c7654 Expanded code to hunt NPE - ticket #2389 2019-01-24 18:21:01 +00:00
84ecf55ff8 Play store required a new android number even the first wasn't published. 2018-10-10 18:07:28 +00:00
72ad40ecfc Hotfix update cause of play console warnings.
Short: We had to upgrade to sdk 26 to ensure the app can run on all devices.
2018-10-10 17:56:38 +00:00
2f48898235 Release commit for I2P Android 0.9.37 2018-10-10 17:00:45 +00:00
39758c8cf4 Disable the SSL option for now. See trac issue #2296 2018-10-10 16:09:19 +00:00
ecc5509007 Gradle wrapper update 2018-10-10 16:07:28 +00:00
0e75b3e957 Android studio gave me some warnings against using ellipsize and maxLines together and suggested singleLine. 2018-10-10 16:06:39 +00:00
7b4c80216d Translations update. 2018-10-10 16:03:39 +00:00
27 changed files with 347 additions and 37 deletions

View File

@ -3,9 +3,9 @@ apply plugin: 'com.android.application'
android {
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION as String)
defaultConfig {
versionCode 4745243
versionCode 4745247
versionName "$I2P_VERSION"
minSdkVersion 9
minSdkVersion 14
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION as String)
// For Espresso
@ -32,6 +32,7 @@ android {
}
lintOptions {
abortOnError false
disable 'MissingDefaultResource'
}
packagingOptions {
exclude 'LICENSE.txt'
@ -51,6 +52,7 @@ android {
applicationId 'net.i2p.android.router'
}
}
buildToolsVersion '28.0.3'
}
dependencies {
@ -58,15 +60,13 @@ dependencies {
implementation project(':lib:client')
implementation project(':lib:helper')
implementation project(path: ':routerjars', configuration: 'routerjars')
// Android Support Repository dependencies
def supportVersion = '25.3.1'
def supportVersion = '28.0.0'
implementation "com.android.support:support-v4:$supportVersion"
implementation "com.android.support:appcompat-v7:$supportVersion"
implementation "com.android.support:preference-v7:$supportVersion"
implementation "com.android.support:preference-v14:$supportVersion"
implementation "com.android.support:recyclerview-v7:$supportVersion"
// Remote dependencies
implementation 'com.androidplot:androidplot-core:1.4.1'
implementation 'com.eowise:recyclerview-stickyheaders:0.5.2@aar'
@ -75,7 +75,6 @@ dependencies {
implementation "net.i2p:router:$I2P_VERSION"
implementation 'net.i2p.android.ext:floatingactionbutton:1.10.1'
implementation 'org.sufficientlysecure:html-textview:3.1'
// Testing-only dependencies
androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2') {
exclude group: 'com.android.support', module: 'support-annotations'

View File

@ -1,7 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="net.i2p.android.router"
android:installLocation="auto">
android:installLocation="auto"
android:sharedUserId="net.i2p">
<uses-sdk xmlns:tools="http://schemas.android.com/tools"
tools:overrideLibrary="android.support.v14.preference" />
@ -9,6 +10,7 @@
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<application
android:icon="@drawable/ic_launcher_itoopie"

View File

@ -111,7 +111,8 @@ public class GeneralTunnelPreferenceFragment extends BaseTunnelPreferenceFragmen
generalCategory.removePreference(generalCategory.findPreference(getString(R.string.TUNNEL_SHARED_CLIENT)));
addPreferencesFromResource(R.xml.tunnel_gen_server_port, portCategory);
portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_TARGET_PORT)));
portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_USE_SSL)));
// # TODO: See trac issue #2296
//portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_USE_SSL)));
}
}
@ -168,8 +169,11 @@ public class GeneralTunnelPreferenceFragment extends BaseTunnelPreferenceFragmen
@Override
protected void generalClientStandardOrIrc(boolean isStandardOrIrc) {
/*
# TODO: See trac issue #2296
if (!isStandardOrIrc)
portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_USE_SSL)));
*/
}
@Override
@ -185,7 +189,8 @@ public class GeneralTunnelPreferenceFragment extends BaseTunnelPreferenceFragmen
@Override
protected void generalServerHttpBidirOrStreamr(boolean isStreamr) {
addPreferencesFromResource(R.xml.tunnel_gen_client_port, portCategory);
portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_USE_SSL)));
// # TODO: See trac issue #2296
//portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_USE_SSL)));
if (isStreamr)
portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_LISTEN_PORT)));
@ -201,7 +206,8 @@ public class GeneralTunnelPreferenceFragment extends BaseTunnelPreferenceFragmen
protected void generalServerPortStreamr(boolean isStreamr) {
if (isStreamr) {
portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_TARGET_HOST)));
portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_USE_SSL)));
// # TODO: See trac issue #2296
//portCategory.removePreference(portCategory.findPreference(getString(R.string.TUNNEL_USE_SSL)));
}
}

View File

@ -182,8 +182,10 @@ public class TunnelUtil extends GeneralHelper {
@Override
protected void generalClientStandardOrIrc(boolean isStandardOrIrc) {
/* # TODO: See trac issue #2296
if (isStandardOrIrc)
ed.putBoolean(res.getString(R.string.TUNNEL_USE_SSL), isSSLEnabled(tunnel));
*/
}
@Override
@ -212,7 +214,8 @@ public class TunnelUtil extends GeneralHelper {
protected void generalServerPortStreamr(boolean isStreamr) {
if (!isStreamr) {
ed.putString(res.getString(R.string.TUNNEL_TARGET_HOST), getTargetHost(tunnel));
ed.putBoolean(res.getString(R.string.TUNNEL_USE_SSL), isSSLEnabled(tunnel));
// # TODO: See trac issue #2296
//ed.putBoolean(res.getString(R.string.TUNNEL_USE_SSL), isSSLEnabled(tunnel));
}
}
@ -414,8 +417,10 @@ public class TunnelUtil extends GeneralHelper {
@Override
protected void generalClientStandardOrIrc(boolean isStandardOrIrc) {
/* # TODO: See trac issue #2296
if (isStandardOrIrc)
cfg.setUseSSL(prefs.getBoolean(res.getString(R.string.TUNNEL_USE_SSL), false));
*/
}
@Override
@ -444,7 +449,8 @@ public class TunnelUtil extends GeneralHelper {
protected void generalServerPortStreamr(boolean isStreamr) {
if (!isStreamr) {
cfg.setTargetHost(prefs.getString(res.getString(R.string.TUNNEL_TARGET_HOST), "127.0.0.1"));
cfg.setUseSSL(prefs.getBoolean(res.getString(R.string.TUNNEL_USE_SSL), false));
// # TODO: See trac issue #2296
//cfg.setUseSSL(prefs.getBoolean(res.getString(R.string.TUNNEL_USE_SSL), false));
}
}

View File

@ -5,6 +5,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import net.i2p.android.router.util.Util;
import net.i2p.android.router.I2PConstants;
import net.i2p.android.router.service.RouterService;
@ -19,7 +20,12 @@ public class OnBootReceiver extends BroadcastReceiver implements I2PConstants {
if (startOnBoot) {
Intent routerService = new Intent(context, RouterService.class);
context.startService(routerService);
// Ticket #2404
try {
context.startService(routerService);
} catch (IllegalStateException ex) {
Util.e("Error: ", ex);
}
}
}
}

View File

@ -67,7 +67,10 @@ public abstract class AbstractWizardModel implements ModelCallbacks {
public void load(Bundle savedValues) {
for (String key : savedValues.keySet()) {
mRootPageList.findByKey(key).resetData(savedValues.getBundle(key));
// Expanded the code to hunt NPE - Ticket #2389
Page tmp = mRootPageList.findByKey(key);
Bundle tmpBundle = savedValues.getBundle(key);
tmp.resetData(tmpBundle);
}
}

View File

@ -37,7 +37,7 @@
android:layout_toRightOf="@id/tunnel_name"
android:ellipsize="start"
android:gravity="end"
android:maxLines="1"
android:singleLine="true"
android:text="Interface:port"
android:textAppearance="@style/TextAppearance.AppCompat.Secondary" />

View File

@ -29,7 +29,7 @@
android:layout_marginLeft="@dimen/listitem_horizontal_margin"
android:layout_marginStart="@dimen/listitem_horizontal_margin"
android:ellipsize="marquee"
android:maxLines="1"
android:singleLine="true"
android:text="RouterInfo hash"
android:textAppearance="@style/TextAppearance.AppCompat.Primary" />

View File

@ -149,10 +149,12 @@
<string name="settings_label_expl_backupQuantity">Quantitat de còpies de seguretat</string>
<string name="settings_summ_expl_backupQuantity">%s túnels</string>
<string name="settings_desc_expl_backupQuantity">Quantitat de còpies de seguretat del túnel</string>
<string name="menu_about">Quant a</string>
<string name="about_version">Versió:</string>
<string name="about_helpwanted">Es necessita ajuda!</string>
<string name="about_volunteer">Voleu ajudar a millorar l\'aplicació? Oferiu-vos voluntaris al fòrum Android:</string>
<string name="menu_help">Ajuda</string>
<string name="general">Generals</string>
<string name="label_router">Adreces públiques</string>
<string name="label_private">Adreces privades</string>
<string name="addressbook_add_wizard_k_name">Nom</string>
@ -176,6 +178,7 @@
<string name="i2ptunnel_wizard_desc_desc">Una descripció del túnel. És opcional i purament informativa.</string>
<string name="i2ptunnel_wizard_submit_confirm_message">Voleu crear el túnel?</string>
<string name="i2ptunnel_wizard_submit_confirm_button">Crea el túnel</string>
<string name="i2ptunnel_view_target">Objectiu</string>
<string name="i2ptunnel_view_access_point">Punt d\'accés</string>
<string name="edit_tunnel">Edita el túnel</string>
<string name="name">Nom</string>
@ -190,6 +193,7 @@
<string name="profile">Perfil</string>
<string name="profile_interactive">Connexió interactiva</string>
<string name="access_control">Control d\'accés</string>
<string name="disabled">Desactivat</string>
<string name="access_list">Llista d\'accés</string>
<string name="client_connection_limits">Límit de connexions del client</string>
<string name="connections_per_minute">Connexions per minut</string>

View File

@ -114,6 +114,7 @@
<string name="settings_desc_upnp">Avaa palomuuriportit automaattisesti</string>
<string name="settings_label_logging">Lokit</string>
<string name="settings_label_default_log_level">Oletus loggaustaso</string>
<string name="settings_label_appearance">Ulkoasu</string>
<string name="settings_label_language">Kieli</string>
<string name="settings_default">Oletus</string>
<string name="settings_label_advanced">Lisätietoja</string>
@ -198,6 +199,7 @@
<string name="use_ssl">Käytä SSL:ää</string>
<string name="tunnel_parameters">Tunneliparametrit</string>
<string name="profile">Profiili</string>
<string name="disabled">Otettu pois käytöstä</string>
<string name="whitelist">Valkoinen lista</string>
<string name="blacklist">Musta lista</string>
<string name="connections_per_minute">Yhteyksiä minuutissa</string>

View File

@ -31,6 +31,7 @@
<!--Character to indicate a server tunnel. Usually first letter of the word "server".-->
<string name="char_server_tunnel">S</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="first_start_title">I2P のインストールおめでとうございます!</string>
@ -92,7 +93,9 @@
<string name="settings_desc_upnp">自動的にファイアーウォールのポートを開く</string>
<string name="settings_label_logging">ロギング</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_summ_showStats">メインコンソールに高度な統計を表示</string>
@ -217,6 +220,7 @@
<string name="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>

View File

@ -25,7 +25,9 @@
<string name="hidden">Skrytý</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>
<!--Character to indicate a server tunnel. Usually first letter of the word "server".-->
<string name="char_server_tunnel">S</string>
<string name="first_start_title">Gratulácia k nainštalovaniu I2P!</string>
<string name="first_start_welcome"><b>Vitajte v I2P!</b> Prosím <b>majte trpezlivosť</b>, kým sa I2P nabootuje a nájde peerov.</string>
<string name="first_start_read">Zatiaľ čo budete čakať, prosím prečítajte si poznámky k vydaniu a úvodnú stránku.</string>
@ -47,6 +49,8 @@
<string name="action_reload_subscriptions">Obnoviť príspevky</string>
<string name="router_not_running">Router nie je spustený.</string>
<string name="stats_not_ready">Správca štatistík zatiaľ nie je pripravený. Prosím vyskúšajte to znova neskôr.</string>
<string name="country">Krajina</string>
<string name="version">Verzia</string>
<string name="count">Počet</string>
<string name="netdb_routers_empty">Žiadne routre vo vašej NetDB.</string>
<string name="netdb_leases_empty">Žiadne prenajaté sady vo vašej NetDB.</string>
@ -74,6 +78,8 @@
<string name="settings_desc_upnp">Automaticky otvoriť porty firewallu</string>
<string name="settings_label_logging">Logovanie</string>
<string name="settings_label_default_log_level">Predvolená úroveń logovania</string>
<string name="settings_label_appearance">Vzhľad</string>
<string name="settings_label_language">Jazyk</string>
<string name="settings_default">Predvolené</string>
<string name="settings_label_advanced">Pokročilé</string>
<string name="settings_label_showStats">Štatistiky routra</string>
@ -106,6 +112,7 @@
<string name="about_volunteer">Chceli by ste urobiť aplikáciu lepšou? Prihláste sa na androidovom fóre:</string>
<string name="about_donate">Chcete darovať peniaze alebo bitcoiny za účelom zakúpenia ďalších zariadení s Androidom pre vývoj a testovanie? Choďte na:</string>
<string name="menu_help">Pomoc</string>
<string name="general">Všeobecné</string>
<string name="addressbook_search_header">%s nájdených</string>
<string name="addressbook_add_wizard_k_name">Názov</string>
<string name="addressbook_add_wizard_k_destination">Cieľ</string>
@ -174,6 +181,7 @@
<string name="enable_dcc">Povoliť DCC</string>
<string name="target_host">Cieľový host</string>
<string name="target_port">Cieľový port</string>
<string name="use_ssl">Použiť SSL</string>
<string name="tunnel_parameters">Parametre tunelov</string>
<string name="profile">Profil</string>
<string name="disabled">Zrušené</string>
@ -185,6 +193,7 @@
<string name="http_client">HTTP klient</string>
<string name="username">Užívateľské meno</string>
<string name="password">Heslo</string>
<string name="other">Ďalší</string>
<string name="custom_options">Vlastné nastavenia</string>
<string name="all">Všetko</string>
</resources>

View File

@ -6,6 +6,7 @@
<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_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>
@ -23,7 +24,9 @@
<string name="hidden">Fshehur</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>
<!--Character to indicate a server tunnel. Usually first letter of the word "server".-->
<string name="char_server_tunnel">S</string>
<string name="download">Shkarkim</string>
<string name="first_start_title">Urime që arritët ta instaloni I2P\'në!</string>
<string name="first_start_welcome">&lt;b&gt;Mirë se vini në I2P!&lt;b&gt; Ju lutem &lt;b&gt;duroni&lt;b&gt; deri sa I2P të boot dhe tåe gjejë peers, </string>
@ -48,6 +51,8 @@
<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="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>
@ -74,6 +79,7 @@
<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_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>
@ -174,6 +180,7 @@
<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="use_ssl">Përdorni SSL</string>
<string name="tunnel_parameters">Parametrat e tunelëve</string>
<string name="profile">Profil</string>
<string name="disabled">E çaktivizuar</string>
@ -183,6 +190,7 @@
<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>

View File

@ -3,20 +3,14 @@
<string name="app_name">I2P</string>
<string name="welcome_new_install">Chào mừng bạn đã sử dụng I2P! Đây là phiên bản ALPHA và có thể vẫn chưa được hoàn thiện đầy đủ các tính năng. Vui lòng đọc các tính năng có trong phần ghi chú về phiên bản cũng như thông tin về giấy phép sử dụng.</string>
<string name="welcome_new_version">Phiên bản mới đã được cài đặt. Vui lòng đọc kỹ phần chú ý cài đặt. Phiên bản:</string>
<string name="label_home">Trang chủ I2P</string>
<string name="label_addressbook">Sổ địa chỉ</string>
<string name="label_logs">Nhật trình</string>
<string name="label_error_logs">Nhật trình về lỗi</string>
<string name="label_info_and_pages">Tin tức và trang tin</string>
<string name="label_welcome_page">Trang chào mừng</string>
<string name="label_news">Tin tức</string>
<string name="label_peers_status">Mạng ngang hàng</string>
<string name="label_release_notes">Ghi chú phát hành</string>
<string name="label_licenses">Giấy phép</string>
<string name="label_nonanon_info">Thông tin không được ẩn danh</string>
<string name="action_add">Thêm vào</string>
<string name="action_router_start">Bắt đầu định tuyến</string>
<string name="action_router_stop">Dừng lại định tuyến</string>
<string name="action_reload">Tải lại</string>
<string name="menu_settings">Thiết lập</string>
<string name="settings_enable">Cho phép</string>

View File

@ -0,0 +1,249 @@
<?xml version='1.0' encoding='UTF-8'?>
<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_console">控制檯</string>
<string name="label_addresses">地址</string>
<string name="label_addressbook">地址簿</string>
<string name="label_i2ptunnel_client">客戶端隧道</string>
<string name="label_i2ptunnel_server">伺服器隧道</string>
<string name="label_logs">日誌</string>
<string name="label_error_logs">錯誤日誌</string>
<string name="label_news">新聞</string>
<string name="label_peers_status">節點</string>
<string name="label_release_notes">版本說明</string>
<string name="label_licenses">許可證</string>
<string name="label_browse">瀏覽</string>
<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="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">未解決的傳輸控制協定位址</string>
<string name="net_status_error_private_tcp">私人傳輸控制協定位址</string>
<string name="net_status_warn_firewalled_inbound_tcp">入站傳輸控制協定許可被防火牆擋下</string>
<string name="net_status_warn_firewalled_floodfill">種子節點因防火牆受限</string>
<string name="net_status_info_disconnected">連線已斷開 - 請檢查網路連接</string>
<string name="net_status_error_udp_port">使用者數據包協定埠口正在使用 - 在設定中改變並重啟</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"></string>
<!--Character to indicate a server tunnel. Usually first letter of the word "server".-->
<string name="char_server_tunnel"></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="first_start_title">恭喜您成功安裝了 I2P </string>
<string name="first_start_welcome"><b>歡迎來到I2P!</b><b>保持耐心</b> 等 I2P 啟動和找節點。</string>
<string name="first_start_read">在您等候的同時,請在閱讀發行公告與歡迎頁面。</string>
<string name="first_start_faq">當您有了客戶端隧道時,請 <b>看看</b> 我們的 FAQ:</string>
<string name="first_start_faq_nonanon">或使用這不匿名的網址,如果您不想等的話:</string>
<string name="first_start_irc">將您的 IRC 客戶端連線指向<b>localhost:6668</b> 並且在上面跟我們打聲招呼:</string>
<string name="action_search">搜尋</string>
<string name="action_add">新增</string>
<string name="action_edit">編輯</string>
<string name="action_delete">刪除</string>
<string name="action_i2ptunnel_start">啟動隧道</string>
<string name="action_i2ptunnel_stop">中止隧道</string>
<string name="action_i2ptunnel_start_all">啟動所有隧道</string>
<string name="action_i2ptunnel_stop_all">中止所有隧道</string>
<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="action_reload_subscriptions">重新載入訂閱</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_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">I2P將在%s秒內終止</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$s字節/上行 %2$s字節</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_client">客戶端隧道: %1$d/%2$d</string>
<string name="menu_settings">設定</string>
<string name="settings_enable">啟用</string>
<string name="settings_desc_subscriptions">訂閱的網址</string>
<string name="settings_label_bandwidth_net">頻寬和網路</string>
<string name="settings_label_startOnBoot">開機時啟動I2P</string>
<string name="settings_desc_startOnBoot">當您的Android設備啟動時自動連上I2P</string>
<string name="settings_label_bandwidth">頻寬</string>
<string name="settings_label_bw_inbound">入站速度</string>
<string name="settings_desc_bw_inbound">最大入站速度</string>
<string name="settings_label_bw_outbound">出站速度</string>
<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_label_maxPartTunnels">最大共享隧道</string>
<string name="settings_desc_maxPartTunnels">參與者的最大隧道數量(默認值 = 20</string>
<string name="settings_dialog_maxPartTunnels">參與者的最大隧道數量</string>
<string name="settings_label_sharePercent">分享率</string>
<string name="settings_desc_sharePercent">共享出多少百分比的頻寬(默認值= 80</string>
<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_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_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_desc_i2cp">監聽Port 7654</string>
<string name="settings_label_exploratory_pool">導坑池</string>
<string name="settings_desc_exploratory_pool">隧道參數</string>
<string name="settings_label_expl_inbound">Inbound 隧道</string>
<string name="settings_label_expl_outbound">Outbound 隧道</string>
<string name="settings_label_expl_length">長度</string>
<string name="settings_summ_expl_length">%s 跳躍數</string>
<string name="settings_desc_expl_length">要使用多少個跳躍數</string>
<string name="settings_label_expl_lengthVariance">跳躍數的變異</string>
<string name="settings_summ_expl_lengthVariance">%s</string>
<string name="settings_desc_expl_lengthVariance">隨機添加跳躍數</string>
<string name="settings_label_expl_quantity">數量</string>
<string name="settings_summ_expl_quantity">%s 隧道</string>
<string name="settings_desc_expl_quantity">多少個隧道</string>
<string name="settings_label_expl_backupQuantity">備用數量</string>
<string name="settings_summ_expl_backupQuantity">%s 隧道</string>
<string name="settings_desc_expl_backupQuantity">儲備多少個隧道</string>
<string name="settings_need_transport_enabled">您至少要打開一種傳輸層協定</string>
<string name="settings_router_restart_required">請重新啟動 I2P 來讓新設定生效</string>
<string name="menu_about">關於</string>
<string name="about_version">版本:</string>
<string name="about_project">專案首頁:</string>
<string name="about_bugs">問題和支援:</string>
<string name="about_helpwanted">需要幫忙!</string>
<string name="about_volunteer">您是否願意伸出援手,讓這個 app 變得更好使用?我們的安卓論壇正在招募志工:</string>
<string name="about_donate">您願意捐款或捐比特幣給我們,去買開發和測試用的安卓設備嗎?這裡:</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>
<string name="addressbook_add_wizard_desc_name">名字是</string>
<string name="i2ptunnel_type_client">標準客戶端</string>
<string name="i2ptunnel_type_httpclient">HTTP 客戶端</string>
<string name="i2ptunnel_type_ircclient">IRC客戶端</string>
<string name="i2ptunnel_type_server">標準伺服器</string>
<string name="i2ptunnel_type_httpserver">HTTP 伺服器</string>
<string name="i2ptunnel_type_sockstunnel">SOCKS 4/4a/5 的代理</string>
<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="install_recommended_app">安裝建議的 app ?</string>
<string name="i2ptunnel_not_initialized">隧道尚未初始化,請在兩分鐘內重整。</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>
<string name="i2ptunnel_msg_tunnel_starting">隧道開啟中</string>
<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_name">名稱</string>
<string name="i2ptunnel_wizard_k_desc">描述</string>
<string name="i2ptunnel_wizard_k_dest">目標</string>
<string name="i2ptunnel_wizard_k_outproxies">連外代理</string>
<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_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_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_cat_ports">本地端口</string>
<string name="shared_client">共享客戶端</string>
<string name="reachable_on">開啟被連通</string>
<string name="outproxies">連外代理</string>
<string name="ssl_outproxies">SSL 的連外代理</string>
<string name="target_host">目標主機</string>
<string name="target_port">目標端口</string>
<string name="use_ssl">使用 SSL</string>
<string name="tunnel_parameters">隧道參數</string>
<string name="profile">個人資料</string>
<string name="disabled">關閉</string>
<string name="unlimited">無限制</string>
<string name="http_client">HTTP 客戶端</string>
<string name="username">使用者名稱</string>
<string name="password">密碼</string>
<string name="other">其它</string>
<string name="all">全部</string>
</resources>

View File

@ -352,5 +352,6 @@
<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>

View File

@ -4,7 +4,7 @@
<string name="TUNNEL_TYPE" translatable="false">type</string>
<string name="TUNNEL_NAME" translatable="false">name</string>
<string name="TUNNEL_DESCRIPTION" translatable="false">description</string>
<string name="TUNNEL_USE_SSL" translatable="false">useSSL</string>
<!--<string name="TUNNEL_USE_SSL" translatable="false">useSSL</string>-->
<string name="TUNNEL_START_ON_LOAD" translatable="false">startOnLoad</string>
<string name="TUNNEL_PRIV_KEY_FILE" translatable="false">privKeyFile</string>

View File

@ -10,10 +10,12 @@
android:key="@string/TUNNEL_LISTEN_PORT"
android:title="@string/listen_port" />
<!--
# TODO: See trac issue #2296
<CheckBoxPreference
android:defaultValue="false"
android:key="@string/TUNNEL_USE_SSL"
android:summary="@string/tunnel_summ_client_ssl"
android:title="@string/client_ssl" />
android:title="@string/client_ssl" />-->
</PreferenceScreen>

View File

@ -9,10 +9,12 @@
android:key="@string/TUNNEL_TARGET_PORT"
android:title="@string/target_port" />
<!--
# TODO: See trac issue #2296
<CheckBoxPreference
android:defaultValue="false"
android:key="@string/TUNNEL_USE_SSL"
android:summary="@string/tunnel_summ_use_ssl"
android:title="@string/use_ssl" />
android:title="@string/use_ssl" />-->
</PreferenceScreen>

View File

@ -1,10 +1,11 @@
buildscript {
repositories {
mavenLocal()
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.1'
classpath 'com.android.tools.build:gradle:3.3.0'
classpath 'com.android.tools.lint:lint-gradle:26.1.1'
}
}
@ -13,7 +14,10 @@ allprojects {
group = GROUP
repositories {
mavenLocal()
jcenter()
google()
}
}

View File

@ -13,6 +13,6 @@ POM_DEVELOPER_ID=str4d
POM_DEVELOPER_NAME=str4d
POM_DEVELOPER_EMAIL=str4d@i2pmail.org
I2P_VERSION=0.9.36
ANDROID_BUILD_TARGET_SDK_VERSION=25
ANDROID_BUILD_SDK_VERSION=25
I2P_VERSION=0.9.39
ANDROID_BUILD_TARGET_SDK_VERSION=26
ANDROID_BUILD_SDK_VERSION=28

View File

@ -1,6 +1,6 @@
#Sat Nov 25 01:31:50 NZDT 2017
#Thu Jan 24 19:09:07 CET 2019
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip

View File

@ -4,7 +4,6 @@ version = "$I2P_VERSION"
android {
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION as String)
defaultConfig {
minSdkVersion 9
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION as String)
@ -22,12 +21,12 @@ android {
lintOptions {
abortOnError false
}
buildToolsVersion '28.0.3'
}
dependencies {
implementation "net.i2p:i2p:$I2P_VERSION"
implementation "net.i2p.client:streaming:$I2P_VERSION"
testImplementation 'junit:junit:4.12'
testImplementation 'org.mockito:mockito-core:2.11.0'
}

View File

@ -4,7 +4,6 @@ version = '0.9.5'
android {
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION as String)
defaultConfig {
minSdkVersion 9
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION as String)
@ -22,11 +21,11 @@ android {
lintOptions {
abortOnError false
}
buildToolsVersion '28.0.3'
}
dependencies {
implementation 'com.android.support:support-v4:25.3.1'
testImplementation 'junit:junit:4.12'
testImplementation 'org.mockito:mockito-core:2.11.0'
}

View File

@ -0,0 +1,9 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="yes">نعم</string>
<string name="no"></string>
<string name="install_i2p_android">تثبيت I2P أندرويد؟</string>
<string name="you_must_have_i2p_android">يجب تثبيت I2P أندرويد وتشغيله. هل ترغب في تثبيته؟</string>
<string name="start_i2p_android">بدأ I2P أندرويد؟</string>
<string name="would_you_like_to_start_i2p_android">يبدو أن I2P أندرويد لا يعمل. هل ترغب في بدء تشغيله؟</string>
</resources>

View File

@ -3,7 +3,7 @@
<string name="yes">Kyllä</string>
<string name="no">Ei</string>
<string name="install_i2p_android">Asennetaanko I2P Android?</string>
<string name="you_must_have_i2p_android">Sinulla on oltava I2P Android asennettuna ja käynnissä. Haluaisitko asentaa sen?</string>
<string name="you_must_have_i2p_android">I2P Androidin on oltava asennettu ja käynnissä. Haluatko asentaa sen?</string>
<string name="start_i2p_android">Käynnistetäänkö I2P Android?</string>
<string name="would_you_like_to_start_i2p_android">Näyttää siltä, että I2P Android ei ole käynnissä. Haluaisitko käynnistää sen?</string>
<string name="would_you_like_to_start_i2p_android">Näyttää siltä, että I2P Android ei ole käynnissä. Haluatko käynnistää sen?</string>
</resources>

View File

@ -3,5 +3,7 @@
<string name="yes">Igen</string>
<string name="no">Nem</string>
<string name="install_i2p_android">I2P Android telepítése?</string>
<string name="you_must_have_i2p_android">Az I2P Android telepítve lennie és futnia kell. Szeretné telepíteni?</string>
<string name="start_i2p_android">I2P Android indítása?</string>
<string name="would_you_like_to_start_i2p_android">Úgy tűnik, hogy az I2P Android nem fut. Szeretné elindítani?</string>
</resources>