강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của noasand1951
noasand1951

câu hỏi đã được viết

Học cách đóng gói ứng dụng lai chỉ bằng Javascript

Áp dụng giải pháp Onesignal và dịch vụ đẩy Android

onesignal 연동 시 black screen

Viết

·

263

1

window.plugins.OneSignal.setAppId();

위 코드 입력 시 화면이 black screen으로 표시됩니다.

하지만 onesignal 연동도 잘되고 푸시 메시지 발송되 잘 됩니다.

원인이 무엇일까요? android 구버전과 최신버전 모두에서 그렇습니다.
javascriptiosandroid하이브리드-앱cordova

Câu trả lời 2

1

yellowin님의 프로필 이미지
yellowin
Người chia sẻ kiến thức

안녕하세요. 답변이 늦었습니다.
답변을 자체 등록을 하셨는데요.

"setAppId 선언을 onDeviceReady 함수 내에서 하지 않고..." 라고 답변다신 내용과는 상관관계가 없습니다만, 해결되셨다고 하니~ 다행입니다.

함수를 바깥으로 빼서 호출는건 차이가 없는데~ 이상하네요. ^^;
참고로 제가 현재도 매주 1개이상씩 계속 원시그널을 사용해 앱을 만들고 있지만~ 말씀하신 오류가 발생한적이 한번도 없습니다.
아래처럼 플러그인 버전에 따른 구문오류일수도 있으니 참고부탁드립니다.

----------------------------------------------------------------------------------------
cordova 원시그널 플러그인의 최신버전은 현재 5.1.x 버전이며~
appid 설정의 초기코드는 아래입니다.
window.plugins.OneSignal.initialize("YOUR_ONESIGNAL_APP_ID");

이전 old버전의 초기코드는 아래이구요.(강의영상에는 아래로 적용되어 있을겁니다.)
window.plugins.OneSignal.setAppId("YOUR_ONESIGNAL_APP_ID");

터미널창에서 아래 명령어로 원시그널 플러그인 버전을 확인하시고~ 5.1.0 이상의 버전이라면 위내용 참고하시면 될것 같습니다.
cordova plugin ls

5.1.0 이상의 버전이라면 아래처럼 원시그널 document 가이드 페이지에 예제소스가 나오니 참고하시면 됩니다.
참고 url : https://documentation.onesignal.com/docs/ionic-capacitor-cordova-sdk-setup

1

noasand1951님의 프로필 이미지
noasand1951
Người đặt câu hỏi

setAppId 선언을 onDeviceReady 함수 내에서 하지 않고 별도 함수를 선언하여 호출하니 에러가 해결되네요....

같은 오류 있으신 분들 참고하세요 ㅠㅠ

 

document.addEventListener('deviceready', onDeviceReady, false);
var ref = '';
function onDeviceReady() {
    var url = 'file:///android_asset/www/test.html';
  
    OneSignalInit();
}
function OneSignalInit() {
    window.plugins.OneSignal.setAppId('ㅇㅇㅇㅇㅇㅇ');
    window.plugins.OneSignal.setNotificationOpenedHandler(function(jsonData) {
        console.log('notificationOpenedCallback: ' + JSON.stringify(jsonData));
    });
    
    window.plugins.OneSignal.promptForPushNotificationsWithUserResponse(function(accepted) {
        console.log("User accepted notifications: " + accepted);
    });
}
Hình ảnh hồ sơ của noasand1951
noasand1951

câu hỏi đã được viết

Đặt câu hỏi