Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
com.ccwangluo.accelerator
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
sheteng
com.ccwangluo.accelerator
Commits
7ba55d3a
Commit
7ba55d3a
authored
Feb 21, 2022
by
sheteng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
资讯
parent
09b15c01
Changes
28
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
321 additions
and
1638 deletions
+321
-1638
app/build.gradle.kts
app/build.gradle.kts
+2
-0
app/src/main/AndroidManifest.xml
app/src/main/AndroidManifest.xml
+1
-0
app/src/main/java/com/ccwangluo/accelerator/ui/MainActivity.kt
...rc/main/java/com/ccwangluo/accelerator/ui/MainActivity.kt
+35
-4
app/src/main/java/com/ccwangluo/accelerator/ui/home/AccelertorFragment.kt
...a/com/ccwangluo/accelerator/ui/home/AccelertorFragment.kt
+10
-2
app/src/main/java/com/ccwangluo/accelerator/ui/home/NewsFragment.kt
...in/java/com/ccwangluo/accelerator/ui/home/NewsFragment.kt
+19
-7
app/src/main/java/com/ccwangluo/accelerator/ui/home/NewsViewModel.kt
...n/java/com/ccwangluo/accelerator/ui/home/NewsViewModel.kt
+5
-3
app/src/main/java/com/ccwangluo/accelerator/ui/news/NewsObjectFragment.kt
...a/com/ccwangluo/accelerator/ui/news/NewsObjectFragment.kt
+88
-27
app/src/main/java/com/ccwangluo/accelerator/ui/web/AndroidInterface.kt
...java/com/ccwangluo/accelerator/ui/web/AndroidInterface.kt
+26
-0
app/src/main/res/layout/fragment_collection_object.xml
app/src/main/res/layout/fragment_collection_object.xml
+2
-0
app/src/main/res/layout/fragment_mine.xml
app/src/main/res/layout/fragment_mine.xml
+0
-2
app/src/main/res/layout/fragment_news.xml
app/src/main/res/layout/fragment_news.xml
+70
-126
app/src/main/res/layout/fragment_quick.xml
app/src/main/res/layout/fragment_quick.xml
+26
-19
app/src/main/res/layout/fragment_webview.xml
app/src/main/res/layout/fragment_webview.xml
+2
-1
app/src/main/res/layout/item_dynamic.xml
app/src/main/res/layout/item_dynamic.xml
+8
-4
app/src/main/res/layout/item_news_game.xml
app/src/main/res/layout/item_news_game.xml
+25
-0
app/src/main/res/mipmap-xxxhdpi/game_start_btn.png
app/src/main/res/mipmap-xxxhdpi/game_start_btn.png
+0
-0
app/src/main/res/mipmap-xxxhdpi/new_top.png
app/src/main/res/mipmap-xxxhdpi/new_top.png
+0
-0
core/src/main/java/com/github/shadowsocks/http/HttpConfig.kt
core/src/main/java/com/github/shadowsocks/http/HttpConfig.kt
+1
-0
core/src/main/res/values-ar/strings.xml
core/src/main/res/values-ar/strings.xml
+0
-37
core/src/main/res/values-es/strings.xml
core/src/main/res/values-es/strings.xml
+0
-166
core/src/main/res/values-fa/strings.xml
core/src/main/res/values-fa/strings.xml
+0
-149
core/src/main/res/values-fr/strings.xml
core/src/main/res/values-fr/strings.xml
+0
-173
core/src/main/res/values-ja/strings.xml
core/src/main/res/values-ja/strings.xml
+0
-207
core/src/main/res/values-ko/strings.xml
core/src/main/res/values-ko/strings.xml
+0
-142
core/src/main/res/values-ru/strings.xml
core/src/main/res/values-ru/strings.xml
+0
-189
core/src/main/res/values-tr/strings.xml
core/src/main/res/values-tr/strings.xml
+0
-173
core/src/main/res/values-zh-rTW/strings.xml
core/src/main/res/values-zh-rTW/strings.xml
+0
-206
core/src/main/res/values/strings.xml
core/src/main/res/values/strings.xml
+1
-1
No files found.
app/build.gradle.kts
View file @
7ba55d3a
...
...
@@ -118,4 +118,6 @@ dependencies {
implementation
(
"com.github.bumptech.glide:glide:4.11.0"
)
annotationProcessor
(
"com.github.bumptech.glide:compiler:4.11.0"
)
implementation
(
"com.github.open-android:JieCaoVideoPlayer:0.1.0"
)
}
\ No newline at end of file
app/src/main/AndroidManifest.xml
View file @
7ba55d3a
...
...
@@ -24,6 +24,7 @@
<package
android:name=
"com.tencent.mm"
/>
<package
android:name=
"com.tencent.mobileqq"
/>
<package
android:name=
"com.baidu.browser.apps"
/>
<package
android:name=
"com.ldsanguo.shark"
/>
</queries>
<application
...
...
app/src/main/java/com/ccwangluo/accelerator/ui/MainActivity.kt
View file @
7ba55d3a
...
...
@@ -2,6 +2,7 @@ package com.ccwangluo.accelerator.ui
import
android.Manifest
import
android.content.Intent
import
android.hardware.Sensor
import
android.os.Bundle
import
android.os.Looper
import
android.view.KeyEvent
...
...
@@ -29,6 +30,9 @@ import com.tencent.tauth.Tencent
import
com.umeng.socialize.UMShareAPI
import
com.xuexiang.xpage.base.XPageActivity
import
com.xuexiang.xpage.core.PageOption
import
android.hardware.SensorManager
import
android.hardware.SensorEventListener
import
fm.jiecao.jcvideoplayer_lib.JCVideoPlayer
class
MainActivity
()
:
XPageActivity
(),
TencentLocationListener
{
...
...
@@ -41,6 +45,8 @@ class MainActivity() : XPageActivity(), TencentLocationListener {
private
lateinit
var
accelertorViewModel
:
AccelertorViewModel
private
var
mSensorEventListener
:
SensorEventListener
?
=
null
private
var
mSensorManager
:
SensorManager
?
=
null
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
accelertorViewModel
=
...
...
@@ -95,12 +101,37 @@ class MainActivity() : XPageActivity(), TencentLocationListener {
}
AcceleratorUtils
.
initConnect
(
this
,
connect
)
mSensorManager
=
getSystemService
(
SENSOR_SERVICE
)
as
SensorManager
mSensorEventListener
=
JCVideoPlayer
.
JCAutoFullscreenListener
()
}
private
fun
initPhoneUtils
()
{
PhoneUtils
.
getPhoneInfo
()
}
override
fun
onBackPressed
()
{
if
(
JCVideoPlayer
.
backPress
())
{
return
}
super
.
onBackPressed
()
}
override
fun
onResume
()
{
super
.
onResume
()
val
mSensor
=
mSensorManager
?.
getDefaultSensor
(
Sensor
.
TYPE_ACCELEROMETER
);
mSensorManager
?.
registerListener
(
mSensorEventListener
,
mSensor
,
SensorManager
.
SENSOR_DELAY_NORMAL
);
}
override
fun
onPause
()
{
super
.
onPause
()
mSensorManager
?.
unregisterListener
(
mSensorEventListener
);
JCVideoPlayer
.
releaseAllVideos
();
}
override
fun
onStart
()
{
super
.
onStart
()
AcceleratorUtils
.
onStart
()
...
...
@@ -135,10 +166,10 @@ class MainActivity() : XPageActivity(), TencentLocationListener {
}
override
fun
onLocationChanged
(
p0
:
TencentLocation
?,
p1
:
Int
,
p2
:
String
?)
{
if
(
p1
==
0
){
p0
?.
province
?.
let
{
AuthManager
.
area
=
it
}
if
(
p1
==
0
)
{
p0
?.
province
?.
let
{
AuthManager
.
area
=
it
}
}
}
...
...
app/src/main/java/com/ccwangluo/accelerator/ui/home/AccelertorFragment.kt
View file @
7ba55d3a
...
...
@@ -178,11 +178,11 @@ class AccelertorFragment : XPageFragment() {
if
(
binding
.
expandableLayout1
.
isExpanded
)
{
binding
.
expandableLayout1
.
toggle
()
binding
.
expandableLayout2
.
expand
()
binding
.
btnExpendBg
.
setBackgroundResource
(
com
.
ccwangluo
.
accelerator
.
R
.
mipmap
.
quick_arrow_up
)
binding
.
btnExpendBg
.
setBackgroundResource
(
R
.
mipmap
.
quick_arrow_up
)
}
else
{
binding
.
expandableLayout1
.
expand
()
binding
.
expandableLayout2
.
toggle
()
binding
.
btnExpendBg
.
setBackgroundResource
(
com
.
ccwangluo
.
accelerator
.
R
.
mipmap
.
quick_arrow_down
)
binding
.
btnExpendBg
.
setBackgroundResource
(
R
.
mipmap
.
quick_arrow_down
)
}
}
binding
.
btnQuick
.
setOnClickListener
{
...
...
@@ -240,6 +240,12 @@ class AccelertorFragment : XPageFragment() {
}
binding
.
gameStart
.
setOnClickListener
{
AcceleratorUtils
.
game
?.
let
{
AppUtils
.
launchApp
(
it
.
packageName
)
}
}
}
fun
openToWebview
(
url
:
String
)
{
...
...
@@ -283,6 +289,7 @@ class AccelertorFragment : XPageFragment() {
}).
show
<
CommonDialog
>()
SettingSPUtils
.
isFirstAccSuccess
=
false
}
binding
.
gameStart
.
visibility
=
View
.
VISIBLE
}
else
{
binding
.
gamePicIn1
.
clearAnimation
()
if
(
binding
.
gamePicOut
.
background
is
AnimationDrawable
)
{
...
...
@@ -290,6 +297,7 @@ class AccelertorFragment : XPageFragment() {
}
binding
.
accStateTx
.
visibility
=
View
.
GONE
binding
.
btnQuick
.
setBackgroundResource
(
R
.
mipmap
.
quick_start
)
binding
.
gameStart
.
visibility
=
View
.
GONE
}
}
...
...
app/src/main/java/com/ccwangluo/accelerator/ui/home/NewsFragment.kt
View file @
7ba55d3a
...
...
@@ -5,7 +5,10 @@ import android.view.View
import
android.view.ViewGroup
import
androidx.lifecycle.ViewModelProvider
import
com.ccwangluo.accelerator.R
import
com.ccwangluo.accelerator.adapter.KotlinDataAdapter
import
com.ccwangluo.accelerator.databinding.FragmentNewsBinding
import
com.ccwangluo.accelerator.model.News
import
com.ccwangluo.accelerator.ui.news.NewsCollectionAdapter
import
com.google.android.material.tabs.TabLayoutMediator
import
com.xuexiang.xpage.base.XPageFragment
...
...
@@ -20,6 +23,8 @@ class NewsFragment : XPageFragment() {
return
null
}
var
dataList
=
arrayListOf
<
String
>()
override
fun
inflateView
(
inflater
:
LayoutInflater
?,
container
:
ViewGroup
?):
View
{
_binding
=
FragmentNewsBinding
.
inflate
(
inflater
!!
,
container
,
false
)
newsViewModel
=
ViewModelProvider
(
requireActivity
()).
get
(
NewsViewModel
::
class
.
java
)
...
...
@@ -31,13 +36,20 @@ class NewsFragment : XPageFragment() {
override
fun
initViews
()
{
newsViewModel
.
refreshState
.
observe
(
this
,
{
if
(!
it
)
{
binding
.
refreshLayout
.
isRefreshing
=
false
}
})
binding
.
tvMarquee
.
addDisplayString
(
"【公告】韩服 DNF已经开启预约啦,小伙伴…"
)
binding
.
tvMarquee
.
startRoll
()
binding
.
gameNewsList
.
adapter
=
KotlinDataAdapter
.
Builder
<
String
>()
.
setData
(
dataList
)
.
setLayoutId
(
R
.
layout
.
item_news_game
)
.
addBindView
{
itemView
,
itemData
->
}.
create
()
adapter
=
NewsCollectionAdapter
(
this
,
titles
)
binding
.
viewPager
.
adapter
=
adapter
TabLayoutMediator
(
binding
.
tabLayout
,
binding
.
viewPager
)
{
tab
,
position
->
...
...
@@ -48,12 +60,12 @@ class NewsFragment : XPageFragment() {
}
override
fun
initListeners
()
{
binding
.
refreshLayout
.
setOnRefreshListener
{
adapter
?.
refresh
(
binding
.
viewPager
.
currentItem
)
binding
.
refreshLayout
.
postDelayed
({
binding
.
refreshLayout
.
isRefreshing
=
false
},
2000
)
}
//
binding.refreshLayout.setOnRefreshListener {
//
adapter?.refresh(binding.viewPager.currentItem)
//
binding.refreshLayout.postDelayed({
//
binding.refreshLayout.isRefreshing = false
//
}, 2000)
//
}
}
companion
object
{
...
...
app/src/main/java/com/ccwangluo/accelerator/ui/home/NewsViewModel.kt
View file @
7ba55d3a
...
...
@@ -19,9 +19,9 @@ class NewsViewModel : ViewModel() {
fun
freshData
(
position
:
String
,
gameId
:
Int
,
page
:
Int
)
{
val
type
=
when
(
position
)
{
"0"
->
""
"1"
->
"0"
"2"
->
"1"
else
->
3
"1"
->
1
"2"
->
2
else
->
position
}
viewModelScope
.
launch
(
Dispatchers
.
IO
)
{
val
res
=
...
...
@@ -37,4 +37,6 @@ class NewsViewModel : ViewModel() {
}
}
\ No newline at end of file
app/src/main/java/com/ccwangluo/accelerator/ui/news/NewsObjectFragment.kt
View file @
7ba55d3a
package
com.ccwangluo.accelerator.ui.news
import
android.net.Uri
import
android.view.LayoutInflater
import
android.view.View
import
android.view.ViewGroup
import
android.widget.ImageView
import
android.widget.TextView
import
android.widget.VideoView
import
androidx.lifecycle.ViewModelProvider
import
androidx.recyclerview.widget.LinearLayoutManager
import
androidx.recyclerview.widget.RecyclerView
...
...
@@ -19,7 +17,15 @@ import com.ccwangluo.accelerator.ui.news.NewsCollectionAdapter.Companion.ARG_OBJ
import
com.ccwangluo.accelerator.utils.AcceleratorUtils
import
com.xuexiang.xpage.base.XPageFragment
import
com.xuexiang.xpage.utils.TitleBar
import
com.xuexiang.xutil.app.AppUtils
import
fm.jiecao.jcvideoplayer_lib.JCVideoPlayer
import
android.graphics.Bitmap
import
fm.jiecao.jcvideoplayer_lib.JCVideoPlayerStandard
import
android.media.MediaMetadataRetriever
import
com.ccwangluo.accelerator.model.NewsModel
import
java.lang.IllegalArgumentException
class
NewsObjectFragment
:
XPageFragment
()
{
var
recycle_view
:
RecyclerView
?
=
null
...
...
@@ -30,15 +36,17 @@ class NewsObjectFragment : XPageFragment() {
private
lateinit
var
newsViewModel
:
NewsViewModel
private
val
d
evice
List
=
arrayListOf
<
News
>()
private
va
l
page
=
1
private
val
d
ata
List
=
arrayListOf
<
News
>()
private
va
r
page
=
1
private
lateinit
var
position
:
String
private
var
newsModel
:
NewsModel
?
=
null
override
fun
inflateView
(
inflater
:
LayoutInflater
?,
container
:
ViewGroup
?):
View
{
newsViewModel
=
ViewModelProvider
(
this
).
get
(
NewsViewModel
::
class
.
java
)
return
inflater
!!
.
inflate
(
R
.
layout
.
fragment_collection_object
,
container
,
false
)
}
private
var
gameId
=
0
override
fun
initViews
()
{
arguments
?.
takeIf
{
it
.
containsKey
(
ARG_OBJECT
)
}
?.
apply
{
position
=
getInt
(
ARG_OBJECT
).
toString
()
...
...
@@ -46,13 +54,14 @@ class NewsObjectFragment : XPageFragment() {
val
layoutManager
=
LinearLayoutManager
(
context
)
recycle_view
?.
setLayoutManager
(
layoutManager
)
val
adapter
=
KotlinDataAdapter
.
Builder
<
News
>()
.
setData
(
d
evice
List
)
.
setData
(
d
ata
List
)
.
setLayoutId
(
R
.
layout
.
item_dynamic
)
.
addBindView
{
itemView
,
itemData
->
val
avatar
=
itemView
.
findViewById
<
ImageView
>(
R
.
id
.
avatar
)
Glide
.
with
(
this
@NewsObjectFragment
).
load
(
itemData
.
avatar
).
into
(
avatar
)
itemView
.
findViewById
<
TextView
>(
R
.
id
.
nickname
).
setText
(
itemData
.
nickname
)
itemView
.
findViewById
<
TextView
>(
R
.
id
.
createdDate
).
setText
(
itemData
.
createdDate
)
itemView
.
findViewById
<
TextView
>(
R
.
id
.
createdDate
)
.
setText
(
itemData
.
createdDate
?.
substring
(
0
,
10
))
itemData
.
title
?.
let
{
itemView
.
findViewById
<
TextView
>(
R
.
id
.
title
).
visibility
=
View
.
VISIBLE
itemView
.
findViewById
<
TextView
>(
R
.
id
.
title
).
setText
(
it
)
...
...
@@ -64,21 +73,32 @@ class NewsObjectFragment : XPageFragment() {
}
?:
let
{
itemView
.
findViewById
<
TextView
>(
R
.
id
.
abbrContent
).
visibility
=
View
.
GONE
}
// 资讯类型:0攻略 1视频
val
imgs
=
itemView
.
findViewById
<
ImageView
>(
R
.
id
.
imgs
)
val
vedio
=
itemView
.
findViewById
<
VideoView
>(
R
.
id
.
video_view
)
if
(
itemData
.
type
==
0
)
{
itemData
.
imgs
?.
let
{
imgs
.
visibility
=
View
.
VISIBLE
vedio
.
visibility
=
View
.
GONE
Glide
.
with
(
this
@NewsObjectFragment
).
load
(
itemData
.
imgs
).
into
(
imgs
)
}
}
else
if
(
itemData
.
type
==
1
)
{
itemData
.
videoUrl
?.
let
{
imgs
.
visibility
=
View
.
GONE
vedio
.
visibility
=
View
.
VISIBLE
vedio
.
setVideoURI
(
Uri
.
parse
(
it
))
}
val
vedio
=
itemView
.
findViewById
<
JCVideoPlayerStandard
>(
R
.
id
.
video_view
)
vedio
.
backButton
.
visibility
=
View
.
GONE
vedio
.
tinyBackImageView
.
visibility
=
View
.
GONE
itemData
.
imgs
?.
let
{
imgs
.
visibility
=
View
.
VISIBLE
vedio
.
visibility
=
View
.
GONE
Glide
.
with
(
this
@NewsObjectFragment
).
load
(
itemData
.
imgs
).
into
(
imgs
)
}
itemData
.
videoUrl
?.
let
{
imgs
.
visibility
=
View
.
GONE
vedio
.
visibility
=
View
.
VISIBLE
vedio
.
setUp
(
it
,
JCVideoPlayer
.
SCREEN_LAYOUT_LIST
)
Glide
.
with
(
this
@NewsObjectFragment
).
load
(
getNetVideoBitmap
(
it
))
.
into
(
vedio
.
thumbImageView
)
}
itemData
.
pageViews
?.
let
{
itemView
.
findViewById
<
TextView
>(
R
.
id
.
pageViews
).
setText
(
"${it}浏览"
)
}
itemData
.
greatNum
?.
let
{
itemView
.
findViewById
<
TextView
>(
R
.
id
.
great_num
).
setText
(
"${it}"
)
}
}
.
create
()
...
...
@@ -86,27 +106,68 @@ class NewsObjectFragment : XPageFragment() {
AcceleratorUtils
.
getGameList
(
this
@NewsObjectFragment
)
{
if
(
it
)
{
AcceleratorUtils
.
game
?.
let
{
gameId
=
it
.
id
newsViewModel
.
freshData
(
position
,
it
.
id
,
page
)
}
}
}
recycle_view
?.
addOnScrollListener
(
object
:
RecyclerView
.
OnScrollListener
()
{
override
fun
onScrollStateChanged
(
recyclerView
:
RecyclerView
,
newState
:
Int
)
{
super
.
onScrollStateChanged
(
recyclerView
,
newState
)
}
override
fun
onScrolled
(
recyclerView
:
RecyclerView
,
dx
:
Int
,
dy
:
Int
)
{
super
.
onScrolled
(
recyclerView
,
dx
,
dy
)
if
(
isSlideToBottom
(
recyclerView
))
{
newsModel
?.
let
{
if
(
dataList
.
size
<
it
.
total
)
{
page
++
newsViewModel
.
freshData
(
position
,
gameId
,
page
)
}
}
}
}
})
}
newsViewModel
.
newsModel
.
observe
(
this
,
{
deviceList
.
addAll
(
it
.
list
)
newsModel
=
it
dataList
.
addAll
(
it
.
list
)
recycle_view
?.
adapter
?.
notifyDataSetChanged
()
})
}
protected
fun
isSlideToBottom
(
recyclerView
:
RecyclerView
?):
Boolean
{
if
(
recyclerView
==
null
)
return
false
return
if
(
recyclerView
.
computeVerticalScrollExtent
()
+
recyclerView
.
computeVerticalScrollOffset
()
>=
recyclerView
.
computeVerticalScrollRange
())
true
else
false
}
fun
getNetVideoBitmap
(
videoUrl
:
String
?):
Bitmap
?
{
var
bitmap
:
Bitmap
?
=
null
val
retriever
=
MediaMetadataRetriever
()
try
{
//根据url获取缩略图
retriever
.
setDataSource
(
videoUrl
,
HashMap
())
//获得第一帧图片
bitmap
=
retriever
.
frameAtTime
}
catch
(
e
:
IllegalArgumentException
)
{
e
.
printStackTrace
()
}
finally
{
retriever
.
release
()
}
return
bitmap
}
override
fun
initListeners
()
{
}
fun
refresh
()
{
recycle_view
?.
postDelayed
(
{
AcceleratorUtils
.
game
?.
let
{
newsViewModel
.
freshData
(
position
,
it
.
id
,
page
)
}
}
,
1000
)
AcceleratorUtils
.
game
?.
let
{
gameId
=
it
.
id
page
=
1
newsViewModel
.
freshData
(
position
,
it
.
id
,
page
)
}
}
}
\ No newline at end of file
app/src/main/java/com/ccwangluo/accelerator/ui/web/AndroidInterface.kt
View file @
7ba55d3a
...
...
@@ -15,6 +15,10 @@ import com.karumi.dexter.listener.multi.MultiplePermissionsListener
import
com.xuexiang.xpage.base.XPageFragment
import
com.xuexiang.xutil.app.AppUtils
import
com.xuexiang.xutil.system.PermissionUtils
import
android.content.Intent
import
android.net.Uri
import
com.hjq.toast.ToastUtils
import
java.lang.Exception
/**
...
...
@@ -186,4 +190,26 @@ class AndroidInterface(val xPageFragment: XPageFragment, val agentWeb: AgentWeb)
.
quickCallJs
(
callback
,
AppUtils
.
getAppVersionName
(),
AppUtils
.
getAppVersionCode
().
toString
())
}
/****************
*
* 发起添加群流程。
* 调用 joinQQGroup(09Gg-vMtnaIfgr-slk1pOkjVIFmjI79U)
*/
@JavascriptInterface
fun
joinQQGroup
(
url
:
String
)
{
val
intent
=
Intent
()
intent
.
data
=
Uri
.
parse
(
url
)
// 此Flag可根据具体产品需要自定义,如设置,则在加群界面按返回,返回手Q主界面,不设置,按返回会返回到呼起产品界面 //
intent
.
addFlags
(
Intent
.
FLAG_ACTIVITY_NEW_TASK
)
try
{
xPageFragment
.
startActivity
(
intent
)
}
catch
(
e
:
Exception
)
{
// 未安装手Q或安装的版本不支持
ToastUtils
.
show
(
"未安装手Q或安装的版本不支持"
)
}
}
}
\ No newline at end of file
app/src/main/res/layout/fragment_collection_object.xml
View file @
7ba55d3a
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
<androidx.recyclerview.widget.RecyclerView
app:layout_behavior=
"@string/appbar_scrolling_view_behavior"
android:id=
"@+id/recycle_view"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
/>
...
...
app/src/main/res/layout/fragment_mine.xml
View file @
7ba55d3a
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
...
...
app/src/main/res/layout/fragment_news.xml
View file @
7ba55d3a
<?xml version="1.0" encoding="utf-8"?>
<androidx.
swiperefreshlayout.widget.SwipeRefresh
Layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
<androidx.
coordinatorlayout.widget.Coordinator
Layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:id=
"@+id/refresh_layout"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/black"
android:orientation=
"vertical"
>
android:background=
"@color/white"
>
<LinearLayout
<com.google.android.material.appbar.AppBarLayout
android:id=
"@+id/appbar"
android:background=
"@color/white"
android:layout_width=
"match_parent"
android:layout_height=
"
match_par
ent"
android:
orientation=
"vertical
"
>
android:layout_height=
"
wrap_cont
ent"
android:
theme=
"@style/ThemeOverlay.AppCompat.Dark.ActionBar
"
>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"36dp"
android:gravity=
"center_horizontal"
android:text=
"地下城与勇士 韩服"
android:textColor=
"#FFFFFFFF"
android:textSize=
"16sp"
/>
<com.xuexiang.xui.widget.layout.XUILinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_marginTop=
"16dp"
android:background=
"@color/white"
android:orientation=
"vertical"
app:xui_hideRadiusSide=
"bottom"
app:xui_radius=
"10dp"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"21dp"
android:orientation=
"horizontal"
>
<LinearLayout
android:layout_width=
"wrap_content"
<TextView
app:layout_scrollFlags=
"scroll|exitUntilCollapsed"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"20dp"
android:orientation=
"vertical"
>
<ImageView
android:layout_width=
"48dp"
android:layout_height=
"48dp"
android:layout_gravity=
"center_horizontal"
android:background=
"@mipmap/game_download"
/>
<TextView
android:layout_width=
"70dp"
android:layout_height=
"20dp"
android:layout_marginTop=
"8dp"
android:gravity=
"center"
android:text=
"游戏下载"
android:textColor=
"#FF3B3B3B"
android:textSize=
"14sp"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"wrap_content"
android:background=
"@mipmap/new_top"
android:gravity=
"center"
android:paddingTop=
"36dp"
android:paddingBottom=
"16dp"
android:text=
"地下城与勇士 韩服"
android:textColor=
"#FFFFFFFF"
android:textSize=
"16sp"
app:layout_collapseMode=
"pin"
/>
<androidx.recyclerview.widget.RecyclerView
app:layout_scrollFlags=
"scroll|exitUntilCollapsed"
android:id=
"@+id/game_news_list"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"20dp"
android:orientation=
"vertical"
>
android:layout_marginTop=
"21dp"
android:background=
"@color/white"
android:orientation=
"horizontal"
app:layout_collapseMode=
"parallax"
>
<ImageView
android:layout_width=
"48dp"
android:layout_height=
"48dp"
android:layout_gravity=
"center_horizontal"
android:background=
"@mipmap/game_group"
/>
<TextView
android:layout_width=
"70dp"
android:layout_height=
"20dp"
android:layout_marginTop=
"8dp"
android:gravity=
"center"
android:text=
"万能宝藏群"
android:textColor=
"#FF3B3B3B"
android:textSize=
"14sp"
/>
</LinearLayout>
</androidx.recyclerview.widget.RecyclerView>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_scrollFlags=
"noScroll"
android:layout_width=
"match_parent"
android:layout_height=
"20dp"
android:layout_marginLeft=
"20dp"
android:orientation=
"vertical"
>
android:layout_marginTop=
"21dp"
android:layout_marginRight=
"20dp"
app:layout_collapseMode=
"parallax"
>
<ImageView
android:layout_width=
"48dp"
android:layout_height=
"48dp"
android:layout_gravity=
"center_horizontal"
android:background=
"@mipmap/game_google"
/>
<TextView
android:layout_width=
"70dp"
android:layout_height=
"20dp"
android:layout_marginTop=
"8dp"
android:layout_width=
"17.95dp"
android:layout_height=
"14.6dp"
android:layout_gravity=
"center_vertical"
android:background=
"@mipmap/icon_notice"
/>
<com.xuexiang.xui.widget.textview.MarqueeTextView
android:id=
"@+id/tv_marquee"
android:layout_width=
"299dp"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"3dp"
android:gravity=
"center"
android:text=
"谷歌套件"
android:textColor=
"#FF3B3B3B"
android:textSize=
"14sp"
/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"20dp"
android:layout_marginLeft=
"20dp"
android:layout_marginTop=
"21dp"
android:layout_marginRight=
"20dp"
>
android:text=
""
android:textColor=
"#FF1A1A1A"
android:textSize=
"14sp"
app:mtv_isAutoDisplay=
"true"
app:mtv_isAutoFit=
"true"
/>
<ImageView
android:layout_width=
"17.95dp"
android:layout_height=
"14.6dp"
android:layout_gravity=
"center_vertical"
android:background=
"@mipmap/icon_notice"
/>
</LinearLayout>
<com.xuexiang.xui.widget.textview.MarqueeTextView
android:id=
"@+id/tv_marquee"
android:layout_width=
"299dp"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"3dp"
android:gravity=
"center"
android:text=
""
android:textColor=
"#FF1A1A1A"
android:textSize=
"14sp"
app:mtv_isAutoDisplay=
"true"
app:mtv_isAutoFit=
"true"
/>
</com.google.android.material.appbar.AppBarLayout>
</LinearLayout>
<com.google.android.material.tabs.TabLayout
android:id=
"@+id/tab_layout"
style=
"@style/MyTablayoutstyle"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"5dp"
app:tabBackground=
"@null"
app:tabRippleColor=
"@null"
/>
<androidx.appcompat.widget.LinearLayoutCompat
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
app:layout_behavior=
"@string/appbar_scrolling_view_behavior"
>
<androidx.viewpager2.widget.ViewPager2
android:id=
"@+id/view_pager"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
/>
<com.google.android.material.tabs.TabLayout
android:id=
"@+id/tab_layout"
style=
"@style/MyTablayoutstyle"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"5dp"
app:tabBackground=
"@null"
app:tabRippleColor=
"@null"
/>
</com.xuexiang.xui.widget.layout.XUILinearLayout>
</LinearLayout>
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
\ No newline at end of file
<androidx.viewpager2.widget.ViewPager2
android:id=
"@+id/view_pager"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
/>
</androidx.appcompat.widget.LinearLayoutCompat>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_quick.xml
View file @
7ba55d3a
...
...
@@ -70,7 +70,6 @@
android:layout_height=
"wrap_content"
>
<ImageView
android:id=
"@+id/game_pic_out"
android:layout_width=
"250dp"
...
...
@@ -109,7 +108,7 @@
app:cpv_end_progress=
"99"
app:cpv_isFilled=
"false"
app:cpv_isTracked=
"true"
app:cpv_progress_duration=
"
20
00"
app:cpv_progress_duration=
"
15
00"
app:cpv_progress_textColor=
"#8BE7FA"
app:cpv_progress_textSize=
"50sp"
app:cpv_progress_textVisibility=
"false"
...
...
@@ -126,35 +125,43 @@
android:layout_centerInParent=
"true"
android:background=
"#77000000"
android:gravity=
"center"
android:visibility=
"gone"
android:orientation=
"horizontal"
android:visibility=
"gone"
app:xui_borderColor=
"@color/transparent"
app:xui_outerNormalColor=
"@color/transparent"
app:xui_radius=
"190dp"
app:xui_showBorderOnlyBeforeL=
"false"
>
<LinearLayout
android:orientation=
"horizontal"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
>
android:layout_height=
"wrap_content"
android:orientation=
"horizontal"
>
<TextView
android:id=
"@+id/progress"
android:text=
"0"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"0"
android:textColor=
"#8BE7FA"
android:textSize=
"70sp"
/>
android:textSize=
"70sp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:textColor=
"#8BE7FA"
android:text=
"%"
android:text
Size=
"25sp
"
/>
android:text
Color=
"#8BE7FA
"
android:textSize=
"25sp"
/>
</LinearLayout>
</com.xuexiang.xui.widget.layout.XUILinearLayout>
<ImageView
android:id=
"@+id/game_start"
android:visibility=
"gone"
android:layout_width=
"190dp"
android:layout_height=
"190dp"
android:layout_centerInParent=
"true"
android:background=
"@mipmap/game_start_btn"
/>
<com.xuexiang.xui.widget.layout.XUILinearLayout
android:id=
"@+id/quick_top_toast"
...
...
@@ -163,8 +170,8 @@
android:layout_centerHorizontal=
"true"
android:background=
"#FF151721"
android:gravity=
"center"
android:visibility=
"gone"
android:orientation=
"horizontal"
android:visibility=
"gone"
app:xui_radius=
"10dp"
>
<ImageView
...
...
@@ -647,7 +654,7 @@
android:textSize=
"14sp"
/>
<com.xuexiang.xui.widget.button.roundbutton.RoundButton
android:id=
"@+id/prevent_acc_invalid"
android:id=
"@+id/prevent_acc_invalid"
android:layout_width=
"70dp"
android:layout_height=
"25dp"
android:gravity=
"center"
...
...
@@ -716,14 +723,14 @@
android:textSize=
"16sp"
/>
<TextView
android:visibility=
"gone"
android:id=
"@+id/pre_delay1_unit"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:gravity=
"center"
android:text=
"ms"
android:textColor=
"#FF94949B"
android:textSize=
"12sp"
/>
android:textSize=
"12sp"
android:visibility=
"gone"
/>
</LinearLayout>
</LinearLayout>
...
...
@@ -765,14 +772,14 @@
android:textSize=
"16sp"
/>
<TextView
android:visibility=
"gone"
android:id=
"@+id/net_delay1_unit"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:gravity=
"center"
android:text=
"ms"
android:textColor=
"#FF94949B"
android:textSize=
"12sp"
/>
android:textSize=
"12sp"
android:visibility=
"gone"
/>
</LinearLayout>
</LinearLayout>
...
...
@@ -815,14 +822,14 @@
android:textSize=
"16sp"
/>
<TextView
android:visibility=
"gone"
android:id=
"@+id/net_lost1_unit"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:gravity=
"center"
android:text=
"%"
android:textColor=
"#FF94949B"
android:textSize=
"12sp"
/>
android:textSize=
"12sp"
android:visibility=
"gone"
/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
...
...
app/src/main/res/layout/fragment_webview.xml
View file @
7ba55d3a
...
...
@@ -2,11 +2,12 @@
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:fitsSystemWindows=
"true"
android:orientation=
"vertical"
>
<FrameLayout
android:layout_marginTop=
"30dp"
android:id=
"@+id/common_webview"
android:layout_marginBottom=
"50dp"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
/>
...
...
app/src/main/res/layout/item_dynamic.xml
View file @
7ba55d3a
...
...
@@ -56,7 +56,8 @@
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"8dp"
android:text=
"DNF合金战士怎么还没出?智慧的引导和奥兹玛怎么进?"
android:maxLines=
"2"
android:ellipsize=
"end"
android:textColor=
"#FF000000"
android:textSize=
"14sp"
/>
...
...
@@ -65,7 +66,8 @@
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"6dp"
android:text=
"DNF合金战士怎么还没出?智慧的引导和奥兹玛怎么进?智慧的引导和奥兹玛怎么进?智慧的引导和奥兹玛怎么进…"
android:maxLines=
"3"
android:ellipsize=
"end"
android:textColor=
"#FF4A4A4A"
android:textSize=
"14sp"
/>
...
...
@@ -76,7 +78,7 @@
android:layout_marginTop=
"12.65dp"
android:visibility=
"gone"
/>
<
VideoView
<
fm.jiecao.jcvideoplayer_lib.JCVideoPlayerStandard
android:id=
"@+id/video_view"
android:layout_width=
"match_parent"
android:layout_height=
"182.5dp"
...
...
@@ -90,13 +92,14 @@
android:layout_marginBottom=
"11dp"
>
<TextView
android:id=
"@+id/pageViews"
android:layout_width=
"57.5dp"
android:layout_height=
"15dp"
android:text=
"1502次浏览"
android:textColor=
"#FFB4B4B4"
android:textSize=
"11sp"
/>
<TextView
android:id=
"@+id/great_num"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
...
...
@@ -107,6 +110,7 @@
android:textSize=
"14sp"
/>
<ImageView
android:id=
"@+id/great_img"
android:layout_width=
"14dp"
android:layout_height=
"14dp"
android:layout_alignParentRight=
"true"
...
...
app/src/main/res/layout/item_news_game.xml
0 → 100644
View file @
7ba55d3a
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"20dp"
android:layout_marginRight=
"20dp"
android:orientation=
"vertical"
>
<ImageView
android:layout_width=
"48dp"
android:layout_height=
"48dp"
android:layout_gravity=
"center_horizontal"
android:background=
"@mipmap/game_download"
/>
<TextView
android:layout_width=
"70dp"
android:layout_height=
"20dp"
android:layout_marginTop=
"8dp"
android:gravity=
"center"
android:text=
"游戏下载"
android:textColor=
"#FF3B3B3B"
android:textSize=
"14sp"
/>
</LinearLayout>
app/src/main/res/mipmap-xxxhdpi/game_start_btn.png
0 → 100644
View file @
7ba55d3a
65.3 KB
app/src/main/res/mipmap-xxxhdpi/new_top.png
0 → 100644
View file @
7ba55d3a
380 KB
core/src/main/java/com/github/shadowsocks/http/HttpConfig.kt
View file @
7ba55d3a
...
...
@@ -10,6 +10,7 @@ object HttpConfig {
* 主页h5
*/
val
UI_MAIN_URL
=
"https://test-cc-tt-front.orangenet.org.cn/#"
// val UI_MAIN_URL = "http://10.3.0.217:8080/#"
//隐私协议地址
val
privacy_url
=
"http:wwww.baidu.com"
...
...
core/src/main/res/values-ar/strings.xml
deleted
100644 → 0
View file @
09b15c01
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 by Max Lv <max.c.lv@gmail.com>
Copyright (C) 2019 by Mygod Studio <contact-shadowsocks-android@mygod.be>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
DO NOT EDIT: This file was automagically generated by script.
If you are looking for contributing a translation, read this:
https://discourse.shadowsocks.org/t/poeditor-translation-main-thread/30
-->
<resources>
<string
name=
"quick_toggle"
>
"تغيير"
</string>
<string
name=
"remote_dns"
>
"سيرفر ال DNS"
</string>
<string
name=
"stat_summary"
>
"ارسل: \t%3$s\t↑\t%1$s
استقبل: \t%4$s\t↓\t%2$s"
</string>
<string
name=
"connection_test_testing"
>
"اختبار الاتصال…"
</string>
<string
name=
"connection_test_error"
>
"فشل فحص اتصال الانترنت: %s"
</string>
<string
name=
"connection_test_fail"
>
"لا يوجد اتصال بالانترنت"
</string>
<string
name=
"connection_test_error_status_code"
>
"خطآ رقم: #%d"
</string>
<string
name=
"proxy"
>
"السيرفر"
</string>
<string
name=
"remote_port"
>
"المنفذ"
</string>
<string
name=
"sitekey"
>
"كلمة المرور"
</string>
<string
name=
"enc_method"
>
"طريقة التشفير"
</string>
</resources>
\ No newline at end of file
core/src/main/res/values-es/strings.xml
deleted
100644 → 0
View file @
09b15c01
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 by Max Lv <max.c.lv@gmail.com>
Copyright (C) 2019 by Mygod Studio <contact-shadowsocks-android@mygod.be>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
DO NOT EDIT: This file was automagically generated by script.
If you are looking for contributing a translation, read this:
https://discourse.shadowsocks.org/t/poeditor-translation-main-thread/30
-->
<resources>
<string
name=
"quick_toggle"
>
"Alternar"
</string>
<string
name=
"remote_dns"
>
"DNS Remoto"
</string>
<string
name=
"stat_summary"
>
"Enviado: \t\t\t\t\t%3$s\t↑\t%1$s
Recibido: \t%4$s\t↓\t%2$s"
</string>
<string
name=
"connection_test_testing"
>
"Probando…"
</string>
<string
name=
"connection_test_available"
>
"Éxito: El establecimiento de la comunicación HTTPS tomó %dms"
</string>
<string
name=
"connection_test_error"
>
"Fallo al detectar conexión a Internet: %s"
</string>
<string
name=
"connection_test_fail"
>
"Internet no disponible"
</string>
<string
name=
"connection_test_error_status_code"
>
"Código de error: #%d"
</string>
<!-- proxy category -->
<string
name=
"profile_name"
>
"Nombre de Perfil"
</string>
<string
name=
"proxy"
>
"Servidor"
</string>
<string
name=
"remote_port"
>
"Puerto Remoto"
</string>
<string
name=
"sitekey"
>
"Contraseña"
</string>
<string
name=
"enc_method"
>
"Método de Cifrado"
</string>
<!-- feature category -->
<string
name=
"ipv6"
>
"Ruta IPv6"
</string>
<string
name=
"ipv6_summary"
>
"Redireccionar tráfico IPv6 a ruta"
</string>
<string
name=
"route_list"
>
"Ruta"
</string>
<string
name=
"route_entry_gfwlist"
>
"Lista GFW"
</string>
<string
name=
"proxied_apps"
>
"Apps en modo VPN"
</string>
<string
name=
"proxied_apps_summary"
>
"Configurar modo VPN para las apps seleccionadas"
</string>
<string
name=
"on"
>
"Encendido"
</string>
<!-- Fuzzy -->
<string
name=
"bypass_apps"
>
"Modo Bypass"
</string>
<string
name=
"auto_connect"
>
"Conexión Automática"
</string>
<!-- Fuzzy -->
<string
name=
"auto_connect_summary"
>
"Activar Shadowsocks al iniciar"
</string>
<string
name=
"tcp_fastopen_summary_unsupported"
>
"Versión del Núcleo sin soporte: %s
<
3.7.1"
</string>
<string
name=
"udp_dns"
>
"Enviar DNS sobre UDP"
</string>
<!-- notification category -->
<string
name=
"forward_success"
>
"Shadowsocks inició."
</string>
<string
name=
"invalid_server"
>
"Nombre de servidor inválido"
</string>
<string
name=
"service_failed"
>
"Fallo al conectar al servidor remoto"
</string>
<string
name=
"stop"
>
"Detener"
</string>
<string
name=
"stopping"
>
"Apagando…"
</string>
<string
name=
"reboot_required"
>
"Fallo al iniciar servicio VPN. Puede que tengas que reiniciar tu dispositivo."
</string>
<string
name=
"profile_invalid_input"
>
"No se ha encontrado datos de perfil válidos."
</string>
<!-- alert category -->
<string
name=
"profile_empty"
>
"Por favor selecciona un perfil"
</string>
<string
name=
"proxy_empty"
>
"Proxy/Contraseña no deberían estar vacíos"
</string>
<string
name=
"connect"
>
"Conectar"
</string>
<!-- menu category -->
<string
name=
"profiles"
>
"Perfiles"
</string>
<string
name=
"settings"
>
"Preferencias"
</string>
<string
name=
"faq"
>
"FAQ"
</string>
<string
name=
"about"
>
"Acerca de"
</string>
<string
name=
"edit"
>
"Editar"
</string>
<string
name=
"share"
>
"Compartir"
</string>
<string
name=
"add_profile"
>
"Agregar Perfil"
</string>
<string
name=
"action_apply_all"
>
"Aplicar preferencias a todos los Perfiles"
</string>
<string
name=
"action_export"
>
"Exportar a portapapeles"
</string>
<string
name=
"action_import"
>
"Importar desde portapapeles"
</string>
<string
name=
"action_export_msg"
>
"¡Exportado satisfactoriamente!"
</string>
<string
name=
"action_export_err"
>
"Fallo al exportar."
</string>
<string
name=
"action_import_msg"
>
"¡Importado satisfactoriamente!"
</string>
<string
name=
"action_import_err"
>
"Fallo al importar."
</string>
<!-- profile -->
<string
name=
"profile_config"
>
"Configuración de Perfil"
</string>
<string
name=
"delete"
>
"Remover"
</string>
<string
name=
"delete_confirm_prompt"
>
"¿Estás seguro de querer remover este perfil?"
</string>
<!-- Fuzzy -->
<string
name=
"share_qr_nfc"
>
"Código QR/NFC"
</string>
<string
name=
"add_profile_dialog"
>
"Agregar este Perfil Shadowsocks?"
</string>
<string
name=
"add_profile_methods_scan_qr_code"
>
"Escanear código QR"
</string>
<plurals
name=
"removed"
>
<item
quantity=
"one"
>
"Removido"
</item>
<item
quantity=
"other"
>
"%d elementos removidos"
</item>
</plurals>
<string
name=
"undo"
>
"Deshacer"
</string>
<!-- tasker -->
<string
name=
"toggle_service_state"
>
"Iniciar el servicio"
</string>
<string
name=
"start_service_default"
>
"Conectar al servidor actual"
</string>
<string
name=
"start_service"
>
"Conectar a %s"
</string>
<string
name=
"stop_service"
>
"Cambiar a %s"
</string>
<string
name=
"profile_default"
>
"Usar el perfil actual"
</string>
<!-- status -->
<string
name=
"sent"
>
"Enviado:"
</string>
<string
name=
"received"
>
"Recibido:"
</string>
<!-- status -->
<string
name=
"connecting"
>
"Conectando…"
</string>
<string
name=
"vpn_connected"
>
"Conectado, presiona para verificar la conexión"
</string>
<string
name=
"not_connected"
>
"No conectado"
</string>
<!-- acl -->
<string
name=
"custom_rules"
>
"Reglas personalizadas"
</string>
<string
name=
"action_add_rule"
>
"Agregar regla(s)…"
</string>
<string
name=
"edit_rule"
>
"Editar regla"
</string>
<string
name=
"route_entry_all"
>
"Todo"
</string>
<!-- plugin -->
<string
name=
"plugin"
>
"Complemento"
</string>
<string
name=
"plugin_configure"
>
"Configurar…"
</string>
<string
name=
"plugin_disabled"
>
"Deshabilitado"
</string>
<string
name=
"plugin_unknown"
>
"Complemento desconocido %s"
</string>
<string
name=
"plugin_untrusted"
>
"Precaución: Este complemento no parece venir de una fuente confiable."
</string>
<string
name=
"profile_plugin"
>
"Complemento: %s"
</string>
<string
name=
"add_profile_scanner_permission_required"
>
"Se requiere permiso de cámara para escanear códigos QR."
</string>
<!-- notification category -->
<string
name=
"service_vpn"
>
"Servicio VPN"
</string>
<string
name=
"add_profile_methods_manual_settings"
>
"Configuración manual"
</string>
<!-- misc -->
<string
name=
"advanced"
>
"Avanzado"
</string>
<!-- misc -->
<string
name=
"service_mode"
>
"Modo de servicio"
</string>
<string
name=
"service_mode_proxy"
>
"Sólo Proxy"
</string>
<string
name=
"service_mode_vpn"
>
"VPN"
</string>
<string
name=
"port_proxy"
>
"Puerto proxy SOCKS5"
</string>
<string
name=
"port_local_dns"
>
"Puerto DNS local"
</string>
<string
name=
"service_proxy"
>
"Servicio Proxy"
</string>
<string
name=
"service_transproxy"
>
"Servicio Transproxy"
</string>
<string
name=
"vpn_permission_denied"
>
"Permiso denegado al crear servicio VPN"
</string>
<string
name=
"direct_boot_aware_summary"
>
"La información del perfil seleccionado será menos protegida"
</string>
<string
name=
"action_import_file"
>
"Importar desde archivo…"
</string>
<string
name=
"night_mode"
>
"Modo nocturno"
</string>
<string
name=
"night_mode_system"
>
"Seguir sistema"
</string>
<string
name=
"night_mode_auto"
>
"Auto"
</string>
<string
name=
"night_mode_on"
>
"Encendido"
</string>
<string
name=
"night_mode_off"
>
"Apagado"
</string>
<string
name=
"send_email"
>
"Enviar email"
</string>
<string
name=
"action_export_more"
>
"Exportar…"
</string>
<string
name=
"action_export_file"
>
"Exportar a archivo…"
</string>
<string
name=
"share_over_lan"
>
"Compartir por LAN"
</string>
<string
name=
"connection_test_pending"
>
"Verificar conectividad"
</string>
<string
name=
"file_manager_missing"
>
"Por favor, instala un explorador de archivos como MiXplorer"
</string>
<string
name=
"action_replace_file"
>
"Reemplazar desde archivo…"
</string>
</resources>
\ No newline at end of file
core/src/main/res/values-fa/strings.xml
deleted
100644 → 0
View file @
09b15c01
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 by Max Lv <max.c.lv@gmail.com>
Copyright (C) 2019 by Mygod Studio <contact-shadowsocks-android@mygod.be>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
DO NOT EDIT: This file was automagically generated by script.
If you are looking for contributing a translation, read this:
https://discourse.shadowsocks.org/t/poeditor-translation-main-thread/30
-->
<resources>
<string
name=
"app_name"
>
"شدوساکس"
</string>
<string
name=
"remote_dns"
>
"دیاناس سرور"
</string>
<string
name=
"connection_test_testing"
>
"در حال آزمایش…"
</string>
<string
name=
"connection_test_fail"
>
"ارتباط با اینترنت فراهم نیست"
</string>
<!-- proxy category -->
<string
name=
"profile_name"
>
"نام پروفایل"
</string>
<string
name=
"proxy"
>
"سرور"
</string>
<string
name=
"remote_port"
>
"پورت سرور"
</string>
<string
name=
"sitekey"
>
"کلمه عبور"
</string>
<string
name=
"enc_method"
>
"طریقه رمزگذاری"
</string>
<!-- feature category -->
<string
name=
"ipv6"
>
"مسیر IPv6"
</string>
<string
name=
"ipv6_summary"
>
"ترافیک IPv6 را به سرور هدایت کن"
</string>
<string
name=
"route_list"
>
"روت"
</string>
<string
name=
"route_entry_gfwlist"
>
"فهرست فیلترینگ"
</string>
<string
name=
"proxied_apps"
>
"حالت "
</string>
<string
name=
"proxied_apps_summary"
>
"تنظیم حالت ویپیان برای اپلیکیشنهای انتخاب شده"
</string>
<string
name=
"on"
>
"روشن"
</string>
<!-- Fuzzy -->
<string
name=
"bypass_apps"
>
"حالت صرفنظر"
</string>
<string
name=
"bypass_apps_summary"
>
"این اپلیکیشنها از ویپیان استفاده نکنند"
</string>
<string
name=
"auto_connect"
>
"وصلشدن اتوماتیک"
</string>
<!-- Fuzzy -->
<string
name=
"auto_connect_summary"
>
"فعالشدن شدوساکس لحظه روشنشدن گوشی"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns"
>
"ارسال دیاناس"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns_summary"
>
"ارسال کلیه درخواستهای دیاناس به سرور "
</string>
<!-- notification category -->
<string
name=
"forward_success"
>
"شدوساکس فعال شد."
</string>
<string
name=
"invalid_server"
>
"آدرس سرور نامعتبر است"
</string>
<string
name=
"service_failed"
>
"اتصال به سرور ناموفق بود!"
</string>
<string
name=
"stop"
>
"غیرفعالکردن"
</string>
<string
name=
"stopping"
>
"در حال قطعکردن اتصال…"
</string>
<string
name=
"reboot_required"
>
"راهاندازی سرویس ویپیان ناموفق بود. شاید مشکل با روشن خاموش کردن دستگاه حل شود."
</string>
<string
name=
"profile_invalid_input"
>
"هیچ پروفایل معتبری یافت نشد!"
</string>
<!-- alert category -->
<string
name=
"profile_empty"
>
"لطفا یک پروفایل انتخاب کنید."
</string>
<string
name=
"proxy_empty"
>
"پروکسی یا کلمه عبور نباید خالی باشند!"
</string>
<string
name=
"connect"
>
"اتصال"
</string>
<!-- menu category -->
<string
name=
"profiles"
>
"پروفایلها"
</string>
<string
name=
"settings"
>
"تنظیمات"
</string>
<string
name=
"faq"
>
"سوالات متداول"
</string>
<string
name=
"about"
>
"درباره ما"
</string>
<string
name=
"edit"
>
"ویرایش"
</string>
<string
name=
"share"
>
"به اشتراک گذاری"
</string>
<string
name=
"add_profile"
>
"افزودن پروفایل"
</string>
<string
name=
"action_apply_all"
>
"اعمال تنظیمات برای همه پروفایلها"
</string>
<string
name=
"action_export"
>
"صدور به کلیپ بورد"
</string>
<string
name=
"action_import"
>
"ورود از کلیپ بورد"
</string>
<string
name=
"action_export_msg"
>
"صدور موفقیتآمیز!"
</string>
<string
name=
"action_export_err"
>
"صدور ناموفق."
</string>
<string
name=
"action_import_msg"
>
"ورود موفقیتآمیز"
</string>
<string
name=
"action_import_err"
>
"ورود ناموفق."
</string>
<!-- profile -->
<string
name=
"profile_config"
>
"تنظیمات پروفایل"
</string>
<string
name=
"delete"
>
"حذف"
</string>
<string
name=
"delete_confirm_prompt"
>
"آیا مطمئن هستید که میخواهید این پروفایل را حذف کنید؟"
</string>
<!-- Fuzzy -->
<string
name=
"share_qr_nfc"
>
"NFC یا QR Code"
</string>
<string
name=
"add_profile_dialog"
>
"این پروفایل اضافه شود؟"
</string>
<string
name=
"add_profile_methods_scan_qr_code"
>
"اسکنکردن QR Code"
</string>
<string
name=
"undo"
>
"بازگرداندن"
</string>
<!-- tasker -->
<string
name=
"toggle_service_state"
>
"فعالکردن سرویس"
</string>
<string
name=
"start_service_default"
>
"وصلشدن به سرور فعلی"
</string>
<string
name=
"start_service"
>
"وصل شدن به "
</string>
<string
name=
"profile_default"
>
"استفاده از پروفایل فعلی"
</string>
<!-- status -->
<string
name=
"sent"
>
"فرستادهشده:"
</string>
<string
name=
"received"
>
"دریافتشده:"
</string>
<!-- status -->
<string
name=
"connecting"
>
"در حال اتصال…"
</string>
<string
name=
"vpn_connected"
>
"وصل شد. برای بررسی اتصال ضربه (Tap) بزنید."
</string>
<string
name=
"not_connected"
>
"اتصال برقرار نیست!"
</string>
<!-- acl -->
<string
name=
"custom_rules"
>
"قواعد دلخواه"
</string>
<string
name=
"action_add_rule"
>
"اضافه کردن قواعد"
</string>
<string
name=
"edit_rule"
>
"ویرایش قواعد"
</string>
<string
name=
"route_entry_all"
>
"همه"
</string>
<string
name=
"route_entry_bypass_lan"
>
"صرفنظر کردن از شبکه داخلی"
</string>
<string
name=
"route_entry_bypass_chn"
>
"صرفنظر کردن از سایتهای داخل ایران"
</string>
<string
name=
"route_entry_bypass_lan_chn"
>
"صرفنظر کردن از شبکه داخلی و سایتهای داخل ایران"
</string>
<string
name=
"route_entry_chinalist"
>
"فهرست ایران"
</string>
<string
name=
"plugin_configure"
>
"تنظیم"
</string>
<string
name=
"plugin_disabled"
>
"خاموش"
</string>
<string
name=
"add_profile_scanner_permission_required"
>
"مجوز دوربین برای اسکن کردن کد QR مورد نیاز است."
</string>
<!-- notification category -->
<string
name=
"service_vpn"
>
"سرویس ویپیان"
</string>
<string
name=
"add_profile_methods_manual_settings"
>
"تنظیمات دستی"
</string>
<!-- misc -->
<string
name=
"advanced"
>
"پیشرفته"
</string>
<!-- misc -->
<string
name=
"service_mode"
>
"وضعیت سرویس"
</string>
<string
name=
"service_mode_proxy"
>
"فقط پروکسی"
</string>
<string
name=
"service_mode_vpn"
>
"ویپیان"
</string>
<string
name=
"service_mode_transproxy"
>
"ترانسپروکسی"
</string>
<string
name=
"port_proxy"
>
"پورت پروکسی SOCKS5"
</string>
<string
name=
"port_local_dns"
>
"پورت دیاناس محلی"
</string>
<string
name=
"port_transproxy"
>
"پورت ترانسپروکسی"
</string>
<string
name=
"service_proxy"
>
"سرویس پروکسی"
</string>
<string
name=
"service_transproxy"
>
"سرویس ترانسپروکسی"
</string>
<string
name=
"vpn_permission_denied"
>
"مجوز برای ساخت ویپیان فراهم نیست"
</string>
<string
name=
"auto_connect_summary_v24"
>
"شدوساکس را از ابتدا فعال کن. توصیه میشود که به جای این گزینه از گزینه always-on vpn استفاده شود"
</string>
<string
name=
"action_import_file"
>
"ورودی از فایل…"
</string>
</resources>
\ No newline at end of file
core/src/main/res/values-fr/strings.xml
deleted
100644 → 0
View file @
09b15c01
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 by Max Lv <max.c.lv@gmail.com>
Copyright (C) 2019 by Mygod Studio <contact-shadowsocks-android@mygod.be>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
DO NOT EDIT: This file was automagically generated by script.
If you are looking for contributing a translation, read this:
https://discourse.shadowsocks.org/t/poeditor-translation-main-thread/30
-->
<resources>
<string
name=
"quick_toggle"
>
"Basculer"
</string>
<string
name=
"remote_dns"
>
"DNS Distant"
</string>
<string
name=
"stat_summary"
>
"Envoyé : \t%3$s\t↑\t%1$s
Reçu : \t\t\t%4$s\t↓\t%2$s"
</string>
<string
name=
"connection_test_testing"
>
"Essai…"
</string>
<string
name=
"connection_test_available"
>
"Succès : le handshake HTTPS a pris %dms"
</string>
<string
name=
"connection_test_error"
>
"Impossible de détecter la connexion Internet :%s"
</string>
<string
name=
"connection_test_fail"
>
"Internet Indisponible"
</string>
<string
name=
"connection_test_error_status_code"
>
"Code de l'Erreur : #%d"
</string>
<!-- proxy category -->
<string
name=
"profile_name"
>
"Nom du Profil"
</string>
<string
name=
"proxy"
>
"Serveur"
</string>
<string
name=
"remote_port"
>
"Port Distant"
</string>
<string
name=
"sitekey"
>
"Mot de passe"
</string>
<string
name=
"enc_method"
>
"Méthode d'Encryption"
</string>
<!-- feature category -->
<string
name=
"ipv6"
>
"Route IPv6"
</string>
<string
name=
"ipv6_summary"
>
"Rediriger le trafic IPv6 vers le serveur distant"
</string>
<string
name=
"route_list"
>
"Route"
</string>
<string
name=
"route_entry_gfwlist"
>
"Liste GFW"
</string>
<string
name=
"proxied_apps"
>
"Mode VPN Apps"
</string>
<string
name=
"proxied_apps_summary"
>
"Configurer le mode VPN pour les applications sélectionnées"
</string>
<string
name=
"on"
>
"Activé"
</string>
<!-- Fuzzy -->
<string
name=
"bypass_apps"
>
"Mode exclusion"
</string>
<string
name=
"bypass_apps_summary"
>
"Activer cette option pour exclure les applications sélectionnées"
</string>
<string
name=
"auto_connect"
>
"Connection auto"
</string>
<!-- Fuzzy -->
<string
name=
"auto_connect_summary"
>
"Activer Shadowsocks au démarrage"
</string>
<!-- Fuzzy -->
<string
name=
"tcp_fastopen_summary"
>
"Activer nécessite la permission ROOT"
</string>
<string
name=
"tcp_fastopen_summary_unsupported"
>
"Version du noyau non supportée : %s
<
3.7.1"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns_summary"
>
"Faire suivre toutes les requêtes DNS au serveur distant"
</string>
<!-- notification category -->
<string
name=
"forward_success"
>
"Shadowsocks a démarré"
</string>
<string
name=
"invalid_server"
>
"Nom de serveur invalide"
</string>
<string
name=
"service_failed"
>
"Échec de la connexion au serveur distant"
</string>
<string
name=
"stop"
>
"Stopper"
</string>
<string
name=
"stopping"
>
"Arrêt en cours…"
</string>
<string
name=
"reboot_required"
>
"Impossible de démarrer le service VPN. Vous devrez peut-être redémarrer votre appareil."
</string>
<string
name=
"profile_invalid_input"
>
"Pas de donnée de profil valide trouvée."
</string>
<!-- alert category -->
<string
name=
"profile_empty"
>
"Veuillez sélectionner un profil"
</string>
<string
name=
"proxy_empty"
>
"Le mot de passe/proxy ne doit pas être vide"
</string>
<string
name=
"connect"
>
"Connexion"
</string>
<!-- menu category -->
<string
name=
"profiles"
>
"Profils"
</string>
<string
name=
"settings"
>
"Paramètres"
</string>
<string
name=
"about"
>
"À propos"
</string>
<string
name=
"edit"
>
"Éditer"
</string>
<string
name=
"share"
>
"Partager"
</string>
<string
name=
"add_profile"
>
"Ajouter un Profil"
</string>
<string
name=
"action_apply_all"
>
"Appliquer les Paramètres à tous les Profils"
</string>
<string
name=
"action_export"
>
"Exporter vers le presse-papiers"
</string>
<string
name=
"action_import"
>
"Importer depuis le presse-papiers"
</string>
<string
name=
"action_export_msg"
>
"Exporté avec succès !"
</string>
<string
name=
"action_export_err"
>
"Échec de l'exportation"
</string>
<string
name=
"action_import_msg"
>
"Importé avec succès !"
</string>
<string
name=
"action_import_err"
>
"Échec de l’importation."
</string>
<!-- profile -->
<string
name=
"profile_config"
>
"Config profil"
</string>
<string
name=
"delete"
>
"Supprimer"
</string>
<string
name=
"delete_confirm_prompt"
>
"Êtes-vous sûr de vouloir supprimer ce profil?"
</string>
<!-- Fuzzy -->
<string
name=
"share_qr_nfc"
>
"QR Code/NFC"
</string>
<string
name=
"add_profile_dialog"
>
"Ajouter ce profil Shadowsocks?"
</string>
<string
name=
"add_profile_methods_scan_qr_code"
>
"Scanner le QR Code"
</string>
<plurals
name=
"removed"
>
<item
quantity=
"one"
>
"Supprimé"
</item>
<item
quantity=
"other"
>
"%d éléments supprimés"
</item>
</plurals>
<string
name=
"undo"
>
"Annuler"
</string>
<!-- tasker -->
<string
name=
"toggle_service_state"
>
"Démarrer le service"
</string>
<string
name=
"start_service_default"
>
"Se connecter au serveur courant"
</string>
<string
name=
"start_service"
>
"Se connecter à %s"
</string>
<string
name=
"stop_service"
>
"Basculer sur %s"
</string>
<string
name=
"profile_default"
>
"Utiliser le profil actuel"
</string>
<!-- status -->
<string
name=
"sent"
>
"Envoyé :"
</string>
<string
name=
"received"
>
"Reçu :"
</string>
<!-- status -->
<string
name=
"connecting"
>
"Connexion…"
</string>
<string
name=
"vpn_connected"
>
"Connecté, toucher pour vérifier la connexion"
</string>
<string
name=
"not_connected"
>
"Non connecté"
</string>
<!-- acl -->
<string
name=
"custom_rules"
>
"Règles personnalisées"
</string>
<string
name=
"action_add_rule"
>
"Ajouter une/des règle(s)"
</string>
<string
name=
"edit_rule"
>
"Modifier une règle"
</string>
<string
name=
"route_entry_all"
>
"Toutes"
</string>
<string
name=
"route_entry_bypass_lan"
>
"Exclure le LAN"
</string>
<string
name=
"route_entry_bypass_chn"
>
"Exclure la Chine continentale"
</string>
<string
name=
"route_entry_bypass_lan_chn"
>
"Exclure LAN et Chine continentale"
</string>
<string
name=
"acl_rule_templates_generic"
>
"Pattern PCRE sous-réseau ou hôte"
</string>
<string
name=
"acl_rule_templates_domain"
>
"Nom de domaine et tous ses noms de sous-domaines"
</string>
<string
name=
"plugin_configure"
>
"Configurer…"
</string>
<string
name=
"plugin_disabled"
>
"Désactivé"
</string>
<string
name=
"plugin_unknown"
>
"Plugin inconnu %s"
</string>
<string
name=
"plugin_untrusted"
>
"Attention : ce plugin ne semble pas provenir d'une source fiable reconnue."
</string>
<string
name=
"profile_plugin"
>
"Plugin : %s"
</string>
<string
name=
"add_profile_scanner_permission_required"
>
"La permission Appareil photo est nécessaire pour scanner le QR code."
</string>
<!-- notification category -->
<string
name=
"service_vpn"
>
"Service VPN"
</string>
<string
name=
"add_profile_methods_manual_settings"
>
"Paramètres manuels"
</string>
<!-- misc -->
<string
name=
"advanced"
>
"Avancé"
</string>
<!-- misc -->
<string
name=
"service_mode"
>
"Mode Service"
</string>
<string
name=
"service_mode_proxy"
>
"Proxy seul"
</string>
<string
name=
"port_proxy"
>
"Port proxy SOCKS5"
</string>
<string
name=
"port_local_dns"
>
"Port DNS local"
</string>
<string
name=
"port_transproxy"
>
"Port Transproxy"
</string>
<string
name=
"service_proxy"
>
"Service Proxy"
</string>
<string
name=
"service_transproxy"
>
"Service Transproxy"
</string>
<string
name=
"vpn_permission_denied"
>
"Permission de créer un service VPN refusée"
</string>
<string
name=
"auto_connect_summary_v24"
>
"Activer Shadowsocks au démarrage. Plutôt recommandé d'utiliser le VPN permanent"
</string>
<string
name=
"direct_boot_aware"
>
"Activation-Désactivation sur écran verrouillé"
</string>
<string
name=
"direct_boot_aware_summary"
>
"Vos informations de profil sélectionnées seront moins protégées"
</string>
<string
name=
"acl_rule_online_config"
>
"URL de config en ligne"
</string>
<string
name=
"action_import_file"
>
"Importer depuis un fichier…"
</string>
<string
name=
"night_mode"
>
"Mode nuit"
</string>
<string
name=
"night_mode_system"
>
"Suivre la config système"
</string>
<string
name=
"send_email"
>
"Envoyer un email"
</string>
<string
name=
"action_export_more"
>
"Exporter…"
</string>
<string
name=
"action_export_file"
>
"Exporter dans un fichier…"
</string>
<string
name=
"cleartext_http_warning"
>
"Le trafic HTTP en clair n'est pas sécurisé"
</string>
<string
name=
"share_over_lan"
>
"Partager sur le réseau local"
</string>
<string
name=
"connection_test_pending"
>
"Vérifier la connectivité"
</string>
<string
name=
"file_manager_missing"
>
"Veuillez installer un gestionnaire de fichier tel que MiXplorer"
</string>
</resources>
\ No newline at end of file
core/src/main/res/values-ja/strings.xml
deleted
100644 → 0
View file @
09b15c01
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 by Max Lv <max.c.lv@gmail.com>
Copyright (C) 2019 by Mygod Studio <contact-shadowsocks-android@mygod.be>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
DO NOT EDIT: This file was automagically generated by script.
If you are looking for contributing a translation, read this:
https://discourse.shadowsocks.org/t/poeditor-translation-main-thread/30
-->
<resources>
<string
name=
"quick_toggle"
>
"ON/OFF"
</string>
<string
name=
"remote_dns"
>
"リモートDNS"
</string>
<string
name=
"stat_summary"
>
"送信済み: \t%3$s\t↑\t%1$s/s
受信済み: \t%4$s\t↓\t%2$s/s"
</string>
<string
name=
"connection_test_testing"
>
"テスト中…"
</string>
<!-- Fuzzy -->
<string
name=
"connection_test_available"
>
"成功: %dmsの遅延"
</string>
<string
name=
"connection_test_error"
>
"失敗しました:%s"
</string>
<string
name=
"connection_test_fail"
>
"インターネット利用不可"
</string>
<string
name=
"connection_test_error_status_code"
>
"ステータスコード無効: #%d"
</string>
<!-- proxy category -->
<string
name=
"profile_name"
>
"サーバー名"
</string>
<string
name=
"proxy"
>
"サーバーアドレス"
</string>
<string
name=
"remote_port"
>
"リモートポート"
</string>
<string
name=
"sitekey"
>
"パスワード"
</string>
<string
name=
"enc_method"
>
"暗号化方式"
</string>
<!-- feature category -->
<string
name=
"ipv6"
>
"IPv6 プロキシ"
</string>
<string
name=
"ipv6_summary"
>
"リモートサーバーに IPv6 パケットを転送"
</string>
<string
name=
"route_list"
>
"プロキシ方式"
</string>
<string
name=
"route_entry_gfwlist"
>
"中国本土からアクセス不可なアドレス以外を迂回する"
</string>
<string
name=
"proxied_apps"
>
"アプリ別のVPNモードを使用"
</string>
<string
name=
"proxied_apps_summary"
>
"アプリ別のVPNモードを設定"
</string>
<string
name=
"on"
>
"ON"
</string>
<!-- Fuzzy -->
<string
name=
"bypass_apps"
>
"バイパスモード(迂回モード)"
</string>
<string
name=
"bypass_apps_summary"
>
"このモードを選択した場合、指定したアプリのパケットはプロキシを経由しない"
</string>
<string
name=
"auto_connect"
>
"自動接続"
</string>
<!-- Fuzzy -->
<string
name=
"auto_connect_summary"
>
"システム起動時にバックグラウンドで本サービスを開始"
</string>
<!-- Fuzzy -->
<string
name=
"tcp_fastopen_summary"
>
"使用するには ROOT 権限が必要"
</string>
<string
name=
"tcp_fastopen_summary_unsupported"
>
"ご利用のカーネルバージョンはサポートしておりません:%s
<
3.7.1"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns"
>
"DNS 転送"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns_summary"
>
"DNS プロトコルでリモードサーバーにパケットを転送"
</string>
<!-- notification category -->
<string
name=
"forward_success"
>
"バックグラウンドでサービスを開始しました"
</string>
<string
name=
"invalid_server"
>
"サーバーが無効です"
</string>
<string
name=
"service_failed"
>
"リモートサーバーに接続できません"
</string>
<string
name=
"stop"
>
"中止"
</string>
<string
name=
"stopping"
>
"停止中……"
</string>
<string
name=
"vpn_error"
>
"バックグランドサービスの起動に失敗しました:%s"
</string>
<string
name=
"reboot_required"
>
"VPN サービスの起動に失敗しました、デバイスの再起動を試みて下さい"
</string>
<string
name=
"profile_invalid_input"
>
"有効なプロファイルが見つかりません"
</string>
<!-- alert category -->
<string
name=
"profile_empty"
>
"プロファイルを選択して下さい"
</string>
<string
name=
"proxy_empty"
>
"サーバアドレスやパスワードの入力が必要です"
</string>
<string
name=
"connect"
>
"接続"
</string>
<!-- menu category -->
<string
name=
"profiles"
>
"プロファイル"
</string>
<string
name=
"settings"
>
"オプション設定"
</string>
<string
name=
"faq"
>
"よくある質問"
</string>
<string
name=
"about"
>
"本アプリについて"
</string>
<string
name=
"edit"
>
"編集"
</string>
<string
name=
"share"
>
"共有"
</string>
<string
name=
"add_profile"
>
"プロファイルを追加"
</string>
<string
name=
"action_apply_all"
>
"設定をすべてのプロファイルに適応する"
</string>
<string
name=
"action_export"
>
"クリップボードに出力"
</string>
<string
name=
"action_import"
>
"クリップボードからインポート"
</string>
<string
name=
"action_export_msg"
>
"クリップボードの出力に成功しました"
</string>
<string
name=
"action_export_err"
>
"クリップボードの出力に失敗しました"
</string>
<string
name=
"action_import_msg"
>
"インポートに成功しました"
</string>
<string
name=
"action_import_err"
>
"インポートに失敗しました"
</string>
<!-- profile -->
<string
name=
"profile_config"
>
"プロファイル編集"
</string>
<string
name=
"delete"
>
"削除"
</string>
<string
name=
"delete_confirm_prompt"
>
"このプロファイルを削除しますか"
</string>
<!-- Fuzzy -->
<string
name=
"share_qr_nfc"
>
"QR コード / NFC"
</string>
<string
name=
"add_profile_dialog"
>
"Shadowsocks用プロファイルを追加しますか"
</string>
<string
name=
"add_profile_methods_scan_qr_code"
>
"QR コードを読み取る"
</string>
<plurals
name=
"removed"
>
<item
quantity=
"other"
>
"削除しました
%d 個のアイテムを削除しました"
</item>
</plurals>
<string
name=
"undo"
>
"元に戻す"
</string>
<!-- tasker -->
<string
name=
"toggle_service_state"
>
"サービスを開始"
</string>
<string
name=
"start_service_default"
>
"現在のサーバーに接続する"
</string>
<string
name=
"start_service"
>
"%s に接続"
</string>
<string
name=
"stop_service"
>
"%s に切り替え"
</string>
<string
name=
"profile_default"
>
"現在のプロファイルを使用する"
</string>
<!-- status -->
<string
name=
"sent"
>
"送信済み:"
</string>
<string
name=
"received"
>
"受信済み:"
</string>
<!-- status -->
<string
name=
"connecting"
>
"接続中…"
</string>
<string
name=
"vpn_connected"
>
"接続済み、タップして接続状況をチェック"
</string>
<string
name=
"not_connected"
>
"未接続"
</string>
<!-- acl -->
<string
name=
"custom_rules"
>
"カスタムルール"
</string>
<string
name=
"action_add_rule"
>
"ルールを追加…"
</string>
<string
name=
"edit_rule"
>
"ルールを編集"
</string>
<string
name=
"route_entry_all"
>
"すべて"
</string>
<string
name=
"route_entry_bypass_lan"
>
"LAN アドレスを迂回する"
</string>
<string
name=
"route_entry_bypass_chn"
>
"中国本土のアドレスを迂回する"
</string>
<string
name=
"route_entry_bypass_lan_chn"
>
"LAN 及び中国本土のアドレスを迂回する"
</string>
<string
name=
"route_entry_chinalist"
>
"中国本土のアドレス以外を迂回する"
</string>
<string
name=
"acl_rule_templates_generic"
>
"サブネットまたはホスト名のPCREパターン"
</string>
<string
name=
"acl_rule_templates_domain"
>
"ドメイン及び全てのサブドメイン"
</string>
<!-- plugin -->
<string
name=
"plugin"
>
"プラグイン"
</string>
<string
name=
"plugin_configure"
>
"設定…"
</string>
<string
name=
"plugin_disabled"
>
"無効"
</string>
<string
name=
"plugin_unknown"
>
"不明なプラグイン %s"
</string>
<string
name=
"plugin_untrusted"
>
"警告:このプラグインは信頼されていないソースからの可能性があります"
</string>
<string
name=
"profile_plugin"
>
"プラグイン: %s"
</string>
<string
name=
"add_profile_scanner_permission_required"
>
"QRコードをスキャンするにはカメラ権限が必要です。"
</string>
<!-- notification category -->
<string
name=
"service_vpn"
>
"VPNサービス"
</string>
<string
name=
"add_profile_methods_manual_settings"
>
"手動設定"
</string>
<!-- misc -->
<string
name=
"advanced"
>
"アドバンス"
</string>
<!-- misc -->
<string
name=
"service_mode"
>
"サービスモード"
</string>
<string
name=
"service_mode_proxy"
>
"プロキシのみ"
</string>
<string
name=
"service_mode_transproxy"
>
"トランスプロキシ"
</string>
<string
name=
"port_proxy"
>
"SOCKS5プロキシポート"
</string>
<string
name=
"port_local_dns"
>
"ローカルDNSポート"
</string>
<string
name=
"port_transproxy"
>
"トランスプロキシポート"
</string>
<string
name=
"service_proxy"
>
"プロキシサービス"
</string>
<string
name=
"service_transproxy"
>
"トランスプロキシサービス"
</string>
<string
name=
"vpn_permission_denied"
>
"VPNサービス作成のアクセス許可が拒否されました"
</string>
<string
name=
"auto_connect_summary_v24"
>
"起動時にShadowsockを有効。 VPN常時接続の使用をお勧めします"
</string>
<string
name=
"direct_boot_aware"
>
"ロック画面の切り替えを許可する"
</string>
<string
name=
"direct_boot_aware_summary"
>
"選択されたプロファイル情報はより少ない保護を受けることになります"
</string>
<string
name=
"acl_rule_online_config"
>
"オンライン設定のURL"
</string>
<string
name=
"action_import_file"
>
"ファイルからのインポート"
</string>
<string
name=
"night_mode"
>
"夜間モード"
</string>
<string
name=
"night_mode_system"
>
"システムに基づく"
</string>
<string
name=
"night_mode_auto"
>
"オート"
</string>
<string
name=
"night_mode_on"
>
"開く"
</string>
<string
name=
"night_mode_off"
>
"閉じる"
</string>
<string
name=
"send_email"
>
"電子メール送信"
</string>
<string
name=
"action_export_more"
>
"エクスポート"
</string>
<string
name=
"action_export_file"
>
"ファイルへエクスポート"
</string>
<string
name=
"cleartext_http_warning"
>
"クリアテキスト(平文)通信は安全ではありません"
</string>
<string
name=
"share_over_lan"
>
"LAN経由でシェア"
</string>
<string
name=
"connection_test_pending"
>
"接続チェック中"
</string>
<string
name=
"file_manager_missing"
>
"ファイルマネージャーをインストールしてください(MiXplorerなど)"
</string>
<string
name=
"tcp_fastopen_failure"
>
"切り替え失敗"
</string>
<string
name=
"udp_fallback"
>
"UDPフォールバック"
</string>
<string
name=
"action_replace_file"
>
"ファイルから置き換え"
</string>
<string
name=
"off"
>
"オフ"
</string>
<string
name=
"proxied_apps_mode"
>
"モード"
</string>
<string
name=
"metered"
>
"従量制提示"
</string>
<string
name=
"metered_summary"
>
"VPNは従量制であることをシステムに知らせる"
</string>
<plurals
name=
"hosts_summary"
>
<item
quantity=
"other"
>
"設定された%dホスト名"
</item>
</plurals>
<!-- subscriptions -->
<string
name=
"subscriptions"
>
"購読する"
</string>
<string
name=
"add_subscription"
>
"サブスクリプションを追加"
</string>
<string
name=
"edit_subscription"
>
"サブスクリプションを編集"
</string>
<string
name=
"update_subscription"
>
"サブスクリプションを更新"
</string>
<string
name=
"service_subscription"
>
"サブスクリプションサービス"
</string>
<string
name=
"service_subscription_working"
>
"サブスクリプションの更新(%d / %d)"
</string>
<string
name=
"service_subscription_finishing"
>
"サブスクリプション更新"
</string>
</resources>
\ No newline at end of file
core/src/main/res/values-ko/strings.xml
deleted
100644 → 0
View file @
09b15c01
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 by Max Lv <max.c.lv@gmail.com>
Copyright (C) 2019 by Mygod Studio <contact-shadowsocks-android@mygod.be>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
DO NOT EDIT: This file was automagically generated by script.
If you are looking for contributing a translation, read this:
https://discourse.shadowsocks.org/t/poeditor-translation-main-thread/30
-->
<resources>
<string
name=
"quick_toggle"
>
"켜기/끄기"
</string>
<string
name=
"remote_dns"
>
"원격 DNS"
</string>
<string
name=
"stat_summary"
>
"송신: \t%3$s\t↑\t%1$s/s
수신: \t%4$s\t↓\t%2$s/s"
</string>
<string
name=
"connection_test_testing"
>
"검사 중…"
</string>
<string
name=
"connection_test_error"
>
"인터넷 연결을 찾을 수 없습니다: %s"
</string>
<string
name=
"connection_test_fail"
>
"인터넷에 연결할 수 없습니다"
</string>
<string
name=
"connection_test_error_status_code"
>
"오류 코드: #%d"
</string>
<!-- proxy category -->
<string
name=
"profile_name"
>
"프로필 이름"
</string>
<string
name=
"proxy"
>
"서버 주소"
</string>
<string
name=
"remote_port"
>
"원격 포트"
</string>
<string
name=
"sitekey"
>
"비밀번호"
</string>
<string
name=
"enc_method"
>
"암호화 방법"
</string>
<!-- feature category -->
<string
name=
"ipv6"
>
"IPv6 라우팅"
</string>
<string
name=
"ipv6_summary"
>
"IPv6 트래픽도 원격으로 리다이렉트 합니다"
</string>
<string
name=
"route_list"
>
"라우팅 대상"
</string>
<string
name=
"route_entry_gfwlist"
>
"GFW 리스트"
</string>
<!-- Fuzzy -->
<string
name=
"proxied_apps"
>
"원하는 앱만 프락시 적용하기"
</string>
<string
name=
"proxied_apps_summary"
>
"선택한 앱에만 프락시를 적용합니다"
</string>
<string
name=
"on"
>
"활성화"
</string>
<!-- Fuzzy -->
<string
name=
"bypass_apps"
>
"선택된 앱들만 프록시 적용 제외하기"
</string>
<string
name=
"bypass_apps_summary"
>
"이 옵션을 활성화하면 선택된 앱들은 프락시를 사용하지 않습니다"
</string>
<string
name=
"auto_connect"
>
"자동 접속"
</string>
<!-- Fuzzy -->
<string
name=
"auto_connect_summary"
>
"장치가 켜질 때 Shadowsocks를 자동으로 활성화합니다"
</string>
<!-- Fuzzy -->
<string
name=
"tcp_fastopen_summary"
>
"루트 권한이 필요합니다"
</string>
<string
name=
"tcp_fastopen_summary_unsupported"
>
"지원하지 않는 버전의 커널입니다: %s
<
3.7.1"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns"
>
"DNS 포워딩"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns_summary"
>
"모든 DNS 요청을 외부로 포워딩 합니다"
</string>
<!-- notification category -->
<string
name=
"forward_success"
>
"Shadowsocks가 시작되었습니다"
</string>
<string
name=
"invalid_server"
>
"잘못된 서버 이름입니다"
</string>
<string
name=
"service_failed"
>
"원격 서버에 접속하는 데 실패했습니다"
</string>
<string
name=
"stop"
>
"중지"
</string>
<string
name=
"stopping"
>
"종료 중…"
</string>
<string
name=
"reboot_required"
>
"VPN 서비스를 시작하는 데 실패했습니다. 장치를 재시작해 보세요."
</string>
<string
name=
"profile_invalid_input"
>
"올바른 프로필 데이터를 찾을 수 없습니다"
</string>
<!-- alert category -->
<string
name=
"profile_empty"
>
"프로필을 선택해 주세요"
</string>
<string
name=
"proxy_empty"
>
"서버 주소와 비밀번호는 반드시 입력해야 합니다"
</string>
<string
name=
"connect"
>
"접속"
</string>
<!-- menu category -->
<string
name=
"profiles"
>
"프로필"
</string>
<string
name=
"settings"
>
"설정"
</string>
<string
name=
"faq"
>
"자주 묻는 질문"
</string>
<string
name=
"about"
>
"이 앱에 대하여"
</string>
<string
name=
"edit"
>
"수정"
</string>
<string
name=
"share"
>
"공유"
</string>
<string
name=
"add_profile"
>
"프로필 추가"
</string>
<string
name=
"action_apply_all"
>
"설정을 모든 프로필에 적용"
</string>
<string
name=
"action_export"
>
"클립보드로 내보내기"
</string>
<string
name=
"action_import"
>
"클립보드에서 불러오기"
</string>
<string
name=
"action_export_msg"
>
"성공적으로 내보냈습니다"
</string>
<string
name=
"action_export_err"
>
"내보내기에 실패했습니다"
</string>
<string
name=
"action_import_msg"
>
"성공적으로 불러왔습니다"
</string>
<string
name=
"action_import_err"
>
"불러오는 데 실패했습니다"
</string>
<!-- profile -->
<string
name=
"profile_config"
>
"프로필 설정"
</string>
<string
name=
"delete"
>
"삭제"
</string>
<string
name=
"delete_confirm_prompt"
>
"정말 이 프로필을 삭제하시겠습니까?"
</string>
<!-- Fuzzy -->
<string
name=
"share_qr_nfc"
>
"QR 코드/NFC"
</string>
<string
name=
"add_profile_dialog"
>
"이 Shadowsocks 프로필을 추가하시겠습니까?"
</string>
<string
name=
"add_profile_methods_scan_qr_code"
>
"QR 코드 읽기"
</string>
<plurals
name=
"removed"
>
<item
quantity=
"other"
>
"삭제했습니다"
</item>
</plurals>
<string
name=
"undo"
>
"실행 취소"
</string>
<!-- tasker -->
<string
name=
"toggle_service_state"
>
"서비스 시작"
</string>
<string
name=
"start_service_default"
>
"현재 서버에 연결"
</string>
<string
name=
"start_service"
>
"%s로 연결"
</string>
<string
name=
"stop_service"
>
"%s로 바꾸기"
</string>
<string
name=
"profile_default"
>
"현재 프로필 사용"
</string>
<!-- status -->
<string
name=
"sent"
>
"송신:"
</string>
<string
name=
"received"
>
"수신:"
</string>
<!-- status -->
<string
name=
"connecting"
>
"연결 중…"
</string>
<string
name=
"vpn_connected"
>
"연결 완료. 탭 하면 연결 상태를 검사합니다."
</string>
<string
name=
"not_connected"
>
"연결되지 않음"
</string>
<!-- acl -->
<string
name=
"custom_rules"
>
"사용자 정의 규칙"
</string>
<string
name=
"acl_rule_templates_generic"
>
"서브넷 혹은 호스트 이름 PCRE 패턴"
</string>
<!-- plugin -->
<string
name=
"plugin"
>
"플러그인"
</string>
<string
name=
"plugin_configure"
>
"플러그인 설정…"
</string>
<string
name=
"plugin_disabled"
>
"비활성화 됨"
</string>
<string
name=
"plugin_unknown"
>
"알 수 없는 플러그인: %s"
</string>
<string
name=
"plugin_untrusted"
>
"경고: 이 플러그인은 신뢰할 수 있는 출처에서 온 것이 아닌 것 같습니다"
</string>
<string
name=
"profile_plugin"
>
"플러그인: %s"
</string>
<string
name=
"add_profile_scanner_permission_required"
>
"QR 코드를 읽어 들이려면 카메라 권한이 필요합니다"
</string>
</resources>
\ No newline at end of file
core/src/main/res/values-ru/strings.xml
deleted
100644 → 0
View file @
09b15c01
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 by Max Lv <max.c.lv@gmail.com>
Copyright (C) 2019 by Mygod Studio <contact-shadowsocks-android@mygod.be>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
DO NOT EDIT: This file was automagically generated by script.
If you are looking for contributing a translation, read this:
https://discourse.shadowsocks.org/t/poeditor-translation-main-thread/30
-->
<resources>
<string
name=
"quick_toggle"
>
"Подключение"
</string>
<string
name=
"remote_dns"
>
"Удалённый DNS"
</string>
<string
name=
"stat_summary"
>
"Отправлено: \t%3$s\t↑\t%1$s
Получено: \t\t\t%4$s\t↓\t%2$s"
</string>
<string
name=
"connection_test_testing"
>
"Проверка…"
</string>
<string
name=
"connection_test_available"
>
"Успешно: рукопожатие HTTPS заняло %dмс"
</string>
<string
name=
"connection_test_error"
>
"Сбой проверки интернет-соединения: %s"
</string>
<string
name=
"connection_test_fail"
>
"Интернет недоступен"
</string>
<string
name=
"connection_test_error_status_code"
>
"Код ошибки: #%d"
</string>
<!-- proxy category -->
<string
name=
"profile_name"
>
"Имя профиля"
</string>
<string
name=
"proxy"
>
"Сервер"
</string>
<string
name=
"remote_port"
>
"Удалённый порт"
</string>
<string
name=
"sitekey"
>
"Пароль"
</string>
<string
name=
"enc_method"
>
"Метод шифрования"
</string>
<!-- feature category -->
<string
name=
"ipv6"
>
"IPv6 Маршрут"
</string>
<string
name=
"ipv6_summary"
>
"Перенаправлять трафик IPv6 на удалённый сервер"
</string>
<string
name=
"route_list"
>
"Маршрут"
</string>
<string
name=
"route_entry_gfwlist"
>
"Список GFW"
</string>
<string
name=
"proxied_apps"
>
"Режим VPN для выбранных приложений"
</string>
<string
name=
"proxied_apps_summary"
>
"Выбрать приложения, для которых нужно использовать режим VPN"
</string>
<string
name=
"on"
>
"Вкл"
</string>
<string
name=
"bypass_apps"
>
"В обход прокси"
</string>
<string
name=
"bypass_apps_summary"
>
"Включите эту опцию для работы выбранных приложений в обход прокси"
</string>
<string
name=
"auto_connect"
>
"Авто-подключение"
</string>
<!-- Fuzzy -->
<string
name=
"auto_connect_summary"
>
"Запускать Shadowsocks при включении"
</string>
<string
name=
"tcp_fastopen_summary"
>
"Переключение может запрашивать ROOT права"
</string>
<string
name=
"tcp_fastopen_summary_unsupported"
>
"Неподдерживаемая версия ядра: %s
<
3.7.1"
</string>
<string
name=
"udp_dns"
>
"Отправить DNS-запросы через UDP"
</string>
<string
name=
"udp_dns_summary"
>
"Требоваться перенаправление UDP на удаленном сервере"
</string>
<!-- notification category -->
<string
name=
"forward_success"
>
"Shadowsocks запущен."
</string>
<string
name=
"invalid_server"
>
"Неправильное имя сервера"
</string>
<string
name=
"service_failed"
>
"Ошибка при подключении к удалённому серверу"
</string>
<string
name=
"stop"
>
"Остановить"
</string>
<string
name=
"stopping"
>
"Останавливается…"
</string>
<string
name=
"reboot_required"
>
"Не удалось запустить службу VPN. Возможно, требуется перезагрузить ваше устройство."
</string>
<string
name=
"profile_invalid_input"
>
"Не найдено действительных данных профиля."
</string>
<!-- alert category -->
<string
name=
"profile_empty"
>
"Пожалуйста, выберите профиль"
</string>
<string
name=
"proxy_empty"
>
"Прокси/Пароль не должны быть пустыми"
</string>
<string
name=
"connect"
>
"Подключить"
</string>
<!-- menu category -->
<string
name=
"profiles"
>
"Профили"
</string>
<string
name=
"settings"
>
"Настройки"
</string>
<string
name=
"faq"
>
"ЧаВо"
</string>
<string
name=
"faq_url"
>
"https://github.com/shadowsocks/shadowsocks-android/blob/master/.github/faq.ru.md"
</string>
<string
name=
"about"
>
"О приложении"
</string>
<string
name=
"about_title"
>
"Shadowsocks %s"
</string>
<string
name=
"edit"
>
"Изменить"
</string>
<string
name=
"share"
>
"Поделиться"
</string>
<string
name=
"add_profile"
>
"Добавить профиль"
</string>
<string
name=
"action_apply_all"
>
"Применить настройки для всех профилей"
</string>
<string
name=
"action_export"
>
"Экспортировать в буфер обмена"
</string>
<string
name=
"action_import"
>
"Импортировать из буфера обмена"
</string>
<string
name=
"action_export_msg"
>
"Успешный экспорт!"
</string>
<string
name=
"action_export_err"
>
"Сбой экспорта."
</string>
<string
name=
"action_import_msg"
>
"Успешный импорт!"
</string>
<string
name=
"action_import_err"
>
"Сбой импорта."
</string>
<!-- profile -->
<string
name=
"profile_config"
>
"Настройка профиля"
</string>
<string
name=
"delete"
>
"Удалить"
</string>
<string
name=
"delete_confirm_prompt"
>
"Вы уверены, что хотите удалить этот профиль?"
</string>
<!-- Fuzzy -->
<string
name=
"share_qr_nfc"
>
"QR-код/NFC"
</string>
<string
name=
"add_profile_dialog"
>
"Добавить этот профиль Shadowsocks?"
</string>
<string
name=
"add_profile_methods_scan_qr_code"
>
"Сканировать QR-код"
</string>
<plurals
name=
"removed"
>
<item
quantity=
"one"
>
"Удалено %d элементов"
</item>
<item
quantity=
"few"
>
"Удалено %d элемента"
</item>
<item
quantity=
"many"
>
"Удалено %d элементов"
</item>
<item
quantity=
"other"
>
"Удалено %d элементов"
</item>
</plurals>
<string
name=
"undo"
>
"Вернуть"
</string>
<!-- tasker -->
<string
name=
"toggle_service_state"
>
"Запустить службу"
</string>
<string
name=
"start_service_default"
>
"Подключиться к текущему серверу"
</string>
<string
name=
"start_service"
>
"Подключиться к %s"
</string>
<string
name=
"stop_service"
>
"Переключить на %s"
</string>
<string
name=
"profile_default"
>
"Использовать текущий профиль"
</string>
<!-- status -->
<string
name=
"sent"
>
"Отправлено:"
</string>
<string
name=
"received"
>
"Получено:"
</string>
<!-- status -->
<string
name=
"connecting"
>
"Соединение…"
</string>
<string
name=
"vpn_connected"
>
"Подключено, нажмите для проверки соединения"
</string>
<string
name=
"not_connected"
>
"Не подключено"
</string>
<!-- acl -->
<string
name=
"custom_rules"
>
"Пользовательские правила"
</string>
<string
name=
"action_add_rule"
>
"Добавить правило…"
</string>
<string
name=
"edit_rule"
>
"Редактировать правило"
</string>
<string
name=
"route_entry_all"
>
"Все"
</string>
<string
name=
"route_entry_bypass_lan"
>
"Все, кроме LAN"
</string>
<string
name=
"route_entry_bypass_chn"
>
"Все, кроме Китая"
</string>
<string
name=
"route_entry_bypass_lan_chn"
>
"Все, кроме LAN и Китая"
</string>
<string
name=
"route_entry_chinalist"
>
"Список Китай"
</string>
<string
name=
"acl_rule_templates_generic"
>
"Подсеть или имя хоста, записанное регулярным выражением (PCRE)"
</string>
<string
name=
"acl_rule_templates_domain"
>
"Доменное имя и все его поддомены"
</string>
<!-- plugin -->
<string
name=
"plugin"
>
"Плагин"
</string>
<string
name=
"plugin_configure"
>
"Настроить…"
</string>
<string
name=
"plugin_disabled"
>
"Отключён"
</string>
<string
name=
"plugin_unknown"
>
"Неизвестный плагин %s"
</string>
<string
name=
"plugin_untrusted"
>
"Предупреждение: этот плагин получен из недоверенного источника."
</string>
<string
name=
"profile_plugin"
>
"Плагин: %s"
</string>
<string
name=
"add_profile_scanner_permission_required"
>
"Разрешение камеры требуется для сканирования QR код."
</string>
<!-- notification category -->
<string
name=
"service_vpn"
>
"Служба VPN"
</string>
<string
name=
"add_profile_methods_manual_settings"
>
"Ручные настройки"
</string>
<!-- misc -->
<string
name=
"advanced"
>
"Дополнительно"
</string>
<!-- misc -->
<string
name=
"service_mode"
>
"Режим"
</string>
<string
name=
"service_mode_proxy"
>
"Только прокси"
</string>
<string
name=
"service_mode_transproxy"
>
"Прозрачный прокси"
</string>
<string
name=
"port_proxy"
>
"Порт SOCKS5 прокси"
</string>
<string
name=
"port_local_dns"
>
"Локальный порт DNS"
</string>
<string
name=
"port_transproxy"
>
"Порт прозрачного прокси"
</string>
<string
name=
"service_proxy"
>
"Служба прокси"
</string>
<string
name=
"service_transproxy"
>
"Служба прозрачный прокси"
</string>
<string
name=
"vpn_permission_denied"
>
"Нет разрешения на создание VPN соединения"
</string>
<string
name=
"auto_connect_summary_v24"
>
"Включить Shadowsocks во время запуска. Лучше использовать режим постоянной VPN."
</string>
<string
name=
"speed"
>
"%s/с"
</string>
<string
name=
"direct_boot_aware"
>
"Разрешить переключение на экране блокировки"
</string>
<string
name=
"direct_boot_aware_summary"
>
"Данные в выбранном профиле будут хуже защищены"
</string>
<string
name=
"acl_rule_online_config"
>
"URL конфигурации"
</string>
<string
name=
"action_import_file"
>
"Импортировать из файла…"
</string>
<string
name=
"night_mode"
>
"Ночной режим"
</string>
<string
name=
"night_mode_system"
>
"Как в системе"
</string>
<string
name=
"night_mode_auto"
>
"Авто"
</string>
<string
name=
"night_mode_on"
>
"Вкл"
</string>
<string
name=
"night_mode_off"
>
"Выкл"
</string>
<string
name=
"send_email"
>
"Отправить письмо"
</string>
<string
name=
"action_export_more"
>
"Экспорт…"
</string>
<string
name=
"action_export_file"
>
"Экспорт в файл…"
</string>
<string
name=
"cleartext_http_warning"
>
"Текстовый трафик HTTP не защищён"
</string>
<string
name=
"share_over_lan"
>
"Поделиться через LAN"
</string>
<string
name=
"connection_test_pending"
>
"Проверить подключение"
</string>
<string
name=
"file_manager_missing"
>
"Установите файловый менеджер"
</string>
<string
name=
"tcp_fastopen_failure"
>
"Не удалось переключить"
</string>
<string
name=
"udp_fallback"
>
"Возврат к UDP"
</string>
<string
name=
"action_replace_file"
>
"Заменить из файла…"
</string>
<string
name=
"off"
>
"Выкл"
</string>
<string
name=
"proxied_apps_mode"
>
"Режим"
</string>
<string
name=
"metered"
>
"Лимитное соединение"
</string>
<string
name=
"metered_summary"
>
"Сообщить системе, что это не безлимитное подключение"
</string>
</resources>
\ No newline at end of file
core/src/main/res/values-tr/strings.xml
deleted
100644 → 0
View file @
09b15c01
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 by Max Lv <max.c.lv@gmail.com>
Copyright (C) 2019 by Mygod Studio <contact-shadowsocks-android@mygod.be>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
DO NOT EDIT: This file was automagically generated by script.
If you are looking for contributing a translation, read this:
https://discourse.shadowsocks.org/t/poeditor-translation-main-thread/30
-->
<resources>
<string
name=
"quick_toggle"
>
"Aç/Kapa"
</string>
<string
name=
"remote_dns"
>
"Uzaktan DNS"
</string>
<string
name=
"stat_summary"
>
"Yüklendi: \t\t\t\t\t%3$s\t↑\t%1$s
İndirildi: \t%4$s\t↓\t%2$s"
</string>
<string
name=
"connection_test_testing"
>
"Test ediliyor…"
</string>
<string
name=
"connection_test_error"
>
"İnternet bağlantısı bulunamadı: %s"
</string>
<string
name=
"connection_test_fail"
>
"İnternet Bağlantısı Bulunamadı"
</string>
<string
name=
"connection_test_error_status_code"
>
"Hata kodu: #%d"
</string>
<!-- proxy category -->
<string
name=
"profile_name"
>
"Profil İsmi"
</string>
<string
name=
"proxy"
>
"Sunucu"
</string>
<string
name=
"remote_port"
>
"Uzaktan Port"
</string>
<string
name=
"sitekey"
>
"Şifre"
</string>
<string
name=
"enc_method"
>
"Şifreleme Methodu"
</string>
<string
name=
"ipv6_summary"
>
"IPv6 trafiğini remote'a yönlendir"
</string>
<string
name=
"route_list"
>
"Rota"
</string>
<string
name=
"route_entry_gfwlist"
>
"GFW Listesi"
</string>
<string
name=
"proxied_apps"
>
"Uygulamalar VPN modu"
</string>
<string
name=
"proxied_apps_summary"
>
"Seçili uygulamalar için VPN'i yapılandır"
</string>
<string
name=
"on"
>
"Açık"
</string>
<!-- Fuzzy -->
<string
name=
"bypass_apps"
>
"Bypass Modu"
</string>
<string
name=
"bypass_apps_summary"
>
"Seçili uygulamaları bypass etmek için bu seçeneği açın"
</string>
<string
name=
"auto_connect"
>
"Otomatik Bağlan"
</string>
<!-- Fuzzy -->
<string
name=
"auto_connect_summary"
>
"Shadowsocks'ı cihazı başlatırken aç"
</string>
<!-- Fuzzy -->
<string
name=
"tcp_fastopen_summary"
>
"Açıp kapamak için ROOT yetkisi gerekiyor"
</string>
<string
name=
"tcp_fastopen_summary_unsupported"
>
"Desteklenmeyen kernel sürümü: %s
<
3.7.1"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns"
>
"DNS yönlendirme"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns_summary"
>
"Tüm DNS isteklerini remote'a yönlendir"
</string>
<!-- notification category -->
<string
name=
"forward_success"
>
"Shadowsocks başlatıldı."
</string>
<string
name=
"invalid_server"
>
"Geçersiz sunucu ismi"
</string>
<string
name=
"service_failed"
>
"Remote sunucuya bağlanma hatası"
</string>
<string
name=
"stop"
>
"Dur"
</string>
<string
name=
"stopping"
>
"Kapatılıyor…"
</string>
<string
name=
"reboot_required"
>
"VPN servisi başlatılırken hata. Cihazınızı yeniden başlatmanız gerekebilir."
</string>
<string
name=
"profile_invalid_input"
>
"Geçerli profil verisi bulunamadı."
</string>
<!-- alert category -->
<string
name=
"profile_empty"
>
"Lütfen profil seçiniz"
</string>
<string
name=
"proxy_empty"
>
"Proxy/Şifre alanları boş olmamalı"
</string>
<string
name=
"connect"
>
"Bağlan"
</string>
<!-- menu category -->
<string
name=
"profiles"
>
"Profiller"
</string>
<string
name=
"settings"
>
"Ayarlar"
</string>
<string
name=
"faq"
>
"SSS"
</string>
<string
name=
"about"
>
"Hakkında"
</string>
<string
name=
"edit"
>
"Düzenle"
</string>
<string
name=
"share"
>
"Paylaş"
</string>
<string
name=
"add_profile"
>
"Profil Ekle"
</string>
<string
name=
"action_apply_all"
>
"Ayarları tüm profillere uygula"
</string>
<string
name=
"action_export"
>
"Clipboarda ekle"
</string>
<string
name=
"action_import"
>
"Clipboarddan al"
</string>
<string
name=
"action_export_msg"
>
"Ekleme başarılı!"
</string>
<string
name=
"action_export_err"
>
"Ekleme başarısız."
</string>
<string
name=
"action_import_msg"
>
"Alım başarılı!"
</string>
<string
name=
"action_import_err"
>
"Alım başarısız."
</string>
<!-- profile -->
<string
name=
"profile_config"
>
"Profil ayarları"
</string>
<string
name=
"delete"
>
"Kaldır"
</string>
<string
name=
"delete_confirm_prompt"
>
"Bu profili kaldırmak istediğinize emin misiniz?"
</string>
<!-- Fuzzy -->
<string
name=
"share_qr_nfc"
>
"QR kodu/NFC"
</string>
<string
name=
"add_profile_dialog"
>
"Bu Shadowsocks Profilini ekle?"
</string>
<string
name=
"add_profile_methods_scan_qr_code"
>
"QR kodu tarat"
</string>
<plurals
name=
"removed"
>
<item
quantity=
"one"
>
"Kaldırıldı"
</item>
<item
quantity=
"other"
>
"%d nesne kaldırıldı"
</item>
</plurals>
<string
name=
"undo"
>
"Geri al"
</string>
<!-- tasker -->
<string
name=
"toggle_service_state"
>
"Servisi başlat"
</string>
<string
name=
"start_service_default"
>
"Şu anki sunucuya bağlan"
</string>
<string
name=
"start_service"
>
"%s 'a bağlan"
</string>
<string
name=
"stop_service"
>
"%s 'a çevir"
</string>
<string
name=
"profile_default"
>
"Şu anki profili kullan"
</string>
<!-- status -->
<string
name=
"sent"
>
"Gönderildi:"
</string>
<string
name=
"received"
>
"Alındı:"
</string>
<!-- status -->
<string
name=
"connecting"
>
"Bağlanılıyor…"
</string>
<string
name=
"vpn_connected"
>
"Bağlandı, test etmek için tıklayın"
</string>
<string
name=
"not_connected"
>
"Bağlı değil"
</string>
<!-- acl -->
<string
name=
"custom_rules"
>
"Kişisel kurallar"
</string>
<string
name=
"action_add_rule"
>
"Kural(lar) ekle…"
</string>
<string
name=
"edit_rule"
>
"Kuralları düzenle"
</string>
<string
name=
"route_entry_all"
>
"Hepsi"
</string>
<string
name=
"route_entry_bypass_lan"
>
"LAN bypassla"
</string>
<string
name=
"route_entry_bypass_chn"
>
"Çin Anakara'sını bypassla"
</string>
<string
name=
"route_entry_bypass_lan_chn"
>
"Lan ve Çin Anakarası'nı bypassla"
</string>
<string
name=
"route_entry_chinalist"
>
"Çin lıstesı"
</string>
<string
name=
"acl_rule_templates_generic"
>
"Subnet veya Sunucu Adı PCRE düzeni"
</string>
<string
name=
"acl_rule_templates_domain"
>
"Domain ve alt domain isimleri"
</string>
<!-- plugin -->
<string
name=
"plugin"
>
"Eklenti"
</string>
<string
name=
"plugin_configure"
>
"Ayarla…"
</string>
<string
name=
"plugin_disabled"
>
"Kapalı"
</string>
<string
name=
"plugin_unknown"
>
"Bilinmeyen eklenti %s"
</string>
<string
name=
"plugin_untrusted"
>
"Dikkat: Bu eklenti bilinen bir kaynaktan değil."
</string>
<string
name=
"profile_plugin"
>
"Eklenti: %s"
</string>
<string
name=
"add_profile_scanner_permission_required"
>
"QR kodu okumak için kamera izni gerekli."
</string>
<!-- notification category -->
<string
name=
"service_vpn"
>
"VPN Servisi"
</string>
<string
name=
"add_profile_methods_manual_settings"
>
"Manuel Ayarlar"
</string>
<!-- misc -->
<string
name=
"advanced"
>
"Gelişmiş"
</string>
<!-- misc -->
<string
name=
"service_mode"
>
"Servis modu"
</string>
<string
name=
"service_mode_proxy"
>
"Sadece proxy"
</string>
<string
name=
"port_proxy"
>
"SOCKS5 proxy portu"
</string>
<string
name=
"port_local_dns"
>
"Yerel DNS portu"
</string>
<string
name=
"port_transproxy"
>
"Transproxy portu"
</string>
<string
name=
"service_proxy"
>
"Proxy Servisi"
</string>
<string
name=
"service_transproxy"
>
"Transproxy Servisi"
</string>
<string
name=
"vpn_permission_denied"
>
"VPN servisi yaratma isteği reddedildi"
</string>
<string
name=
"auto_connect_summary_v24"
>
"Shadowsockı cihazla beraber başlat. Bunun yerine her zaman açık VPN kullanılması tavsiye edilirö"
</string>
<string
name=
"direct_boot_aware"
>
"Ekran kitliyken açıp kapamaya izin ver."
</string>
<string
name=
"direct_boot_aware_summary"
>
"Seçili profil bilginiz daha az korunacak."
</string>
<string
name=
"acl_rule_online_config"
>
"Online ayarlar URL'i"
</string>
<string
name=
"action_import_file"
>
"Dosyadan al…"
</string>
<string
name=
"night_mode"
>
"Gece modu"
</string>
<string
name=
"night_mode_system"
>
"Takip sistemi"
</string>
<string
name=
"night_mode_auto"
>
"Oto"
</string>
<string
name=
"night_mode_on"
>
"Açık"
</string>
<string
name=
"night_mode_off"
>
"Kapalı"
</string>
</resources>
\ No newline at end of file
core/src/main/res/values-zh-rTW/strings.xml
deleted
100644 → 0
View file @
09b15c01
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 by Max Lv <max.c.lv@gmail.com>
Copyright (C) 2019 by Mygod Studio <contact-shadowsocks-android@mygod.be>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
DO NOT EDIT: This file was automagically generated by script.
If you are looking for contributing a translation, read this:
https://discourse.shadowsocks.org/t/poeditor-translation-main-thread/30
-->
<resources>
<string
name=
"app_name"
>
"影梭"
</string>
<string
name=
"quick_toggle"
>
"切換"
</string>
<string
name=
"remote_dns"
>
"遠程 DNS"
</string>
<string
name=
"stat_summary"
>
"傳送: \t%3$s\t↑\t%1$s/s
接收: \t%4$s\t↓\t%2$s/s"
</string>
<string
name=
"connection_test_testing"
>
"測試中……"
</string>
<string
name=
"connection_test_available"
>
"成功: HTTPS 握手延遲 %d 毫秒"
</string>
<string
name=
"connection_test_error"
>
"偵測出網際網路連線失敗: %s"
</string>
<string
name=
"connection_test_fail"
>
"無法使用網際網路"
</string>
<string
name=
"connection_test_error_status_code"
>
"錯誤碼: (#%d)"
</string>
<!-- proxy category -->
<string
name=
"profile_name"
>
"設定檔名稱"
</string>
<string
name=
"proxy"
>
"伺服器"
</string>
<string
name=
"remote_port"
>
"遠端連接埠"
</string>
<string
name=
"sitekey"
>
"密碼"
</string>
<string
name=
"enc_method"
>
"加密方法"
</string>
<!-- feature category -->
<string
name=
"ipv6"
>
"IPv6 路由"
</string>
<string
name=
"ipv6_summary"
>
"向遠端重新導向 IPv6 流量"
</string>
<string
name=
"route_list"
>
"路由"
</string>
<string
name=
"route_entry_gfwlist"
>
"GFW List"
</string>
<string
name=
"proxied_apps"
>
"個別應用程式的 VPN"
</string>
<string
name=
"proxied_apps_summary"
>
"為已選擇的應用程式設定 VPN"
</string>
<string
name=
"on"
>
"開"
</string>
<!-- Fuzzy -->
<string
name=
"bypass_apps"
>
"略過模式"
</string>
<string
name=
"bypass_apps_summary"
>
"啟用此選項,會略過已選擇的應用程式"
</string>
<string
name=
"auto_connect"
>
"自動連線"
</string>
<!-- Fuzzy -->
<string
name=
"auto_connect_summary"
>
"在裝置啟動時啟用 Shadowsocks"
</string>
<!-- Fuzzy -->
<string
name=
"tcp_fastopen_summary"
>
"切換需要 ROOT 權限"
</string>
<string
name=
"tcp_fastopen_summary_unsupported"
>
"不支援的核心版本:%s
<
3.7.1"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns"
>
"DNS 轉送"
</string>
<!-- Fuzzy -->
<string
name=
"udp_dns_summary"
>
"使用 UDP 向遠端轉送 DNS 封包"
</string>
<!-- notification category -->
<string
name=
"forward_success"
>
"Shadowsocks 已啟動。"
</string>
<string
name=
"invalid_server"
>
"伺服器名稱無效"
</string>
<string
name=
"service_failed"
>
"連線至遠端伺服器失敗"
</string>
<string
name=
"stop"
>
"停止"
</string>
<string
name=
"stopping"
>
"關閉中…"
</string>
<string
name=
"vpn_error"
>
"後台服務啟動失敗:%s"
</string>
<string
name=
"reboot_required"
>
"VPN 服務啟動失敗。您或許需要重新啟動您的裝置。"
</string>
<string
name=
"profile_invalid_input"
>
"未找到有效的設定檔資料。"
</string>
<!-- alert category -->
<string
name=
"profile_empty"
>
"請選擇設定檔"
</string>
<string
name=
"proxy_empty"
>
"Proxy 或密碼不可以空白"
</string>
<string
name=
"connect"
>
"連線"
</string>
<!-- menu category -->
<string
name=
"profiles"
>
"設定檔"
</string>
<string
name=
"settings"
>
"設定"
</string>
<string
name=
"faq"
>
"常見問題"
</string>
<string
name=
"about"
>
"關於"
</string>
<string
name=
"about_title"
>
"Shadowsocks %s"
</string>
<string
name=
"edit"
>
"編輯"
</string>
<string
name=
"share"
>
"分享"
</string>
<string
name=
"add_profile"
>
"新增設定檔"
</string>
<string
name=
"action_apply_all"
>
"套用設定至所有設定檔"
</string>
<string
name=
"action_export"
>
"匯出至剪貼簿"
</string>
<string
name=
"action_import"
>
"從剪貼簿匯入"
</string>
<string
name=
"action_export_msg"
>
"成功匯出!"
</string>
<string
name=
"action_export_err"
>
"匯出失敗。"
</string>
<string
name=
"action_import_msg"
>
"成功匯入!"
</string>
<string
name=
"action_import_err"
>
"匯入失敗。"
</string>
<!-- profile -->
<string
name=
"profile_config"
>
"設定檔設定"
</string>
<string
name=
"delete"
>
"刪除"
</string>
<string
name=
"delete_confirm_prompt"
>
"您確定要移除這個設定檔嗎?"
</string>
<!-- Fuzzy -->
<string
name=
"share_qr_nfc"
>
"QR 碼 / NFC"
</string>
<string
name=
"add_profile_dialog"
>
"為 Shadowsocks 新增此設定檔?"
</string>
<string
name=
"add_profile_methods_scan_qr_code"
>
"掃描 QR 碼"
</string>
<plurals
name=
"removed"
>
<item
quantity=
"other"
>
"已移除 %d 項"
</item>
</plurals>
<string
name=
"undo"
>
"復原"
</string>
<!-- tasker -->
<string
name=
"toggle_service_state"
>
"啟動服務"
</string>
<string
name=
"start_service_default"
>
"連線至目前的伺服器"
</string>
<string
name=
"start_service"
>
"連線至 %s"
</string>
<string
name=
"stop_service"
>
"切換至 %s"
</string>
<string
name=
"profile_default"
>
"使用目前的設定檔"
</string>
<!-- status -->
<string
name=
"sent"
>
"傳送:"
</string>
<string
name=
"received"
>
"接收:"
</string>
<!-- status -->
<string
name=
"connecting"
>
"連線中…"
</string>
<string
name=
"vpn_connected"
>
"已連線,輕觸以檢查連線能力"
</string>
<string
name=
"not_connected"
>
"未連線"
</string>
<!-- acl -->
<string
name=
"custom_rules"
>
"自訂規則"
</string>
<string
name=
"action_add_rule"
>
"新增規則…"
</string>
<string
name=
"edit_rule"
>
"編輯規則"
</string>
<string
name=
"route_entry_all"
>
"全部"
</string>
<string
name=
"route_entry_bypass_lan"
>
"略過區域網路"
</string>
<string
name=
"route_entry_bypass_chn"
>
"略過中國大陸"
</string>
<string
name=
"route_entry_bypass_lan_chn"
>
"略過區域網路及中國大陸"
</string>
<string
name=
"route_entry_chinalist"
>
"China List"
</string>
<string
name=
"acl_rule_templates_generic"
>
"子網路/主機名稱 PCRE 模式"
</string>
<string
name=
"acl_rule_templates_domain"
>
"網域及其所有子網域"
</string>
<!-- plugin -->
<string
name=
"plugin"
>
"外掛程式"
</string>
<string
name=
"plugin_configure"
>
"設定…"
</string>
<string
name=
"plugin_disabled"
>
"停用"
</string>
<string
name=
"plugin_unknown"
>
"未知插件 %s"
</string>
<string
name=
"plugin_untrusted"
>
"警告:此外掛程式似乎不是來自一個已知的受信任來源。"
</string>
<string
name=
"profile_plugin"
>
"外掛程式: %s"
</string>
<string
name=
"add_profile_scanner_permission_required"
>
"掃描 QR 碼需要相機權限。"
</string>
<!-- notification category -->
<string
name=
"service_vpn"
>
"VPN 服務"
</string>
<string
name=
"add_profile_methods_manual_settings"
>
"手動設置"
</string>
<!-- misc -->
<string
name=
"advanced"
>
"高級"
</string>
<!-- misc -->
<string
name=
"service_mode"
>
"服務模式"
</string>
<string
name=
"service_mode_proxy"
>
"仅代理"
</string>
<string
name=
"service_mode_transproxy"
>
"透明代理"
</string>
<string
name=
"port_proxy"
>
"SOCKS5 代理連接埠"
</string>
<string
name=
"port_local_dns"
>
"本地 DNS 連接埠"
</string>
<string
name=
"port_transproxy"
>
"透明代理連接埠"
</string>
<string
name=
"service_proxy"
>
"代理服務"
</string>
<string
name=
"service_transproxy"
>
"透明代理服務"
</string>
<string
name=
"vpn_permission_denied"
>
"没有權限創建 VPN 服務"
</string>
<string
name=
"auto_connect_summary_v24"
>
"允許 Shadowsocks 隨系統啟動,建議使用始終開啟的 VPN"
</string>
<string
name=
"direct_boot_aware"
>
"允許鎖屏時切換"
</string>
<string
name=
"direct_boot_aware_summary"
>
"選中的配置信息會不那麼安全"
</string>
<string
name=
"acl_rule_online_config"
>
"在線規則文件 URL"
</string>
<string
name=
"action_import_file"
>
"從文件導入…"
</string>
<string
name=
"night_mode"
>
"夜間模式"
</string>
<string
name=
"night_mode_system"
>
"跟隨系統"
</string>
<string
name=
"night_mode_auto"
>
"自動"
</string>
<string
name=
"night_mode_on"
>
"開啟"
</string>
<string
name=
"night_mode_off"
>
"關閉"
</string>
<string
name=
"send_email"
>
"發送電子郵件"
</string>
<string
name=
"action_export_more"
>
"導出…"
</string>
<string
name=
"action_export_file"
>
"導出至文件…"
</string>
<string
name=
"cleartext_http_warning"
>
"HTTP 明文流量不安全"
</string>
<string
name=
"share_over_lan"
>
"通過局域網分享"
</string>
<string
name=
"connection_test_pending"
>
"檢查連接"
</string>
<string
name=
"file_manager_missing"
>
"請安裝文件管理器,如 MiXplorer"
</string>
<string
name=
"tcp_fastopen_failure"
>
"切換失敗"
</string>
<string
name=
"udp_fallback"
>
"UDP 配置"
</string>
<string
name=
"action_replace_file"
>
"從文件替換…"
</string>
<string
name=
"off"
>
"關"
</string>
<string
name=
"proxied_apps_mode"
>
"模式"
</string>
<string
name=
"metered"
>
"網絡限制"
</string>
<string
name=
"metered_summary"
>
"使系統視此 VPN 為按流量計費"
</string>
<plurals
name=
"hosts_summary"
>
<item
quantity=
"other"
>
"配置了 %d 個主機名"
</item>
</plurals>
<!-- subscriptions -->
<string
name=
"subscriptions"
>
"訂閱"
</string>
<string
name=
"add_subscription"
>
"添加訂閱"
</string>
<string
name=
"edit_subscription"
>
"編輯訂閱"
</string>
<string
name=
"update_subscription"
>
"更新訂閱"
</string>
<string
name=
"service_subscription"
>
"訂閱服務"
</string>
<string
name=
"service_subscription_working"
>
"正在更新訂閱 (%d / %d)"
</string>
<string
name=
"service_subscription_finishing"
>
"訂閱更新中"
</string>
</resources>
\ No newline at end of file
core/src/main/res/values/strings.xml
View file @
7ba55d3a
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string
name=
"app_name"
>
Shadowsocks
</string>
<string
name=
"app_name"
>
TT加速器
</string>
<string
name=
"quick_toggle"
>
Toggle
</string>
<string
name=
"send_email"
>
Send email
</string>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment