diff --git a/qpython/release/cn/release/output.json b/qpython/release/cn/release/output.json deleted file mode 100644 index 47944358061f494f2154253eea61233ba2ef43c0..0000000000000000000000000000000000000000 --- a/qpython/release/cn/release/output.json +++ /dev/null @@ -1 +0,0 @@ -[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":241},"path":"Qpython_2018-02-28_cn.apk","properties":{"packageId":"com.hipipal.qpyplus","split":"","minSdkVersion":"14"}}] \ No newline at end of file diff --git a/qpython/release/output.json b/qpython/release/output.json deleted file mode 100644 index bd56657f8119029f2839a2461e58912e9789c6ef..0000000000000000000000000000000000000000 --- a/qpython/release/output.json +++ /dev/null @@ -1 +0,0 @@ -[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":229},"path":"qpython-release.apk","properties":{"packageId":"org.qpython.qpy","split":"","minSdkVersion":"14"}}] \ No newline at end of file diff --git a/qpython/src/main/AndroidManifest.xml b/qpython/src/main/AndroidManifest.xml index ba73e87a66b9b9d3d20c8a8afdc694d4900377ae..94f59fec09cf6460fe8af76326959b845434be87 100644 --- a/qpython/src/main/AndroidManifest.xml +++ b/qpython/src/main/AndroidManifest.xml @@ -386,6 +386,7 @@ + { - openQpySDK(view -> { + //openQpySDK(view -> { TermActivity.startActivity(HomeMainActivity.this); sendEvent(getString(R.string.event_term)); - }); + //}); }); binding.llTerminal.setOnLongClickListener(v -> { @@ -253,11 +251,11 @@ public class HomeMainActivity extends BaseActivity { sendEvent(getString(R.string.event_file)); }); binding.llQpyApp.setOnClickListener(v -> { - openQpySDK(view -> { + //openQpySDK(view -> { AppListActivity.start(HomeMainActivity.this, AppListActivity.TYPE_SCRIPT); overridePendingTransition(R.anim.fade_in, R.anim.fade_out); sendEvent(getString(R.string.event_top)); - }); + //}); }); // binding.llCourse.setOnClickListener(v -> { @@ -389,7 +387,7 @@ public class HomeMainActivity extends BaseActivity { // startService(intent); // } - private void openQpySDK(View.OnClickListener clickListener) { + private void openQpySDK() { Log.d("HomeMainActivity", "openQpySDK"); String[] permssions = {Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE}; checkPermissionDo(permssions, new BaseActivity.PermissionAction() { @@ -410,9 +408,9 @@ public class HomeMainActivity extends BaseActivity { }) .create() .show();*/ - initQpySDK3(clickListener); + initQpySDK3(); } else { - clickListener.onClick(null); + //clickListener.onClick(null); } } @@ -426,20 +424,20 @@ public class HomeMainActivity extends BaseActivity { /** * 在工作线程中作初始化 */ - private void initQpySDK3(View.OnClickListener clickListener) { + private void initQpySDK3() { Log.d(TAG, "initQpySDK3"); NAction.setQPyInterpreter(HomeMainActivity.this, "3.x"); - initQPy(true, clickListener); + initQPy(true); initIcon(); } - private void initQpySDK(View.OnClickListener clickListener) { + private void initQpySDK() { Log.d(TAG, "initQpySDK"); - initQPy(false, clickListener); + initQPy(false); NAction.setQPyInterpreter(HomeMainActivity.this, "2.x"); initIcon(); } - private void initQPy(boolean py3, View.OnClickListener clickListener) { + private void initQPy(boolean py3) { new Thread(() -> { QPySDK qpysdk = new QPySDK(HomeMainActivity.this, HomeMainActivity.this); //这里会在切换qpy3的时候再次释放相关资源 @@ -461,7 +459,7 @@ public class HomeMainActivity extends BaseActivity { //qpysdk.extractRes("ipynb", new File(externalStorage + "/notebooks")); extractRes(); - clickListener.onClick(null); + //clickListener.onClick(null); }).start(); } @@ -533,8 +531,8 @@ public class HomeMainActivity extends BaseActivity { } private void init() { - //点击时再申请权限,加载资源方法 -// openQpySDK(null); + //启动时就申请权限,加载资源方法 + openQpySDK(); } @Override diff --git a/qpython/src/main/java/org/qpython/qpy/main/activity/QrCodeActivity.java b/qpython/src/main/java/org/qpython/qpy/main/activity/QrCodeActivity.java index 7a3760f0a4421fd3f7b6e8af088146b2fa4a6700..6106e4e88559a0a4662e4170a1718ddcae93bede 100644 --- a/qpython/src/main/java/org/qpython/qpy/main/activity/QrCodeActivity.java +++ b/qpython/src/main/java/org/qpython/qpy/main/activity/QrCodeActivity.java @@ -43,6 +43,9 @@ public class QrCodeActivity extends AppCompatActivity implements ZXingScannerVie toolbar.setNavigationIcon(R.drawable.ic_back); toolbar.setNavigationOnClickListener(v -> finish()); mScannerView = (ZXingScannerView) findViewById(R.id.scanner); + //闪光灯 + mScannerView.setOnClickListener(view -> mScannerView.setFlash(!mScannerView.getFlash())); + Toast.makeText(this,R.string.click_light,Toast.LENGTH_LONG).show(); } @Override diff --git a/qpython/src/main/java/org/qpython/qpy/main/activity/QrCodeActivityRstOnly.java b/qpython/src/main/java/org/qpython/qpy/main/activity/QrCodeActivityRstOnly.java new file mode 100644 index 0000000000000000000000000000000000000000..fb0e64492261dc1e0faef419654cae91be526578 --- /dev/null +++ b/qpython/src/main/java/org/qpython/qpy/main/activity/QrCodeActivityRstOnly.java @@ -0,0 +1,80 @@ +package org.qpython.qpy.main.activity; + + +import android.Manifest; +import android.content.Context; +import android.content.Intent; +import android.os.Build; +import android.os.Bundle; +import android.support.annotation.Nullable; +import android.support.annotation.RequiresApi; +import android.support.v7.app.AppCompatActivity; +import android.support.v7.widget.Toolbar; +import android.widget.Toast; + +import com.google.zxing.Result; + +import org.qpython.qpy.R; + +import me.dm7.barcodescanner.zxing.ZXingScannerView; + +public class QrCodeActivityRstOnly extends AppCompatActivity implements ZXingScannerView.ResultHandler { + private ZXingScannerView mScannerView; + + public static void start(Context context) { + Intent starter = new Intent(context, QrCodeActivity.class); + context.startActivity(starter); + } + + @RequiresApi(api = Build.VERSION_CODES.M) + @Override + protected void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + //动态申请相机权限 + //if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + requestPermissions(new String[]{Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1); + //} + Intent intent = getIntent(); + String title = intent.getStringExtra("title"); + setContentView(R.layout.activity_qrcode); + if (title == null) { + setTitle(R.string.read_script_from_qrcode); + } else { + setTitle(title); + } + Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + setSupportActionBar(toolbar); + toolbar.setNavigationIcon(R.drawable.ic_back); + toolbar.setNavigationOnClickListener(v -> finish()); + mScannerView = (ZXingScannerView) findViewById(R.id.scanner); + //闪光灯 + mScannerView.setOnClickListener(view -> mScannerView.setFlash(!mScannerView.getFlash())); + Toast.makeText(this, R.string.click_light,Toast.LENGTH_LONG).show(); + } + + @Override + protected void onResume() { + super.onResume(); + mScannerView.setResultHandler(this); + mScannerView.startCamera(); + } + + @Override + protected void onPause() { + super.onPause(); + mScannerView.stopCamera(); + } + + private void close() { + this.finish(); + } + + @Override + public void handleResult(Result result) { + String scanResult = result.getText(); + Intent intentR=new Intent(); + intentR.putExtra("result",scanResult); + this.setResult(RESULT_OK,intentR); + finish(); + } +} diff --git a/qpython/src/main/res/values-zh-rCN/strings.xml b/qpython/src/main/res/values-zh-rCN/strings.xml index f1b752af262202623ea02a4dc1c1f0cc6738d3ab..db953bc140540edfd641e835bfe98ed0ac00a7dd 100644 --- a/qpython/src/main/res/values-zh-rCN/strings.xml +++ b/qpython/src/main/res/values-zh-rCN/strings.xml @@ -500,5 +500,5 @@ 悬浮窗仅支持 Android >= 8.0 . 需要悬浮窗权限。 悬浮窗 - + 轻触屏幕中心打开/关闭闪光灯。 diff --git a/qpython/src/main/res/values/strings.xml b/qpython/src/main/res/values/strings.xml index 20631d759714ceae7fd61acc53a264b4e5555018..62ed1dcf200caaa72cab876dc7e1bc04ed33c061 100644 --- a/qpython/src/main/res/values/strings.xml +++ b/qpython/src/main/res/values/strings.xml @@ -770,5 +770,5 @@ = 8.0 .]]> Need Float View Permission . Float View - + Tap the center of the screen to turn on/off the flash light .