-
2021-03-07 15:27:30
android中的关键代码:
webview.getSettings().setJavaScriptEnabled(true);
webview.addJavascriptInterface(object,"name");
//把Name="name"的对象添加到object中。object如果是this,就是window.name
js或html中调用android中方法代码:
如:
或js中 window.name.java中的方法();
android中调用js的function方法:
Callfunction(){
webview.loadUrl("javascript: function ()");
}
需要注意的地方,很多数据类型js中不认识,最好是在android那边封装好,提供必要的方法接口。比如传到js中的list,在js中是没办法去得到里面的元素的。
addJavascriptInterface:addJavascriptInterface方法中要绑定的Java对象及方法要运行在另外的线程中,不能运行在构造他的线程中,也就是说不能运行在当前的activity线程中,就是把这个方法绑定到页面中,js也可以调用
更多相关内容 -
Android 开发延时调用的几种方法
2021-01-20 10:16:55我们在安卓开发中,有时候会遇到需要一个程序推迟一段时间执行,也就是延时执行,比如说App首页显示定格3秒,然后自动跳到登录页的情况,这个怎么做呢?本文参考网上,整理了一下几点,供广大安卓开发者参考,希望对读者... -
Android开发教程之调用摄像头功能的方法详解
2021-01-05 10:43:27本文实例讲述了Android调用摄像头功能的方法。分享给大家供大家参考,具体如下: 我们要调用摄像头的拍照功能,显然 第一步必须加入调用摄像头硬件的权限,拍完照后我们要将图片保存在SD卡中,必须加入SD卡读写权限... -
Android开发调用WebService的方法示例
2021-01-05 13:08:45本文实例讲述了Android开发调用WebService的方法。分享给大家供大家参考,具体如下: WebService是一种基于SOAP协议的远程调用标准,通过webservice可以将不同操作系统平台、不同语言、不同技术整合到一块。在... -
Android开发-调用方法
2019-09-27 16:54:041.先在 MainActivity建一个方法 public void sendMessage(View view) { // Do something in response to button System.out.println("点击文字"); ...3.连机,点击文字后,调用方法。后台打印文字 ...1.先在
MainActivity建一个方法
public void sendMessage(View view) { // Do something in response to button System.out.println("点击文字"); }
2.在下图添加点击事件
3.连机,点击文字后,调用方法。后台打印文字
-
Android混合开发之H5调用系统相机和相册
2021-01-03 21:55:58又由于Android系统自带的WebView被人吐槽过多,所以决定使用腾讯封装的X5内核的WebView,使用和方法上和系统的相差不大。 第一步:在布局中使用WebView。 我们设置一个progressbar用来提示加载进度,我想从用户... -
Android 调用系统应用的方法总结
2021-01-20 10:43:32Android 调用系统应用的方法总结 1、调用系统拍照 Intent intent = new Intent(android.media.action.IMAGE_CAPTURE); //保存到指定目录 File file = new File(/mnt/sdcard/picture); if (!file.exists()... -
Android webview和js互相调用实现方法
2021-01-20 10:11:31市面上很多App都是使用Android开发的,但使用Android来开发一些比较复杂附属类,提示性的页面是得不偿失的。而H5具有开发速度快,更新不用依赖于App的更新,只需要服务端更新相应的页面即可,所以,App和H5页面相... -
Android调用系统默认浏览器访问的方法
2021-01-05 18:49:12这样子,android就可以调用起手机默认的浏览器访问。 二、指定相应的浏览器访问 1、指定android自带的浏览器访问 ( “com.android.browser”:packagename ;“com.android.browser.BrowserActivity”:启动主... -
Android进阶——安卓调用ESC/POS打印机打印实例
2021-01-04 00:27:50开发环境:Android Studio 1.5 需求:点击按钮,实现打印小票功能,小票上除必要文字外,还要有二维码。 封装了一个Pos打印工具类: package com.example.haoguibao.myapplication; import java.io.... -
在Android中调用WebService实例
2021-01-04 03:53:00我个人比较推荐的做法是使用Java或PHP等开发接口或者编写WebService进行数据库的增删该查,然后Android调用接口或者WebService进行数据的交互。本文就给大家讲解在Android中如何调用远程服务器端提供的WebService。 ... -
Android 调用系统相机拍摄获取照片的两种方法实现实例
2021-01-04 05:22:35在我们Android开发中经常需要做这个一个功能,调用系统相机拍照,然后获取拍摄的照片。下面是我总结的两种方法获取拍摄之后的照片,一种是通过Bundle来获取压缩过的照片,一种是通过SD卡获取的原图。 下面是演示代码... -
RN与android混合开发及RN调用原生方法
2017-04-06 10:56:19RN与android混合开发及RN调用原生方法 -
android中可以通过两种方式调用接口发送短信
2021-01-05 16:17:00第一:调用系统短信接口直接发送短信;主要代码如下: 代码如下: //直接调用短信接口发短信 SmsManager smsManager = SmsManager.getDefault(); List<String> divideContents = smsManager.divideMessage(content); ... -
android 触屏的震动响应接口调用方法
2021-01-05 15:03:19您可能感兴趣的文章:android开发之蜂鸣提示音和震动提示的实现原理与参考代码Android实现调用震动的方法android滑动解锁震动效果的开启和取消android获取情景模式和铃声 实现震动、铃声提醒Android实现手机震动效果... -
安卓开发:实现调用相机拍照
2021-11-28 20:50:12import android.Manifest; import android.content.Intent; import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.net.Uri; import ...主类:Case23.java
package com.example.myapplication; import android.Manifest; import android.content.Intent; import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.net.Uri; import android.os.Build; import android.os.Bundle; import android.os.Environment; import android.provider.MediaStore; import android.view.View; import android.widget.Button; import android.widget.ImageView; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import androidx.core.app.ActivityCompat; import androidx.core.content.ContextCompat; import androidx.core.content.FileProvider; import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; public class Case23 extends AppCompatActivity { public static final int TAKE_PHOTO = 1;//声明一个请求码,用于识别返回的结果 private ImageView picture; private Uri imageUri; private final String filePath = Environment.getExternalStorageDirectory() + File.separator + "output_image.jpg"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_case23); //点击事件进行拍照 Button takephoto = findViewById(R.id.take_photo); picture = findViewById(R.id.picture); takephoto.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { //动态请求相机权限 requestPermission(); //在其中若用户给予权限则请求相机拍照 } }); //设置默认图片 setDefualtImage(); } //动态请求权限 private void requestPermission() { if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { //请求权限 ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.CAMERA}, 1); } else { //调用 requestCamera(); } } @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); if (grantResults != null && grantResults.length != 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { switch (requestCode) { case 1: { requestCamera(); } break; } } } private void requestCamera() { File outputImage = new File(filePath); /* 创建一个File文件对象,用于存放摄像头拍下的图片,我们把这个图片命名为output_image.jpg 并把它存放在应用关联缓存目录下,调用getExternalCacheDir()可以得到这个目录,为什么要 用关联缓存目录呢?由于android6.0开始,读写sd卡列为了危险权限,使用的时候必须要有权限, 应用关联目录则可以跳过这一步 */ try//判断图片是否存在,存在则删除在创建,不存在则直接创建 { if (!outputImage.getParentFile().exists()) { outputImage.getParentFile().mkdirs(); } if (outputImage.exists()) { outputImage.delete(); } outputImage.createNewFile(); if (Build.VERSION.SDK_INT >= 24) { imageUri = FileProvider.getUriForFile(this, "com.example.mydemo.fileprovider", outputImage); } else { imageUri = Uri.fromFile(outputImage); } //使用隐示的Intent,系统会找到与它对应的活动,即调用摄像头,并把它存储 Intent intent = new Intent("android.media.action.IMAGE_CAPTURE"); intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri); startActivityForResult(intent, TAKE_PHOTO); //调用会返回结果的开启方式,返回成功的话,则把它显示出来 } catch (IOException e) { e.printStackTrace(); } } //处理返回结果的函数,下面是隐示Intent的返回结果的处理方式,具体见以前我所发的intent讲解 protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); switch (requestCode) { case TAKE_PHOTO: if (resultCode == RESULT_OK) { try { Bitmap bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(imageUri)); picture.setImageBitmap(bitmap); //将图片解析成Bitmap对象,并把它显现出来 } catch (FileNotFoundException e) { e.printStackTrace(); } } break; default: break; } } //设置保存拍照图片——>再次关闭app重新打开显示为上次拍照照片 private void setDefualtImage() { File outputImage = new File(filePath); if (!outputImage.exists()) { return; } picture.setImageBitmap(BitmapFactory.decodeFile(filePath)); } }
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="com.example.myapplication"> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:requestLegacyExternalStorage="true" android:theme="@style/Theme.MyApplication"> <provider android:name="androidx.core.content.FileProvider" android:authorities="com.example.mydemo.fileprovider" android:exported="false" android:grantUriPermissions="true" tools:ignore="WrongManifestParent"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" /> </provider> <activity android:name=".Case23" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
布局项目:
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout 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" tools:context="com.example.myapplication.Case23" tools:ignore="MissingConstraints"> <Button android:id="@+id/take_photo" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="调用摄像头拍照" android:textSize="20sp" /> <ImageView android:id="@+id/picture" android:layout_width="0dp" android:layout_height="wrap_content" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout>
-
通过Html网页调用本地安卓(android)app程序代码
2021-01-05 01:52:42一、通过html页面打开Android本地的app 1、首先在编写一个简单的html页面 代码如下:<html> <head> <meta http-equiv=”Content-... charset=UTF-8″>...2、在Android本地app的配置 代码如下:在A -
安卓如何调用vue中methods的方法??????
2021-06-04 13:15:211.JS代码 2.Java代码 允许... 调用JS方法: WebView.loadUrl("javascript: callVueJsMethod()"); or WebView.evaluateJavascript("javascript: callVueJsMethod()", null); p.s.JSBridge又另外一个问题了,传送门:1.JS代码
//
window.onload = function() {
var MyComponent = Vue.extend({
methods: {
vfunc: function() {
alert();
}
},
created() {
window.vue = this
}
});
var vm = new Vue({
el: '#app',
components: {
'my-component': MyComponent
}
});
window.vm = vm;
} //]]>
function callVueJsMethod() {
window.vue.vfunc();
//window.vm.$refs.foo.vfunc();
}
2.Java代码
允许alert等对话框弹出:
WebView.setWebViewClient(new WebViewClient());
WebView.setWebChromeClient(new WebChromeClient());
调用JS方法:
WebView.loadUrl("javascript: callVueJsMethod()");
or
WebView.evaluateJavascript("javascript: callVueJsMethod()", null);
p.s.JSBridge又另外一个问题了,传送门:
-
Android程序调用串口开发硬件
2022-04-14 09:19:19Android程序调用串口开发硬件 Android的串口程序 工程编辑 Android的串口程序 Adnroid开发串口程序与linux一致,本质也是对文件进行读写操作,不过为了能用java操作,需要导出为JNI格式的接口而已。幸运的是,该... -
JS调用Android、Ios原生控件
2020-11-28 18:59:00关于JS与Android、Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android、Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时,提高代码质量,实现两者在网页端代码的统一。 首先我们先... -
Android调用Vue方法
2020-06-29 20:53:141、在vue页面中自己封装一个方法,我这边写了一个点击按钮改变文字吧,大概就是这么个意思。 <template> <div class=""> ... //测试本地封装好的方法 </div> </template> -
Android开发之调用摄像头拍照(Android 第一行代码)
2022-04-04 18:27:21Android开发之调用摄像头拍照(Android 第一行代码) -
安卓开发之调用摄像头
2018-04-07 20:14:51作者:郭霖最近一直在学习安卓开发,却从来也没有做过相应的记录,下面我们要介绍的时候运用手机多媒体资源之手机摄像头的调用首先我们创建一个CameraAlbumTest项目,然后修改activity_main.xml中的代码 我们就简单... -
安卓开发-Android代码调用C++代码和C++代码调用Android代码.zip.zip
2021-11-18 11:22:47安卓开发-Android代码调用C++代码和C++代码调用Android代码.zip.zip -
安卓开发-Android调用JavaScript.zip
2021-11-17 11:00:48安卓开发-Android调用JavaScript -
iOS开发之用javascript调用oc方法而非url
2021-01-21 19:59:38先来看看如何在项目中的webview上面点击一个...1.首先创建一个iOS类,因为这里一般都需要安卓端做一套,iOS端做一套,所以一般这样命名以示区别 .h #import #import /** * js调用oc里 main的代码,需要借助这个协 -
安卓开发——在应用中简单调用Android百度地图API SDK
2021-12-02 10:45:36需求展示 利用百度地图API定位到当前所在位置,并显示所在的经纬度和地址信息。...①首先找到SDK安装目录,找到.android,继续找到debug.keystore,生成绝对路径,我这里是D:\androidsdk\.android\debug.keystore... -
WebView与Android方法互相调用
2020-10-09 14:30:24Android调用js 首先设置webview支持JavaScrip WebSettings settings = webView.getSettings(); settings.setJavaScriptEnabled(true); 2.使用loadurl 调用js方法 webView.loadUrl("javascript:mMethord()"); ... -
android调用webservice接口获取信息
2021-01-05 18:28:58我的有一篇博客上讲了如何基于CXF搭建webservice,service层的接口会被部署到tomcat上,这一篇我就讲一下如何在安卓中调用这些接口传递参数。 1.在lib中放入ksoap2的jar包并导入 2.在xml 配置文件中加入: <!-- ...