웹 프론트엔드 uni-app 유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

Aug 31, 2021 pm 06:23 PM
uniapp 위챗 로그인

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 어떻게 구현하나요? 다음 기사에서는 uniapp에서 Android 앱 WeChat 로그인 권한 신청 및 개발에 대한 구체적인 운영 절차를 공유하겠습니다. 모든 분들께 도움이 되기를 바랍니다!

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

WeChat 오픈 플랫폼은 WeChat 로그인, 공유 결제 등 WeChat의 일부 개방형 인터페이스를 제공하고 다른 플랫폼 애플리케이션에 대한 지원 서비스를 제공합니다. 온라인 정보가 상대적으로 느슨하고, 생소한 개념이 추가되어 단순한 프로세스가 연속적으로 연결되지 않습니다. 이 글에서는 유니앱에서 안드로이드 앱 위챗 로그인 권한을 신청하고 개발하는 구체적인 작업 과정을 요약하면 좋겠습니다. 당신에게 유용합니다.

먼저 WeChat 로그인 기능 개발의 전반적인 과정을 살펴보겠습니다. 다음 내용을 보다 체계적으로 이해할 수 있도록 일반적인 흐름도를 정리했습니다.

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

다음과 같이 볼 수 있습니다. WeChat 로그인 개발은 아직 조금 번거롭습니다. 단계별로 자세히 소개하겠습니다!

1. WeChat 오픈 플랫폼 계정 등록

먼저 WeChat 오픈 플랫폼 계정을 등록하세요. 이 오픈 플랫폼은 WeChat 로그인, 결제 및 기타 콘텐츠를 앱에 공유하는 것입니다. 웹페이지, 작은 프로그램 등 구체적인 프로세스에 대해서는 자세히 설명하지 않겠습니다. WeChat의 다른 곳에서 사용되는 이메일 계정과 충돌하지 않도록 주의하세요.

2. 개발자 자격 인증

WeChat 로그인 기능을 개발하려면 개발자 자격 인증이 필요합니다. 이제 개방형 플랫폼 등록은 개인에게 공개되지만 개발자 자격 인증은 기업 및 기관에만 공개되며 인증에는 300위안이 필요합니다. 제가 사용한 기업 인증은 신청 과정에서 관련 기업 자격 인증서가 필요합니다. 정보가 완전하고 프로세스가 매우 빠르며 청구서 신청은 약 한 달 정도 소요됩니다.

3. 오픈 플랫폼에서 모바일 애플리케이션을 신청하세요

인증에 성공하신 후 관리 센터에 들어가 모바일 애플리케이션을 선택하고 모바일 애플리케이션을 생성하신 후 절차를 따르시면 됩니다. 응용 프로그램 서명이 붙어 있습니다. 이 단계에 이르렀을 때 저는 완전히 혼란스러웠고 애플리케이션 서명이 무엇인지 몰랐습니다.

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

4. 애플리케이션 서명 생성

위 설명을 보면 애플리케이션 서명이 주로 신원 확인에 사용되는 이유는 로그인한 사용자와 관련이 있습니다. 일반적으로 오픈 플랫폼에 로그인한 후 신청할 수 있습니다. 이제 이 서명이 있으므로 이 애플리케이션에 대한 개발 권한이 있음을 증명하기 위해 몇 가지 문제를 거쳐야 합니다. 일반적인 상황에서 소규모 공장에서 출시되는 대부분의 Android 앱은 공개 테스트 인증서를 사용합니다. 이제 애플리케이션 서명을 생성하려면 자체 인증서를 사용해야 합니다. 자체 인증서를 사용하면 WeChat Open Platform에 필요한 애플리케이션 서명을 생성할 수 있습니다. 그렇다면 이 자체 소유 인증서는 어디서 오는 걸까요? 다음으로, 이 자체 인증서와 애플리케이션 서명을 생성하는 방법을 살펴보겠습니다.

자신만의 인증서 생성

1), jre 환경 설치

jre는 Java 개발 환경이므로 cmd 명령 창을 사용하여 java 명령을 사용하여 현재 환경에 jre에서 ' java'라는 메시지가 표시되면 내부 또는 외부 명령도 아니고 실행 가능한 프로그램이나 배치 파일도 아닙니다, ​​출력이 다음과 같으면 설치되었음을 의미합니다.

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

설치되어 있지 않은 경우 jre 설치 패키지를 다운로드하세요. www.oracle.com/java/techno…

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

설치 후 cmd를 다시 열고 java를 다시 입력하면 정상적인 출력 관련 내용을 볼 수 있습니다. . 그런 다음 시스템 환경 변수에 jre 설치 경로를 추가합니다.

d:  
set PATH=%PATH%;"C:\Program Files\Java\jre1.8.0_201\bin"
로그인 후 복사

cmd를 사용하여 위 명령을 입력합니다. 첫 번째 줄은 d 드라이브로 전환한다는 의미이며 이 디렉터리는 임의의 디렉터리이며 서명 인증서를 저장하는 데 사용됩니다. 예, 다른 폴더를 만들고 거기에 CD를 넣을 수 있습니다. Enter를 누른 후 두 번째 줄은 jre 명령을 임시 환경 변수에 추가한다는 의미입니다. 후속 주소는 실제 jre 설치 주소를 기반으로 합니다. 이 단계가 끝나면 후속 작업으로 생성된 파일이 현재 폴더에 생성됩니다.

2), 서명 인증서 생성

위 단계가 정상적으로 완료되면 다음 keytool -genkey 명령을 입력하여 인증서를 생성할 수 있습니다. 여기서는 testalias 및 test.keystore의 'test'를 수정하고 자신의 프로젝트에 있는 이름으로 바꿀 수 있다는 점에 유의해야 합니다.

keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore
로그인 후 복사

回车后,输入密码,比如123456,密码看不见的,不要输错了,后面的按提示填就可以了,一般输入英文或拼音。最后提示是否正确时,不要回车了,输入y确认正确,否则要再重来一次。

确认后,又提示密钥口令,这个直接回车相同就行。

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

如果提示这个,就把这个指令复制了粘贴执行,输入前面设置的口令123456就可以了。

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

最后在当前执行命令的文件夹里就能看到应用证书了。

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

生成签名

前面是生成证书,这一步终于可以生成签名了。

3)、使用自有证书打包

这一步很简单,用hbuilderx进行app云打包,在弹出框中选择安卓的自有证书打包方式。这个自有证书就是我们刚才生成的证书,兴不兴奋,我们也是有证书的人了!?下面三栏,别名、密码都是前面的操作步骤中写过的,没忘记就写上吧,然后选择证书文件,剩下的都是常规操作,最后打包就可以了。

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

4)、用签名生成工具生成签名

先到微信开放平台下载签名生成工具,下载好之后,在手机端安装,输入安卓包名。

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

这里有坑,要注意下,uniapp的mainfest.json文件配置中,appid必须是'_UNI_'开头,所以你的配置文件中得是'_UNI_'开头的,但是打包时的包名跟那个配置又是两个体系,互不影响,你可以在这里把名字改下,把uni这个头去掉。因为这个包名后面要跟ios版本一起用,你得跟ios一样,相信打过包的人应该能明白我在说啥。

输入正确的包名(去掉了'UNI'开头),点击下面的按钮就生成了一串id,这个就是——应用签名!真是费劲!

유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

5、按开放平台流程申请应用

有了签名,你就可以按照微信开放平台的流程申请移动应用了,就是本文的第二张图,输入签名,一步步走就行。

1유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

最后就是下面这样子了,代表你提交成功,可以耐心的等了(三天了,没变化,最后过了七八天才通过,中间按要求修改了两次):

1유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

等审核通过,就可以申请微信登录等功能了。

1유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

最后要说的一点就是,app或者你资料中提交的相关域名网站不要给登录界面,否则可能会审核不通过,因为他们进不去,看不了当然无法审核。

6、获取appid和appsecret

移动应用的审核通过后,微信登录功能就会自动开放了,同时开放的还有分享、发送朋友等功能。

1유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

同时,你也可以获取到获取appid和appsecret,这个我自己保存越来,后面开发会用到的。

7、微信登录业务流程梳理

uniapp提供了微信登录api,不过我们首先要清楚微信登录的流程,因为微信登录要配合我们系统自身的业务。我在这里梳理了一张流程图,这张图就是上面总流程图的一部分,你可以对照参考,辅助你开发相关功能。

1유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)

8、微信登录服务api调用

如果你按照前面的步骤拿到AppId和AppSecret信息,接下来就是按照这个流程来开发微信登录功能。在uniapp上开发app版本的微信登录功能需要调用uni的api还有h5+的api。 这里就直接给一个示例代码:

onLoad() {
	plus.oauth.getServices((services) => {
			this.weixinAuthService = services.find((service) => {
					return service.id === 'weixin'
			})
		});
},
methods: {
	appWxLogin() {
		var self = this;
		this.weixinAuthService.authorize(function(res) {
			//支持微信、qq和微博等
			uni.login({
				provider: 'weixin',
				success: function(loginRes) {
					// 微信用户信息存入本地,后期备用
					var auth = null;
					plus.oauth.getServices(function(services) {
						auth = services.find((service) => {
							return service.id === 'weixin'
						});
						try {
							uni.setStorageSync('auth_service', auth)
						} catch {
	
						}
					}, function(e) {
						console.log(e);
					});
					if (loginRes.authResult) {
						let access_token = loginRes.authResult.access_token;
						let openid = loginRes.authResult.openid;
						uni.request({
							method: 'POST',
							url: 'https://*********/wx-login/appwxlogin',
							data: {
								openid: openid
							},
							success: (res) => {
								console.log(res);
								//将openid存入本地缓存
								uni.setStorage({
									key: 'openid_key',
									data: res.data.openid
								});
								if (res.statusCode == 200 && res.data && res.data.username) {
									self.isFirstWXLogin = false;
									self.name = res.data.username;
									self.password = res.data.password;
									setTimeout(function() {
										self.tologin({
											username: res.data.username,
											password: res.data.password,
											encrypted: true
										})
									}, 0)
								} else {
									//首次登录,跳转到一个绑定账号的页面
									uni.navigateTo({
										url: 'wxlogin'
									});
								}
							},
							fail: (error) => {
								console.log(error);
							},
							complete: (e) => {
								console.log(e);
							}
						})
					} else {
	
					}
				},
				fail(e) {
					console.log(e);
				},
				complete(e) {
					console.log(e);
				}
			});
		}, function(error) {
			console.log(error)
		}, {
			scope: 'snsapi_userinfo'
		})
	}
}
로그인 후 복사

注意几点: 

1、首先取到微信服务对象this.weixinAuthService。 

2、其次调用授权api——authorize,然后再调用uni.login这个api。

 3、uni.login成功后,如果想取得用户信息可以调用uni.getUserInfo,也可以调用plus.oauth.getServices,后者是h5+的api,前者也是基于后者的封装。 

4、代码中这个接口(/wx-login/appwxlogin)是一个本地服务,具体的业务就是把openid带到用户表中去查找,如果能找到,说明此用户绑定过微信,后端返回用户信息直接登录;如果没找到,就返回提示需要输入用户名密码登录,而且这个登录过程要带上openid,最终插入数据库。

这个api调用与业务开发流程应该比较好理解,我这里也不再画图了,应该都能看明白。 好了,uniapp开发安卓端的微信登录功能就介绍完了,如果对你有用就点个赞或者帮忙转发吧!谢谢鼓励!

推荐:《uniapp教程

위 내용은 유니앱에서 안드로이드 앱의 위챗 로그인 기능을 구현하는 방법(작업과정 요약)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Webstorm에서 개발한 uniapp 프로젝트 미리보기를 시작하는 방법 Webstorm에서 개발한 uniapp 프로젝트 미리보기를 시작하는 방법 Apr 08, 2024 pm 06:42 PM

WebStorm에서 UniApp 프로젝트 미리보기를 실행하는 단계: UniApp 개발 도구 플러그인 설치 장치 설정에 연결 WebSocket 실행 미리보기

uniapp과 mui 중 어느 것이 더 좋나요? uniapp과 mui 중 어느 것이 더 좋나요? Apr 06, 2024 am 05:18 AM

일반적으로 복잡한 기본 기능이 필요할 때는 uni-app이 더 좋고, 단순하거나 고도로 맞춤화된 인터페이스가 필요할 때는 MUI가 더 좋습니다. 또한 uni-app에는 1. Vue.js/JavaScript 지원 2. 풍부한 기본 구성 요소/API 3. 좋은 생태계가 있습니다. 단점은 다음과 같습니다. 1. 성능 문제 2. 인터페이스 사용자 정의가 어렵습니다. MUI에는 다음이 포함됩니다. 1. 머티리얼 디자인 지원 2. 높은 유연성 3. 광범위한 구성 요소/테마 라이브러리. 단점은 다음과 같습니다. 1. CSS 종속성 2. 기본 구성 요소를 제공하지 않습니다. 3. 소규모 생태계.

uniapp에서는 어떤 개발 도구를 사용하나요? uniapp에서는 어떤 개발 도구를 사용하나요? Apr 06, 2024 am 04:27 AM

UniApp은 HBuilder를 사용합니다.

App Store에서 WeChat 로그인을 운영하는 세부 프로세스 App Store에서 WeChat 로그인을 운영하는 세부 프로세스 Mar 25, 2024 pm 03:41 PM

1. App Store를 열어 로그인할 때 WeChat 로그인 방법이 없으면 그림과 같이 다음 단계를 따르십시오. 2. WeChat이 이미 설치되어 있는 경우 Tencent App Store를 사용하여 WeChat을 다시 다운로드하고 설치합니다. 설치된 경우 설치를 덮어씁니다. 3. 한마디로: Tencent 앱을 사용하여 WeChat을 다시 다운로드하고 설치를 완료합니다. 4. 이제 App Store를 다시 열어 로그인하면 [WeChat 로그인]이 표시됩니다. 이를 클릭하여 WeChat에 로그인하세요. 5. 이제 WeChat 로그인 신청이 완료되었습니다.

유니앱을 배우려면 어떤 기본이 필요한가요? 유니앱을 배우려면 어떤 기본이 필요한가요? Apr 06, 2024 am 04:45 AM

uniapp 개발에는 다음과 같은 기초가 필요합니다: 프론트엔드 기술(HTML, CSS, JavaScript) 모바일 개발 지식(iOS 및 Android 플랫폼) Node.js 기타 기초(버전 제어 도구, IDE, 모바일 개발 시뮬레이터 또는 실제 머신 디버깅 경험)

유니앱의 단점은 무엇인가요? 유니앱의 단점은 무엇인가요? Apr 06, 2024 am 04:06 AM

UniApp은 크로스 플랫폼 개발 프레임워크로서 많은 편리함을 가지고 있지만 단점도 분명합니다. 하이브리드 개발 모드로 인해 성능이 제한되어 열기 속도, 페이지 렌더링 및 대화형 응답이 좋지 않습니다. 생태계가 불완전하고 특정 분야의 컴포넌트와 라이브러리가 적어 창의성과 복잡한 기능 구현이 제한됩니다. 다양한 플랫폼에서의 호환성 문제로 인해 스타일 차이와 일관되지 않은 API 지원이 발생하기 쉽습니다. WebView의 보안 메커니즘은 기본 애플리케이션과 다르므로 애플리케이션 보안이 저하될 수 있습니다. 동시에 여러 플랫폼을 지원하는 애플리케이션 릴리스 및 업데이트에는 여러 컴파일과 패키지가 필요하므로 개발 및 유지 관리 비용이 증가합니다.

유니앱 개발과 네이티브 개발 중 어느 것이 더 낫나요? 유니앱 개발과 네이티브 개발 중 어느 것이 더 낫나요? Apr 06, 2024 am 05:06 AM

UniApp과 네이티브 개발 중에서 선택할 때는 개발 비용, 성능, 사용자 경험 및 유연성을 고려해야 합니다. UniApp의 장점은 크로스 플랫폼 개발, 빠른 반복, 쉬운 학습 및 내장 플러그인이며, 네이티브 개발은 성능, 안정성, 네이티브 경험 및 확장성이 뛰어납니다. 구체적인 프로젝트 요구사항에 따라 장단점을 따져보세요. UniApp은 초보자에게 적합하고, 네이티브 개발은 고성능과 원활한 경험을 추구하는 복잡한 애플리케이션에 적합합니다.

Douyin이 WeChat 로그인 권한을 얻지 못한 문제를 해결하는 방법은 무엇입니까? WeChat에 로그인할 수 있는 권한을 얻지 못하면 어떻게 되나요? Douyin이 WeChat 로그인 권한을 얻지 못한 문제를 해결하는 방법은 무엇입니까? WeChat에 로그인할 수 있는 권한을 얻지 못하면 어떻게 되나요? Mar 24, 2024 pm 03:46 PM

인기 있는 짧은 동영상 플랫폼인 Douyin은 WeChat 계정 로그인 기능과 밀접한 관련이 있습니다. 때때로 일부 사용자가 WeChat을 통해 Douyin에 로그인하려고 할 때 WeChat 로그인 권한을 얻지 못하는 문제가 발생하여 사용자에게 문제가 발생할 수 있습니다. 다음은 사용자가 Douyin을 원활하게 사용할 수 있도록 Douyin이 WeChat 로그인 권한을 얻지 못하는 문제를 해결하는 방법을 자세히 소개합니다. 1. Douyin이 WeChat 로그인 권한을 얻지 못한 문제를 해결하는 방법은 무엇입니까? 먼저, Douyin 사용이 제한되지 않도록 WeChat 계정 설정을 확인하세요. WeChat 설정의 계정 및 보안 옵션으로 이동하여 로그인 권한 설정을 볼 수 있습니다. 최신 WeChat 로그인 기능과 호환되도록 Douyin 앱을 최신 상태로 유지하세요. 시스템 호환성과 안정성을 보장하기 위해 앱 스토어에서 Douyin 앱을 정기적으로 확인하고 업데이트하세요. 3. 클리어

See all articles